Commit Graph

462 Commits

Author SHA1 Message Date
Bryan Schumaker fffc7f8816 ocarina: Fix setting album art
get_attrs() now returns a list, so the on_get_art() callback function
needs to be updated.
2011-05-25 20:58:27 -04:00
Bryan Schumaker ae2fc30da8 ocarina: Remove export button
I don't plan on changing the library anytime soon, so there is no need
to export it to an xml file.
2011-05-23 10:02:43 -04:00
Bryan Schumaker 43f37c93a7 ocarina: Do filtering in the listview
Each source was doing the exact same thing for filtering now that I have
a generic is_visible() function.  There is no need for each source to
implement this.
2011-05-22 09:43:27 -04:00
Bryan Schumaker 4f8f4d3ce3 ocarina: Use new filtering functions
I set this up through callbacks.  It should filter all sources at once,
rather than just the current page.
2011-05-22 09:27:26 -04:00
Bryan Schumaker ac0f23ab80 ocarina: Remove oldlibrary code
The new library covers everything, so this is no longer needed.
2011-05-21 22:34:39 -04:00
Bryan Schumaker ad12bf6500 ocarina: Filter the library
I call the new libsaria.sources.filter() function and test ids using
libsaria.sources.is_visible().
2011-05-21 22:06:37 -04:00
Bryan Schumaker c357a35313 ocarina: Reset library and right click menu
I added these based on the old library functions.  It seems to be
working so far!
2011-05-21 15:43:29 -04:00
Bryan Schumaker 2587ae0954 ocarina: Fill new library
I make the list of songs visible, I also update the number of songs.
Finally, I respond to the library_updated() callback when songs are
added / removed from the library.
2011-05-21 08:20:44 -04:00
Bryan Schumaker e3450d31ff ocarina: Add new library page
Right now, it just adds a new page to the window.  I'll add more as I
go.
2011-05-20 21:42:57 -04:00
Bryan Schumaker c3dbd8167d ocarina: Rename library.py -> oldlibrary.py
This reflects my recent libsaria change.  I'm keeping around my old
library code for now.  The new library will gradually be introduced
through several patches ending with the removal of the old library.
2011-05-20 21:29:30 -04:00
Bryan Schumaker 531ceb2c17 libsaria: Rename library.py to oldlibrary.py
I want to preserve the old library as I slowly introduce the new one.
This should help.
2011-05-20 21:22:21 -04:00
Bryan Schumaker 3301439e88 ocarina: Get gtk lock around gtk.main()
The internet suggests that this may help with the random crashes I
sometimes get.  We'll see.
2011-05-15 15:58:37 -04:00
Bryan Schumaker b373a88618 ocarina: Page showing and hiding improvements
When hiding a page I want to switch to page n - 1, but gtk was moving me
to n + 1.  I also added a function to show, and optionally switch to, a
page.
2011-05-15 11:36:26 -04:00
Bryan Schumaker 25f4410970 ocarina: I don't need to call save after resetting playlist
Saving is done automatically as part of the reset now, so there is no
need to call save() here any more.
2011-05-12 22:36:17 -04:00
Bryan Schumaker 64c6677263 ocarina: Use new list_playlist() function 2011-05-12 08:26:17 -04:00
Bryan Schumaker 412153013b ocarina: Remove reference to thread.py
I removed the file a while ago, so this shouldn't be here.
2011-05-11 22:18:22 -04:00
Bryan Schumaker 7a26110750 ocarina: Set and resize images atomically
Doing this all in one step prevents multiple threads from clashing with
each other.  I also add in clearing the old image before setting a new
one.
2011-05-11 21:46:15 -04:00
Bryan Schumaker 217156d322 ocarina: Gtk locking around album art resize
I only want one thread modifying album art at a time, so I need to use
threads_enter() and threads_leave() here.
2011-05-08 10:33:01 -04:00
Bryan Schumaker 0862c57b6a ocarina: Clean up image resize function
I now wrap the entire resize operation in a try / except block.
Hopefully this will help to catch some errors.  I also cleaned up my
"return early" conditions.
2011-05-08 10:24:10 -04:00
Bryan Schumaker b43725bbe8 ocarina: Use new list_queue() for filling queue
I might as well use the new function so I can remove the old
walk_queue() function.
2011-05-08 09:57:57 -04:00
Bryan Schumaker 45f293c6fa ocarina: Refresh queue when changed
I want the gui to be consistent with the internal state of the queue.
2011-05-07 18:53:01 -04:00
Bryan Schumaker c1a2d74f7c libsaria: Move version information to new file
A bit of separation is good here, and it should help with managing the
code.
2011-05-07 15:58:33 -04:00
Bryan Schumaker 41e08fe248 Ocarina: Start through a function call
I was starting Ocarina through "import ocarina" in the launcher.  This
was apparently a bad idea, since the import lock will never be released.
This lock prevents other threads from importing modules, so when I tried
to use urllib2 to download album art the call blocked until after I
closed Ocarina.
2011-05-07 15:54:26 -04:00
Bryan Schumaker 975b153bea libsaria: Remove event.py
I've been looking forward to this.  The last several commits have
replaced the generic event system with a hardcoded callback system.
This should be more efficient, easier to understand, and easier to
follow.  I feel it is a better solution.
2011-05-01 12:46:17 -04:00
Bryan Schumaker e64f93ef39 libsaria: New library source callback
Triggered upon scanning a new path to add to the library.
2011-05-01 12:46:17 -04:00
Bryan Schumaker bc54ef0a98 libsaria: Add a load_playlist() callback
Called when playlists are loaded from file.
2011-05-01 12:46:17 -04:00
Bryan Schumaker a6bd531aee ocarina: Fetch image during load
I also set absolute sizes for album art.  Scaling to size 1 was causing
scale_simple() to block forever.
2011-05-01 12:46:17 -04:00
Bryan Schumaker d0198cdd1a libsaria: Get artwork when songs are loaded
I may change this to something that has to be requested by the front
end, rather than always fetching it.  We'll see.
2011-05-01 12:46:17 -04:00
Bryan Schumaker 889e17fab9 libsaria: Remove event system from controls
This is a big step forward for reving the event system entirely.
2011-05-01 12:46:17 -04:00
Bryan Schumaker 34dcb7998f libsaria: Add in absolute seeking by percentage
I give a percentage and gstreamer will seek to that position in the
song.
2011-05-01 12:46:17 -04:00
Bryan Schumaker 99771a34fb libsaria: on_like() callback
This replaces the LIKE event for setting if the user likes the current
song.
2011-05-01 12:46:16 -04:00
Bryan Schumaker 69481ffa70 libsaria: Shut down gstreamer on exit
This gives gstreamer a chance to clean up while exiting.
2011-05-01 12:46:16 -04:00
Bryan Schumaker 6e6705736e libsaria: Add a load_file() callback 2011-05-01 12:46:16 -04:00
Bryan Schumaker 6c73a9c43a libsaria: Remove STOP event
I can double up on the pause callback in place of a stop callback.
2011-05-01 12:46:16 -04:00
Bryan Schumaker 7879c53fe7 libsaria: Created pause callback
This replaces the (PRE, POST)PAUSE events
2011-05-01 12:46:16 -04:00
Bryan Schumaker b562fff0ed libsaria: Began implementing better callback system
The event system was evil, hard to use, and hard to follow.  This patch
is the beginning of a new, more straightforward system.
2011-05-01 12:46:16 -04:00
Bryan Schumaker 8574cda529 libsaria: Ported over Ocarina 5.0 audio functions
The new audio code I developed makes more sense and should be easier to
work with.  It makes sense to port it over.
2011-05-01 12:46:16 -04:00
Bryan Schumaker 6cb857d988 ocarina: Switch over to new preferences methods
I removed the old methods, so I need to use the new methods for ocarina
to start up.  This patch switches everything over.

