Bryan Schumaker
66f70249ad
ocarina: Load images using the full path
...
relative paths can't be trusted once the program has been installed. To
get around this, I assume that the install directory has been configured
correctly and then point to images located in the subdirectory next to
the executable.
2011-11-08 08:20:21 -05:00
Bryan Schumaker
3fe03734a1
ocarina: Pack tag labels into a scrolled window
...
I don't like the main window resizing, so we allow the users to scroll
if the tags take up too much space.
2011-11-07 19:43:09 -05:00
Bryan Schumaker
30246df924
ocarina: Improved label setting function
...
I created a single function to escape the text and set it in the label.
I don't know why I didn't do this from the beginning!
2011-11-07 19:22:46 -05:00
Bryan Schumaker
5ae5174536
ocarina: Left justify tag labels
...
I like this look better than the centered look.
2011-11-07 19:06:49 -05:00
Bryan Schumaker
e409c2317f
ocarina: Added a random button
...
Random hasn't been implemented in libsaria yet, but I can still create
the button to test preferences. The random button should set itself to
the value store in the preferences file.
2011-11-07 08:32:01 -05:00
Bryan Schumaker
0f2d682216
ocarina: Split buttons over two rows
...
The single row was getting somewhat long, so I split them up.
2011-11-06 20:33:47 -05:00
Bryan Schumaker
913b9f8630
ocarina: Seek to different parts of the song by clicking
...
Button 1 seeks by 10 seconds either forward or backward, button 2 seeks
to an absolute position. I initally wanted to switch the behavior of
these two buttons, but for now I'll just have to get used to the GTK
defaults.
2011-11-06 20:26:11 -05:00
Bryan Schumaker
fffb9875ac
ocarina: Add a next() button
...
Users press this button to choose the next song.
2011-11-06 19:18:03 -05:00
Bryan Schumaker
6930c1ccf3
Ocarina: Add a test menu item
...
The label for the menu reads "test", but it doesn't do anything yet.
2011-11-04 08:25:51 -04:00
Bryan Schumaker
481c2b4832
ocarina: Initialize songlist with a list of menu items
...
These items will be used to create a right click menu.
2011-11-03 08:32:32 -04:00
Bryan Schumaker
dfa3d06142
ocarina: Respond to right click events
...
Right now I just print out some text, but eventually I'll be drawing in
a menu.
2011-11-03 08:23:25 -04:00
Bryan Schumaker
1018b0bc5b
ocarina: Show the current audio position
...
This probably isn't a final placement of the widget, but for now drawing
in the widget is a good improvement.
2011-11-02 08:21:01 -04:00
Bryan Schumaker
9236dcbb50
ocarina: Show length of song next to progress bar
...
This makes it easy to tell the total length of the current song.
2011-11-02 08:11:04 -04:00
Bryan Schumaker
90bc64131d
ocarina: Individual functions for setting tag labels
...
I switched over to using pango <span> tags to set font properties to
make the text larger. I decided that the title will be bigger than
artist and album, so I can't have one generic function for setting the
label properties. Instead, I divided it up into one function for each
label.
2011-11-01 23:16:04 -04:00
Bryan Schumaker
0db7c0cf6b
ocarina: Move the progress bar
...
I put it above the current song display and taking up the full width of
the window. I think a big progress bar is more useful than a small one.
2011-11-01 22:48:35 -04:00
Bryan Schumaker
0eff7df5c4
ocarina: Add a progress bar
2011-10-29 17:24:21 -04:00
Bryan Schumaker
c894815dad
ocarina: Add the library list to the ocarina namespace
2011-10-29 15:55:48 -04:00
Bryan Schumaker
0b1684620d
ocarina: Add the chooser to the ocarina namespace
...
This removes some ocarina_*() functions
2011-10-29 15:52:03 -04:00
Bryan Schumaker
7c79aab787
ocarina: Create initial namespace
...
Namespaces make code easier to follow, and remove the need to mangle the
beginning of function names by using ocarina_*() or libsaria_*(). In
other words: "namespaces are one honking good idea. Let's have more of
them!"
2011-10-29 15:47:00 -04:00
Bryan Schumaker
6b12cff613
ocarina: Clean up library.cpp a bit
...
I reordered the functions and removed the unnecessary declaration from
the top of the file.
2011-10-29 15:35:30 -04:00
Bryan Schumaker
c727aaa526
ocarina: Fill a songlist by inheriting from a SourceModel
...
The SourceModel declares an insert() function that is called when
filling the list. I have defined this function in a way that the list
will be filled in through repeated calls to insert()
2011-10-29 15:19:56 -04:00
Bryan Schumaker
e5bd2471b0
ocarina: Rearrange the now playing panel
...
I want controls to be on the same level as the artist / album / title
labels. This will be more compact, and it won't waste a lot of empty
space above the labels and next to the controls.
2011-10-29 04:46:42 -04:00
Bryan Schumaker
fc4f311971
ocarina: Added a "now playing" panel
...
This is just an initial implementation, so it's not very good right now.
It does give all the information, though. That's a plus. I also set
the artist / album / playlist whenever a SONG_LOADED callback is given.
2011-10-28 17:22:51 -04:00
Bryan Schumaker
9d22d6b278
ocarina: Split footer into multiple files
...
This should help keep things organized
2011-10-28 17:06:18 -04:00
Bryan Schumaker
66a3ca63e6
ocarina: Add a separator to the footer
...
I think the separator looks better, and helps to show where the songlist
ends and the footer begins.
2011-10-28 14:27:05 -04:00
Bryan Schumaker
1fee8e50b3
ocarina: Move some songlist functions to a new file
...
This splits out more functions, and makes the songlist more maintainable
overall.
2011-10-28 13:59:53 -04:00
Bryan Schumaker
6c5412a3d5
ocarina: Move songlist init code into a new file
...
Doing it all in one function was messy and hard to follow. I've broken
it into several smaller functions, so now I know what is going on.
2011-10-27 17:17:46 -04:00
Bryan Schumaker
236cf0fee5
ocarina: Move songlist.h
...
It really should go into the include directory. I don't want to use
relative paths to include header files in a subdirectory... I don't know
why I even did it in the first place!
2011-10-27 16:39:27 -04:00
Bryan Schumaker
ab9b76a0b4
ocarina: Switch to new idle::run_task() function
...
Part of my rewrite involved moving the run_task() function to a new
namespace. Ocarina now uses the new function.
2011-10-27 15:18:05 -04:00
Bryan Schumaker
7dce8ffedc
ocarina: Switch to new audio functions
...
These functions have been moved to a new namespace, so the front end
needs to be updated.
2011-10-27 14:31:35 -04:00
Bryan Schumaker
0425df6d63
ocarina: Rename tiny.cpp
...
I am no longer going to use the tiny / full footer scheme that I used in
Ocarina 4.x, so this file is better described as footer.cpp
2011-10-27 12:13:22 -04:00
Bryan Schumaker
d3c9301628
ocarina: Access footer through get_footer() and put_footer()
...
I combined reference counting with the get_footer() function to make
using it easier (no manual reference counting). put_footer() will
deallocate the widget if the reference count is 0 (this is already done
by the g_object_unref() function) so it should work in a sane way.
2011-10-27 12:08:21 -04:00
Bryan Schumaker
007a2e820d
ocarina: Remove unused #include
...
The footer is no longer used in ocarina.cpp
2011-10-22 08:57:22 -04:00
Bryan Schumaker
155e436259
ocarina: Set window title and icon during init()
...
I was setting these through other function calls, but it's easier (and
cleaner) to do it all in the initial init() call.
2011-10-22 08:55:32 -04:00
Bryan Schumaker
c3fd002e92
ocarina: Remove unnecessary widgets
...
I can now add the body tabs directly to the window, rather than packing
them in a box with other things.
2011-10-22 08:53:32 -04:00
Bryan Schumaker
bc6068cbda
ocarina: Move controls to the right of the window
...
They have been on the left for a while, but I like them better on the
right.
2011-10-21 17:55:27 -04:00
Bryan Schumaker
882f917c8f
ocarina: Add a reference to the footer before moving
...
Calling the remove() function will destroy the footer if it has no other
references. To prevent this, I need to call g_object_ref() add a
reference to the widget.
2011-10-21 14:51:22 -04:00
Bryan Schumaker
6467356cf6
ocarina: Cleanup path info buttons
...
I was using variables that I really didn't need to use...
2011-10-20 20:33:21 -04:00
Bryan Schumaker
3ff17e907c
ocarina: Update library path button
...
One click and the single library path will be updated
2011-10-20 20:31:35 -04:00
Bryan Schumaker
b84a19cd77
ocarina: Created a "remove path" button
...
Clicking this button removes a path from the library
2011-10-20 20:19:51 -04:00
Bryan Schumaker
2c12cb80aa
ocarina: Move tab page content into a table
...
This should make it easier to add or remove headers and footers so that
I can share one widget between all pages.
2011-10-20 19:33:05 -04:00
Bryan Schumaker
83719838aa
ocarina: Refresh path list when library is updated
...
I respond to the LIBRARY_REFRESH callback by creating new path panels to
show the updated information.
2011-10-20 18:46:54 -04:00
Bryan Schumaker
61153a0580
ocarina: Added update library button
...
This button will call the new library::update() function
2011-10-20 13:24:11 -04:00
Bryan Schumaker
60dc610195
ocarina: Display library paths
...
Right now I simply create a list during startup. I still need to clear
this list and refill it whenever the library is updated.
2011-10-20 13:24:11 -04:00
Bryan Schumaker
e8341288b3
ocarina: Songlist improvements
...
- Function pointers for specific tasks
- Change label text
- Use libsaria namespaces
2011-10-19 10:00:01 -04:00
Bryan Schumaker
1b18069b77
ocarina: remove unnecessary add_callback() function
...
It only called the register_callback() function, so there is no point in
keeping it around.
2011-10-02 11:07:36 -04:00
Bryan Schumaker
1996b54065
ocarina: Update to new libsaria namespace
...
The old functions are no longer defined, so this patch updates to the
new functions.
2011-10-01 13:27:43 -04:00
Bryan Schumaker
165a359655
ocarina: Fill library on startup
...
Once the library has been loaded we can display it to users.
2011-10-01 12:52:05 -04:00
Bryan Schumaker
250964a351
ocarina: Freeze and thaw during a clear
...
This should speed up clearing the list, too.
2011-09-21 08:21:45 -04:00
Bryan Schumaker
ce2f9f02f8
ocarina: Freeze and thaw the liststore while filling
...
This causes fewer refreshes of the liststore and speeds up filling it
in.
2011-09-21 08:12:56 -04:00