Anna Schumaker
f55ecf0472
sidebar: Switch over to using the emmental-favorites icon
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-31 19:18:28 -04:00
Anna Schumaker
f78402f258
Rename trackdb -> tagdb
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 11:15:15 -04:00
Anna Schumaker
7a41c3b1a1
Move module tests out of the toplevel directory
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 11:03:32 -04:00
Anna Schumaker
e8f9427750
Move testing tracks into data/
...
And the generate_tracks.py script into tools/
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 10:57:01 -04:00
Anna Schumaker
500d0757d1
audio: Add an Artwork object to the Player
...
And add it to the Sidebar box while we're at it
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:56:35 -04:00
Anna Schumaker
70f9bc5015
sidebar: Put the Pulser into the Sidebar.Box directly
...
Rather than putting it in the Window.Grid. I add some labels to provide
spacing and to make sure the pulser area stays visible even if the
pulser is hidden.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:56:35 -04:00
Anna Schumaker
05742d0bbc
sidebar: Move the pulser into the sidebar directory
...
I'm soon going to put it into the same box as the Stack
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:56:35 -04:00
Anna Schumaker
cf22a32fe7
window: Add the sidebar Switcher to the Grid directly
...
Rather than putting it in the Gtk.Paned
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:56:34 -04:00
Anna Schumaker
e21eca37ae
playlist: Create a function for changing the current tag
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:56:02 -04:00
Anna Schumaker
193dd7c85c
sidebar: Add a key event controller to user tagrows
...
And respond to the delete key to remove playlists
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
00d43547e5
sidebar: Create a custom listrow for User playlists
...
With a button that deletes the user-created playlist when clicked
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
6c8903e7fd
sidebar: Bold the top playlist on the trackdb.Stack
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
aa15f9bf69
sidebar: Push selected rows onto the trackdb TagStack
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
d6b7a4bb8b
sidebar: Give child TagRows an indented look
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
3362029123
sidebar: Don't set headers on child TagRows
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
f477f8f12a
sidebar: Load child tagstores during __init__()
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
cf23b4f8e0
sidebar: Respond to child Added and Removed notifications
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
de155f6c88
sidebar: Create ParentTagRows
...
With an expander button that shows or hides its children
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
43033b4e21
sidebar: Create ParentTagBoxes
...
For use displaying Tags and SuperTags
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
ab515326c9
sidebar: Create a UserTagBox
...
With different icons for each type of user playlist
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
e6c936d51e
sidebar: Create LibraryTagRows and a LibraryTagBox for library paths
...
So we can add in buttons for updating and removing individual paths.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
6059081d03
sidebar: Add a header to some TagBoxes
...
I enable it for Genre and Artist tagboxes right now
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
6a044b8d4b
sidebar: Load TagRows during TagBox __init__()
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
2614db8923
sidebar: Give TagBoxes a sort_func()
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
ef759c2e64
sidebar: Give TagBoxes a clear() function
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
ca8d4961de
sidebar: TagBoxes can update tag size when changed
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
bf0dbbe5dc
sidebar: TagBoxes take a tagstore and icon as constructor arguments
...
I use the tagstore to register Added and Removed notifications. From
there, I can create and remove TagRow instances in the listbox.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
9ceb2d8a2f
sidebar: Create a TagRow class
...
This gives me a consistent look to use across each sidebar ListBox
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
6e8bdf1ae1
sidebar: Add a function for adding library paths
...
I make sure to carefully select between the parent folder or the
currently selected file.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
e5ce819b23
sidebar: Add directory chooser widgets
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
bb44fbd128
sidebar: Give the Library tab a few extra widgets
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
ac282cb9e3
sidebar: Create a TagBox class
...
And set it as each of the pages in the sidebar stack
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:55:45 -04:00
Anna Schumaker
85b5c964a6
sidebar: Save the current page
...
And initialize to the Library page to make adding that first directory
easier for the user.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:51:54 -04:00
Anna Schumaker
a00701e722
sidebar: Implement a custom sidebar switcher
...
I'm not a fan of either of the built-in stack switching widgets, so I
implemented my own to take up less space on the side.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:51:54 -04:00
Anna Schumaker
aff3fade6f
sidebar: Begin sidebar widgets
...
They involve a stack and a vbox where toggle buttons will eventually be
placed.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-23 12:51:54 -04:00