NOTE: As of this patch, ocarina should work again.
2011-05-01 12:46:16 -04:00
Bryan Schumaker 3bc5c05ab1 libsaria: disable plugins
With my recent changes, my old plugins are incompatible.  I'm going to
come up with a new system in a few releases, so I'm going to wait until
then.
2011-05-01 12:28:19 -04:00
Bryan Schumaker 34f2ffe227 ocarina: enable window drag-n-drop
This calls universal_open() to open whatever file is dropped onto the
window
2011-05-01 12:28:09 -04:00
Bryan Schumaker 2c5d873cd0 ocarina: Remove settings directory
I can add in a settings tab later.  Cleaning up code is a higher
priority
2011-05-01 12:27:58 -04:00
Bryan Schumaker 19f2597936 ocarina: Remove components directory
I've implemented everything that was here.  Time to remove it
2011-05-01 12:27:49 -04:00
Bryan Schumaker cf164deb44 ocarina: Remove old code from library and playlist 2011-05-01 12:27:38 -04:00
Bryan Schumaker dc8a69bc0d ocarina: Refresh library after loading
To show changes.  I also use the v1.3 decoder function to decode
exported libraries.
2011-05-01 12:27:30 -04:00
Bryan Schumaker 9684ecce40 ocarina: Refresh playlist when loaded 2011-05-01 12:27:21 -04:00
Bryan Schumaker 3b131f33ef ocarina: Added universal open button
I want to redo the chooser for this, but I'll need to redo the sources
first.  I guess it'll have to wait for 4.5?
2011-05-01 12:27:11 -04:00
Bryan Schumaker 8891cb8c36 ocarina: Added new save button
This saves playlists
2011-05-01 12:27:03 -04:00
Bryan Schumaker df3c9702be ocarina: Remove old image file
It's been replaced
2011-05-01 12:26:54 -04:00
Bryan Schumaker 71d73ecdd1 ocarina: Manually set album art when image clicked 2011-05-01 12:26:44 -04:00
Bryan Schumaker 091aa3972c ocarina: Added update button
I think it works... I may not have gotten updating the library correct
in v<4.3.  I'll fix it in 4.5 when I rewrite libsaria.
2011-05-01 12:26:34 -04:00
Bryan Schumaker 3f173b9468 ocarina: remove old volume button
not needed anymore...
2011-05-01 12:26:24 -04:00
Bryan Schumaker 5ff0419633 ocarina: Added volume button to header 2011-05-01 12:25:44 -04:00
Bryan Schumaker 6291cb6686 ocarina: clean up like / dislike button functions
these functions are now created as part of the button generating
functions
2011-05-01 12:25:34 -04:00
Bryan Schumaker 1a86edca35 ocarina: clean up button generating code
I use a generic "set attributes" function to set the default attributes,
rather than having this function essentially twice (once for normal
buttons and once for toggle buttons)
2011-05-01 12:25:25 -04:00
Bryan Schumaker 97af3d50e4 ocarina: Call toggle buttons without toggling enabled
I disable the toggle callback, call a function, and then reconnect the
callback.
2011-05-01 12:25:15 -04:00
Bryan Schumaker 55730d3dbf ocarina: Remove old footer code 2011-05-01 12:25:06 -04:00
Bryan Schumaker 40751a9eed ocarina: Remove old body code 2011-05-01 12:24:57 -04:00
Bryan Schumaker 3b8411f175 ocarina: Remove old listview code 2011-05-01 12:24:48 -04:00
Bryan Schumaker b2e7054458 ocarina: Remove old window init code
Everything is covered now
2011-05-01 12:24:37 -04:00
Bryan Schumaker 0aa618ee5a ocarina: remove old shortcut code
The new code is more generic and easier to maintain / add new shortcuts
2011-05-01 12:24:27 -04:00
Bryan Schumaker a4d27d0b0f ocarina: Catch exception on empty album art file
I don't want to set the image to an empty file.  Improving the cache so
that it doesn't store empty files is the best solution, so for now I
just check the error (and keep the function from uninviting itself from
the POSTGETART event)
2011-05-01 12:24:17 -04:00
Bryan Schumaker 29a47e84ad Ocarina: g key goes to currently playing song 2011-05-01 12:24:04 -04:00
Bryan Schumaker 2b0c7792d0 ocarina: f key toggles footer 2011-05-01 12:23:53 -04:00
Bryan Schumaker dc418df572 ocarina: Window grabs focus on escape
Pressing the escape key will cause the window to grab focus
2011-05-01 12:23:43 -04:00
Bryan Schumaker a639c520f5 ocarina: Added control shortcuts 2011-05-01 12:23:33 -04:00
Bryan Schumaker 72e59c9263 ocarina: Added shortcut famework
Now to add more shortcuts...
2011-05-01 12:23:22 -04:00
Bryan Schumaker 2feb354631 ocarina: Remove old tiny footer code 2011-05-01 12:23:12 -04:00
Bryan Schumaker 349d4fc1bd ocarina: Album art in tiny footer 2011-05-01 12:23:02 -04:00
Bryan Schumaker 8e4e17f0df ocarina: Remove old now playing page code
It has been reimplemented in a new file
2011-05-01 12:21:28 -04:00
Bryan Schumaker be3f8845fe ocarina: Remove some of the old album art code
It was commented out and no longer necessary.
2011-05-01 12:21:16 -04:00
Bryan Schumaker cc3d95d9a0 ocarina: Reset album art when new song loaded
I set it to the ocarina logo, it can change again later.
2011-05-01 12:21:04 -04:00
Bryan Schumaker 6482dc157b ocarina: Maximum album art size
Change song while on tiny footer
Expand to large footer
Look at the HUGE album art image

