Commit Graph

452 Commits

Author SHA1 Message Date
Bryan Schumaker
798134b910 Web server improvements
I want to use the remote control this weekend, so I needed to fix it up.
2011-12-22 14:16:33 -05:00
Bryan Schumaker
0017c04bbf libsaria: Bump version to 4.10 2011-06-27 23:18:16 -04:00
Bryan Schumaker
1a45e95f9a Ocarina 4.9 2011-06-24 23:45:04 -04:00
Bryan Schumaker
4b852eff28 libsaria: Fix dattr access
dattrs need a song id to search the dictionary.  I was passing the name
of the requested attribute instead.  As a result, dattrs were always
returning the default value.
2011-06-24 23:21:44 -04:00
Bryan Schumaker
9be5b10112 libsaria: Clear cur_id when loading file
This allows me to return the correct attributes for a random song loaded
by the user.
2011-06-23 10:21:24 -04:00
Bryan Schumaker
f87f5f25cf libsaria: Run server based on stored stetting
I have a toggle_state() function to toggle the server and save the state
for the next session.
2011-06-18 14:09:27 -04:00
Bryan Schumaker
868359a4a4 libsaria: Catch errors when writing cache files
The user doesn't want to see these...
2011-06-18 13:27:21 -04:00
Bryan Schumaker
e6ba5c3139 libsaria: Remove path from library
I need to delete it, save the library, and rebulid the tree and index.
2011-06-18 11:22:24 -04:00
Bryan Schumaker
083cbf738c libsaria: Added function for listing the library
This makes it easier for the gui to know what is in the library.
2011-06-18 11:09:44 -04:00
Bryan Schumaker
e055976e07 libsaria: Start server in a try / except block
I can catch the exception and print out a nicer message this way.
2011-06-18 10:24:45 -04:00
Bryan Schumaker
72f7ec90eb libsaria: Remove unused function
I don't need the file_empty() function in the cache anymore
2011-06-18 09:44:34 -04:00
Bryan Schumaker
7319767ac3 libsaria: Don't automatically create cache file
The cache filler function will pass back a string to be written to this
file.  If this string != None, then I create the file and fill it.
2011-06-18 09:39:55 -04:00
Bryan Schumaker
e6849dc5cd libsaria: Only delete empty cache files
For some reason I was trying to delete files that don't even exist in
the cache!  This was stupid and caused an error.  Now I only delete
empty files
2011-06-18 09:28:53 -04:00
Bryan Schumaker
97902d0730 libsaria: Remove print statement
I added it for debugging.  I don't need it anymore.
2011-06-17 23:53:01 -04:00
Bryan Schumaker
e8e0c5d743 libsaria: Return album art as part of all_attrs()
If the album art exists, I might as well return it so it can be set in
the main gtk thread.  If it doesn't exist, I'll trigger a web search for
it.
2011-06-17 23:42:20 -04:00
Bryan Schumaker
851c7251a2 libsaria: Wrong variable initialization
Finding attributes for songs not in the library will run if "found"
is initialized to False instead of True...
2011-06-17 23:21:23 -04:00
Bryan Schumaker
12cb9a900a libsaria: Switch most code to use all_attrs()
all_attrs() is my new way of doing things, so it makes sense to use it
now.
2011-06-17 20:23:32 -04:00
Bryan Schumaker
2c341085b4 libsaria: Add sources.get_cur_id()
I think a function for finding the current song id will be useful if I
want to remove the old get_attrs() function...
2011-06-17 20:02:11 -04:00
Bryan Schumaker
645b70b33c libsaria: Introduce libsaria.sources.all_attrs()
This patch introduces a new function "all_attrs()" which will return a
dictionary containing all the attributes for the current song.  To help
the gui, I pass this dictionary during an on_load() callback.
2011-06-17 19:47:04 -04:00
Bryan Schumaker
5a735aa625 libsaria: Clear cur_id correctly
I do this if the song isn't found in the library, rather than as part of
opening a track from disk.
2011-06-16 18:53:27 -04:00
Bryan Schumaker
8f3c4b7c6f libsaria: Fix library browser web page
It needs to use the new library functions to avoid an error.
2011-06-16 18:19:42 -04:00
Bryan Schumaker
9bc22e0d1d Begin Ocarina 4.9 2011-06-16 18:19:22 -04:00
Bryan Schumaker
05ae0a2505 Ocarina 4.8 2011-06-16 11:15:45 -04:00
Bryan Schumaker
23781e24a8 libsaria: Sometimes the server doesn't exist
I shouldn't try shutting down the web server if it hasn't been imported.
This will only lead to an error...
2011-06-16 11:15:01 -04:00
Bryan Schumaker
0e5bd0d908 libsaria: Fix library updating
I need to reindex and rebuild the tree on each update.  I also need to
notify the front-end that things have changed.
2011-06-09 09:44:40 -04:00
Bryan Schumaker
e0ad57c541 libsaria: Fix playing songs from outside of library
The song was loading, but attributes weren't updating.  I also use this
patch to begin playback when a song is loaded (I was tired of manually
pressing play every time)
2011-06-09 08:35:02 -04:00
Bryan Schumaker
071257d77d libsaria: Fix saving playlists
I was still using old functions, rather than my new ones.
2011-05-29 18:22:29 -04:00
Bryan Schumaker
1f84f2755b libsaria: Fix playlist num_visible()
When the playlist is changed, I need to test song ids against the
visible set to get the correct number
2011-05-29 14:59:29 -04:00
Bryan Schumaker
884c55cdd5 libsaria: Fix queue num_visible()
When songs are removed from the queue, they should also be removed from
the visible set, otherwise num_visible() will never change.
2011-05-29 14:59:15 -04:00
Bryan Schumaker
c9dee00727 libsaria: Actually add libsaria.sources.attrs
I forgot to add this file a few commits ago... oops...
2011-05-28 16:15:07 -04:00
Bryan Schumaker
0a644752a4 libsaria: Add in play count dattr
I want to track how often songs are played.  This patch gives me the
ability to do that.
2011-05-28 16:13:02 -04:00
Bryan Schumaker
49f7829706 libsaria: Add dynamic attributes
Dynamic attributes are attributes of a track that can change during run
time (like status, playcount, etc).  I only initialize these when they
are first set, and I save after each change.

This patch adds in the dattr framework and the "like" dattr.
2011-05-28 16:04:42 -04:00
Bryan Schumaker
114ac13c7a libsaria: Added TODO idea to playlist
I want to do type checking after loading objects.  This can be done once
during storage.load_obj, rather than after load_obj
2011-05-28 15:40:19 -04:00
Bryan Schumaker
1cbb1fb969 libsaria: Remove more path code 2011-05-26 16:04:07 -04:00
Bryan Schumaker
07c673fa47 libsaria: Remove unused libsaria.path code
I eventually want to get rid of this directory, so removing this code
helps.
2011-05-26 15:55:59 -04:00
Bryan Schumaker
e59a613499 libsaria: Remove Source() class
Nothing uses it anymore, so it can be removed.
2011-05-26 09:25:56 -04:00
Bryan Schumaker
6398b3dd9a libsaria: Find attributes for songs not in library
I use the same Track() class that the library does.  I have to create
an instance of this class each time the function is called, but this is
ok since it is not the case I am trying to optimize for.
2011-05-26 09:18:43 -04:00
Bryan Schumaker
b7a45a3e18 libsaria: Controls need to import libsaria
I don't know why I didn't already do this...
2011-05-26 09:02:06 -04:00
Bryan Schumaker
38b075a701 libsaria: Turn get_attrs_id into a function pointer
I was doing an extra python lookup every time this function was used.
Turning it into a function pointer should cut down on this.
2011-05-25 21:22:23 -04:00
Bryan Schumaker
756c98285b libsaria: Only shutdown server when server exists
I now always call the shutdown() function to close the server.  This
function checks if the server pointer has been set, and if it has it
calls the server's shutdown() function.
2011-05-25 21:09:43 -04:00
Bryan Schumaker
c79677e77a libsaria: Initialize controls on import
This avoids an unnecessary function call, it also makes things easier to
read and maintain.
2011-05-25 21:07:53 -04:00
Bryan Schumaker
d41286c83c libsaria: Import lastfm during import
I was doing this during an init() function.  It should be more efficient
to just do this right away.
2011-05-25 21:00:07 -04:00
Bryan Schumaker
e2c4d78fa8 libsaria: Remove oldlibrary
Nothing uses it anymore, so it can be removed.
2011-05-25 20:50:46 -04:00
Bryan Schumaker
46b7f35224 libsaria: Remove oldlibrary from startup
Now it is no longer being imported anywhere.  I think I can remove it
now...
2011-05-25 20:48:32 -04:00
Bryan Schumaker
6bc6235e01 libsaria: Remove unused import pointers 2011-05-24 08:06:03 -04:00
Bryan Schumaker
9505373198 libsaria: inc_count() in sources
Doesn't do anything yet, but it will eventually (once I start tracking
dynamic attrs)
2011-05-24 08:02:18 -04:00
Bryan Schumaker
6b0ccce530 libsaria: Remove oldlibrary from export code 2011-05-24 07:58:47 -04:00
Bryan Schumaker
d8f47e8d4d libsaria: Remove new_source() functions
I have new functions for creating the library, so this (and associated
callbacks) are no longer needed.
2011-05-23 10:07:19 -04:00
Bryan Schumaker
913ee9f931 libsaria: Remove library export and import
Using export / import functions for library updates can be a pain.  I
don't plan on changing the library file format any time soon, so I don't
need to keep this code around.
2011-05-23 10:04:05 -04:00
Bryan Schumaker
c4629024a6 libsaria: Add ids to queue visible set
When adding songs to the queue, we also need to add the ids to the
visible set if they are visible.  Without this step, we won't have an
easy way of knowing how many IDs are visible.
2011-05-23 09:18:30 -04:00