To fix this, I set a maximum size that album art can be
2011-05-01 12:20:52 -04:00
Bryan Schumaker e60848c119 ocarina: Fix cur song display on tiny footer
It used to be "$TITLE $ARTIST".  I changed it to "$TITLE by $ARTIST"
2011-05-01 12:20:40 -04:00
Bryan Schumaker 5b8b7a8a46 ocarina: Added image tooltip
It shows the full sized image
2011-05-01 12:20:28 -04:00
Bryan Schumaker 3d1b8773d5 ocarina: Added album art
I put it on the now playing page for now.  Eventually I'll put it in
other places, too.
2011-05-01 12:19:49 -04:00
Bryan Schumaker ad734ae8d3 ocarina: clean up export button 2011-05-01 12:19:39 -04:00
Bryan Schumaker a5dfe5302c ocarina: new export button
I also removed the old code
2011-05-01 12:19:31 -04:00
Bryan Schumaker 7c772e5315 ocarina: remove some more commented out code 2011-05-01 12:19:21 -04:00
Bryan Schumaker 4f129cae03 ocarina: don't expand long attribute list to variables
keep it as a tuple and pass it as a generic argument instead
2011-05-01 12:17:29 -04:00
Bryan Schumaker 832aec4daf ocarina: remove old pbar.py
The new slider code is smaller and more readable.
2011-05-01 12:17:18 -04:00
Bryan Schumaker 3fa902186b Ocarina: Added progress slider
Click to seek
2011-05-01 12:17:08 -04:00
Bryan Schumaker f9c1538a58 ocarina: Remove components/box.py
What was this file even used for...?
2011-05-01 12:16:58 -04:00
Bryan Schumaker 97189d7b93 Ocarina: Remove old menu code
Because nothing uses it anymore...
2011-05-01 12:16:47 -04:00
Bryan Schumaker de1fafcbc1 Ocarina: Added common menu items
Right now, it's just the "pause after current track" feature.
Eventually there may be more.
2011-05-01 12:16:38 -04:00
Bryan Schumaker 096564c942 ocarina: remove commented out code from footer 2011-05-01 12:16:27 -04:00
Bryan Schumaker 02d2b5c621 ocarina: remember footer state 2011-05-01 12:16:17 -04:00
Bryan Schumaker f8fb785ad0 ocarina: Remove old button code
This removes the old LikeButton(), DislikeButton(), and ToggleButton()
2011-05-01 12:16:05 -04:00
Bryan Schumaker a519ad62ab ocarina: Added like and dislike buttons 2011-05-01 12:15:56 -04:00
Bryan Schumaker 27c3d2b3f1 ocarina: Remove commented out code
This includes all of ocarina/components/label.py
2011-05-01 12:15:46 -04:00
Bryan Schumaker aac05e92b5 Ocarina: Added year, length and playcount attrs to nowplaying
It's begining to look like the Ocarina 4.3 style now playing page...
2011-05-01 12:15:34 -04:00
Bryan Schumaker 6c20398699 ocarina: Show some attributes on the now playing page
Title, album, and artist for now.
2011-05-01 12:15:22 -04:00
Bryan Schumaker 8ea0036df0 Ocarina: Added now playing page to detailed view
This is the first of (probably) multiple notebook pages that will be
added.  It still needs to show more information, but this is a start.
2011-05-01 12:15:12 -04:00
Bryan Schumaker 103c6bea35 ocarina: Added notebook for detailed information
I eventually want to support multiple pages and other stuff.
2011-05-01 12:15:00 -04:00
Bryan Schumaker 5297991b89 ocarina: Hide info bar when up button clicked
Once I make my expanded display, I will show that as well
2011-05-01 12:13:11 -04:00
Bryan Schumaker 21d6f57e89 Ocarina: Remove commented out code from library / playlist / queue
I was keeping this code as a reference, but I already implement
everything it does.  It can be removed now.
2011-05-01 12:12:55 -04:00
Bryan Schumaker 864f64cc84 ocarina: Move goto and clear functions
Now they are created right before the buttons are.  This makes it so I
can return buttons that do exactly what I want every time.
2011-05-01 12:12:41 -04:00
Bryan Schumaker f8c64e0f78 ocarina: Added random button
I also added code for creating toggle buttons easily.
2011-05-01 12:12:30 -04:00
Bryan Schumaker 86bac243d2 ocarina: clear current page
This clears whatever is on the current page and saves changes (in the
case of the playlist and library)
2011-05-01 12:12:22 -04:00
Bryan Schumaker 3b50c4071c ocarina: goto current song
I do this when the goto button is pressed and also when the song
changes.
2011-05-01 12:12:13 -04:00
Bryan Schumaker bce7651be5 ocarina: Set text on footer labels
This sets (title, album), position and duration values
2011-05-01 12:12:02 -04:00
Bryan Schumaker 5b5a232b43 ocarina: Add more callbacks
This should make the code more readable and useable
2011-05-01 12:11:52 -04:00
Bryan Schumaker d72d16f39d ocarina: Added callback methods
I eventually want to remove the event system from libsaria.  My first
step in doing this is to move usage of the event system in Ocarina to
one place.
2011-05-01 12:11:42 -04:00
Bryan Schumaker 5ab592dcda ocarina: Add buttons to tiny footer
The new buttons are much simpler than my old ones.  This should work out
better.
2011-05-01 12:11:14 -04:00
Bryan Schumaker b5665b016f Ocarina: Began redoing footer
The new code should be more maintainable and less confusing /
intimidating.
2011-05-01 12:11:03 -04:00
Bryan Schumaker 5d4d86275e Ocarina: move footer.py to new directory
I will split it up into multiple files
2011-05-01 12:10:43 -04:00
Bryan Schumaker f5eed60d78 ocarina: Play double clicked songs
Otherwise, what's the point of a gui?
2011-05-01 12:10:28 -04:00
Bryan Schumaker 1e7d992848 ocarina: Remove commented out code from ocarina/__init__.py
Not needed anymore.
2011-05-01 12:10:12 -04:00
Bryan Schumaker 35bb4a0ab3 ocarina: Remove dead code
This code was commented out for my gui revamp.  I don't need it anymore.
2011-05-01 12:10:00 -04:00
Bryan Schumaker 9a1a0471c5 ocarina: Re-added queue
Once again, using Ocarina-5.0 concepts (such as hiding the tab when the
queue is  empty)
2011-05-01 12:09:47 -04:00
Bryan Schumaker 13a74e47c3 Ocarina: Remove from playlist
I can remove multiple songs from the playlist now.
2011-05-01 12:09:32 -04:00
Bryan Schumaker bcd42cfea4 Ocarina: Add songs to playlist
Using a right click menu from the library
2011-05-01 12:09:09 -04:00
Bryan Schumaker 33b7f1ba0e Ocarina: Re-added playlist tab
The new tab uses my ocarina 5.0 concepts
2011-05-01 12:08:52 -04:00
Bryan Schumaker f902c11f9a ocarina: Filter the library again
This time, I use concepts I played with for Ocarina 5.0
2011-05-01 12:07:56 -04:00
Bryan Schumaker 0c02d6eff3 ocarina: Remove old, commented out code
It's not needed any more...
2011-05-01 12:07:38 -04:00
Bryan Schumaker 9c6db9ba9b ocarina: New listview code
I can fill in the listview from the library.
2011-05-01 12:07:23 -04:00
Bryan Schumaker 6385c1f342 Ocarina: Begin rewriting header
I show the entry, and I call a filter function for the current page.
2011-05-01 12:05:59 -04:00
Bryan Schumaker d20d4c3fcd Ocarina: Playlist and library tabs
I've readded these tabs, but I don't fill them in yet.  That'll wait
until I rewrite sources.
2011-05-01 12:05:46 -04:00
Bryan Schumaker b2db7d3327 Began gui rewrite
Cleaning up the code was proving to be more difficult than I initially
thought.  I have decided to rewrite the gui to make it less intimidating
and more easily modified.
2011-05-01 12:05:31 -04:00
Bryan Schumaker 8255c17ad1 Initialize library, playlist, queue from ocarina/__init__.py
It can't be done in ocarina.py anymore, so it has to be moved there.
2011-05-01 12:04:23 -04:00
Bryan Schumaker 36c3770e4b ocarina: Initialize from ocarina/__init__.py
This will allow me me to replace ocarina.py easily..
2011-05-01 12:03:54 -04:00
Bryan Schumaker dfa3eb0af1 Move Page() class to new file
This helps with my cleanup
2011-05-01 12:03:42 -04:00
Bryan Schumaker 3aee2cd867 move body.py to new directory
This should help to clean up everything a bit more.
2011-05-01 12:03:27 -04:00
Bryan Schumaker fb4e863b64 Move Source() class to ocarina/sources/__init__.py
This finishes my initial attempt at cleaning up this portion of the gui.
2011-05-01 12:03:12 -04:00
Bryan Schumaker 965ff4dc18 Move listview to new file
Continuing my source gui cleanup
2011-05-01 12:02:26 -04:00
Bryan Schumaker f194444895 Move ListStore creation code to new file
This continues my sources cleanup.
2011-05-01 12:02:15 -04:00
Bryan Schumaker 74545558a7 Move source column code to new file
This patch also moves the column into a new file.  This is the beginning
of my attempt to clean up the code used to display the song list.
2011-05-01 12:01:40 -04:00
Bryan Schumaker 2c1865d257 Measure startup time in ocarina/__init__.py
I was doing some of the calculation in ocarina.py, but it can be done
easier (and more accurately) in ocarina/__init__.py
2011-05-01 12:01:25 -04:00
Bryan Schumaker 08fa12d76d Don't create menu items in ocarina.py
I was creating the "Pause after current track" menu item in ocarina.py,
but it can easily be done in menu.py.
2011-05-01 12:00:55 -04:00
Bryan Schumaker c62ffd7e1f Initialize body in ocarina/__init__.py
This helps clean up ocarina.py a bit more.
2011-05-01 12:00:40 -04:00
Bryan Schumaker 7caeddf615 More window cleanups
This is looking like a less intimidating file now.  It should be more
usable going forward.
2011-05-01 12:00:23 -04:00
Bryan Schumaker ef78427954 Clean up window creation
I do as much as I can outside of the init() function to make the code
more readable.  Doing everything in init() can make things more
complicated and annoying.
2011-05-01 12:00:09 -04:00
Bryan Schumaker 6d08dedba5 ocarina: Single add_to_queue() function
This function is similar to the add_to_playlist() function I recently
added.  The idea is to have the queue add things to itself, rather than
having the playlist and library implement this function independently.
2011-05-01 11:59:07 -04:00
Bryan Schumaker f8ed280ba1 ocarina: Playlist adds selected to playlist
It was silly to have the library control adding songs to the playlist.
The playlist should provide an easy function that takes the selected
songs and adds them.
2011-05-01 11:58:47 -04:00
Bryan Schumaker 377c1a496d ocarina: Set header / footer visibility when adding page
This allows me to store the visible settings in the Page() class, rather
than having to store it with the rest of the content.
2011-05-01 11:54:23 -04:00
Bryan Schumaker c185524d62 ocarina: Selectively add header and footer to tab pages
If I don't want the header or footer on a tab page, I shouldn't have to
draw it.  This patch gives me a way to do that.
2011-05-01 11:54:06 -04:00
Bryan Schumaker 94f428e615 ocarina: sources.cur_lib_id doesn't exist anymore
I should use sources.get_attrs("id") to find the current id instead.
2011-05-01 11:53:42 -04:00
Bryan Schumaker c78f806244 plugins: All plugins have a __NAME__ value 2011-05-01 11:43:50 -04:00
Bryan Schumaker d28ca013f3 ocarina: Added initial plugin configuration page
This page will eventually be used to stop, start, and uninstall plugins.
2011-05-01 11:43:32 -04:00
Bryan Schumaker 8c2e7605ef ocarina: Create settings window every time
Trying to save the window each time wasn't working well.  I found that
clicking the preferences button a second time would display an empty
window, rather than what was saved.  The user probably won't notice the
time it takes to create the window again.
2011-05-01 11:43:14 -04:00
Bryan Schumaker 1e52558279 ocarina: Horizontal like / dislike buttons
This patch changes the like and dislike buttons to be arranged
horizontally, rather than vertically.
2011-05-01 11:42:53 -04:00
Bryan Schumaker 847b51908a ocarina: General settings page
The settings will be shown in a notebook, with a tabbed interface.  This
patch adds a "general" page for basic settings.
2011-05-01 11:42:32 -04:00
Bryan Schumaker 471db697e9 ocarina: Selectively create settings window
We should only do this if the window doesn't already exist.
2011-05-01 11:42:12 -04:00
Bryan Schumaker 93dcfe5f8e ocarina: New window for settings
Clicking the settings button will now create a new window for
configuring settings.
2011-05-01 11:41:58 -04:00
Bryan Schumaker fd1514202f ocarina: Create settings module
This module is for controlling various settings.  It will create a new
window and respond to any events.
2011-05-01 11:40:52 -04:00
Bryan Schumaker f5d6990bc0 ocarina: Create preferences button
This button will open a window for configuring Ocarina when clicked.
For now, clicking it will print out a message.
2011-05-01 11:40:30 -04:00
Bryan Schumaker 23cd4da304 Track version in libsaria
Tracking two different versions for Ocarina and libsaria was too much
work.  From now on, Ocarina and libsaria will have the same version.
Ocarina's version string will be set based on libsaria.
2011-05-01 11:40:09 -04:00
Bryan Schumaker cd914936f3 Bump minor version and mark development as True 2011-05-01 11:39:41 -04:00
Bryan Schumaker 5903d085b2 Current version is 4.3.3 2011-05-01 11:05:55 -04:00
Bryan Schumaker 7c4f32c30b ocarina: User cancels manual album art
This used to cause the album art to change to the Ocarina icon.  When
the user cancels setting album art, None is returned from the selector
function.  We should check for this before trying to set the image and
return early if path is None.
2011-05-01 11:05:55 -04:00
Bryan Schumaker 50cded315e bump bug version 2011-05-01 11:05:55 -04:00