Bryan Schumaker
33749eeb58
Add export button to gui
...
The button doesn't do much unless one is created and displayed
somewhere...
2010-12-03 08:29:16 -05:00
Bryan Schumaker
c4738482b7
Remove old collection code and files
2010-12-03 08:29:16 -05:00
Bryan Schumaker
11e1caefe2
Random song from playlist
...
I can once again play random songs from the playlist.
2010-12-03 08:29:16 -05:00
Bryan Schumaker
1190fd45cc
Playlist next()
...
The playlist can play the next song in the playlist.
2010-12-03 08:29:16 -05:00
Bryan Schumaker
587844cb4e
libsaria.music doesn't exist anymore
...
It has been renamed libsaria.audio, so the end-of-song function should
be changed to reflect this.
2010-12-03 08:29:16 -05:00
Bryan Schumaker
f8dd01a54c
Tree lookup
...
Lookup will follow a path and return whatever node it is pointing to.
2010-12-03 08:29:16 -05:00
Bryan Schumaker
263cfde85d
find attr filepath correctly
...
The attribute filepath is easier now that I can walk a fs_tree backwards
and get a path back.
2010-12-03 08:29:16 -05:00
Bryan Schumaker
f7a963cab1
Easy file_to_id()
...
file_to_id() can stat the filepath to find the inode number (aka the
song id). This is much easier than doing a bunch of lookups. What I
really want to do eventually is get rid of file_to_id()...
2010-12-03 08:29:15 -05:00
Bryan Schumaker
18e9c7e135
Library indexing
...
I can now add artist / album / title of each song to an index in the
library.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
d5d97e502a
Library get_attr values
...
We should walk the tag values bacwards, rather than using the normal
walk_backwards function.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
8aaeffaa7e
Tags in DLValTree
...
I store the tags in a doubly-linked value tree from now on.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
2949535aba
Val trees walk values
...
Val trees can walk through their values in addition to their paths. A
doubly-linked val tree can also walk values backwards.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
fe449ffea4
Value Trees
...
Value trees store a value in addition to the path. They come in normal
and doubly-linked flavors.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
f29c57992a
Library FSTrees and unique ids
...
I now make a filesystem tree to store the library. In addition, I am
using inode number to track songs. This should make it easier to detect
moved files (inode number matches but path doesn't).
2010-12-03 08:29:15 -05:00
Bryan Schumaker
5dbbeb7dcb
DLFSTrees
...
Doubly linked filesystem trees are both a doubly linked tree and a
filesystem tree. They can walk paths backwards.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
ffd38ec9fa
Find child id once
...
Rather than computing the child id for every iteration of walking
backwards, we do it once.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
60aa99ad84
Add track fields
...
Tracks need a playcount and a score in addition to all other fields.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
5a21e63e3f
Add tracks to libray
...
I now attempt to add every file in the filesystem to the library as a
Track(). Errors are logged and bad extentions are saved (so we know not
to scan them in the future).
2010-12-03 08:29:15 -05:00
Bryan Schumaker
b720519043
Add Track class
...
This class will be used to store metadata about each song (year, length,
genre ...)
2010-12-03 08:29:15 -05:00
Bryan Schumaker
825a8b8346
Add DLTree()
...
This patch adds a double-linked tree class for use in storing the
library. This class can walk backwards from a leaf node when
walk_backwards is called.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
4a33a2f0fd
Remove value from tree displaying
...
Displaying a tree should not use the old tree.value variable. This
variable doesn't exist anymore.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
b19e704154
Library scanning work
...
I have continued work on library scanning.
2010-12-03 08:29:15 -05:00
Bryan Schumaker
5e6cd3c26a
FSTree() correct insert
...
Correctly insert a split path into a FSTree()
2010-12-03 08:29:15 -05:00
Bryan Schumaker
c87a696e21
Tree() length
...
I made Tree().__len__() to use for finding the number of leafs that
exist on a tree.
2010-12-03 08:29:14 -05:00
Bryan Schumaker
5b4021f3f6
libsaria.path FSTree()
...
path should use an FSTree() instead of a Tree()
2010-12-03 08:29:14 -05:00
Bryan Schumaker
1f1cbe1b34
FSTrees shouldn't have a value
...
If a Tree() doesn't have a value, then the FSTree() shouldn't either...
2010-12-03 08:29:14 -05:00
Bryan Schumaker
3598de0b72
Trees don't have values
...
Trees don't actually need a value. I can make a subclass later if I
find it's important.
2010-12-03 08:29:14 -05:00
Bryan Schumaker
a66a4a769b
Began new library scanning code
...
The new scanning code will use FSTrees() to find paths. I hope it will
be easy to make a scanning progress bar with the new system.
2010-12-03 08:29:14 -05:00
Bryan Schumaker
8328a83dcd
Don't reload when refreshed
...
Lists should not be reloaded when they are refreshed. Instead, use
everything already in memory.
2010-12-03 08:29:14 -05:00
Bryan Schumaker
78b445793a
libsaria.path() with an FSTree()
...
I now have a function to walk all files in a filesystem and make an
FSTree().
2010-12-03 08:29:14 -05:00
Bryan Schumaker
d5231e9db1
FSTree()
...
FSTree() is a tree representing paths in a filesystem. It has functions
for inserting paths and returning the paths it is storing. A path is a
UNIX path: "/home/bjschuma" is the path to my home directory.
2010-12-03 08:29:14 -05:00
Bryan Schumaker
e6b968ed13
Load in background
...
The library and playlist can be loaded in the background to save time!
Also, I changed the library list to use the new populate function.!
2010-12-03 08:29:14 -05:00
Bryan Schumaker
aa79efe6f1
Remove whitespace
2010-12-03 08:29:14 -05:00
Bryan Schumaker
fd812885e8
Remove get_attr
...
This removes get_attr() as a library function (use get_attrs() instead)
2010-12-03 08:29:14 -05:00
Bryan Schumaker
02704b4d7e
Use get_attrs
...
This changes various parts of ocarina / libsaria to use get_attrs()
instead of get_attr().
2010-12-03 08:29:14 -05:00
Bryan Schumaker
31bf833a50
Library get_attrs()
...
get_attrs() will return a list of requested attributes for a given song
id. For now, I have changed get_attr() into a wrapper around get_attrs
that returns the first entry in the result list.
2010-12-03 08:29:14 -05:00
Bryan Schumaker
2dc7f58206
Rename libsaria.music
...
I decided that libsaria.music should be known as libsaria.audio. It
makes more sense to me.
2010-12-03 08:29:14 -05:00
Bryan Schumaker
7b99572f39
Added __bug__ to track bug fix versions.
2010-12-03 08:29:14 -05:00
Bryan Schumaker
52423d8b34
Collection Treeview / List cleanup
...
This removes the on_mouse_motion notifications that I was using for
setting the tooltip.
2010-12-03 08:29:13 -05:00
Bryan Schumaker
acdd0d9500
Treeview tooltips
...
The treeview tooltips will show detailed information about the selected
track (including album art!)
2010-12-03 08:29:13 -05:00
Bryan Schumaker
71a9a0a23f
Added 'art' to library attrs
...
This attribute will return the path to the cached album art for the
song.
2010-12-03 08:29:13 -05:00
Bryan Schumaker
45c6097299
get_artwork_id()
...
If I already have the song id, there is no reason I should have to look
up the filepath to set the artwork.
2010-12-03 08:29:13 -05:00
Bryan Schumaker
bd6522f76b
Album art tooltip change
...
Use set_icon() instead of set_custom() to set the album art tooltip.
2010-12-03 08:29:13 -05:00
Bryan Schumaker
cac2ebbe23
Album Art tooltip
...
The album art tooltip is a large verison of the image set as the album
art.
2010-12-03 08:29:13 -05:00
Bryan Schumaker
15c4a273bf
Playlist filtering
...
The new playlist module can be filtered again.
2010-12-03 08:29:13 -05:00
Bryan Schumaker
1de5243753
New playlist module
...
The playlist should be a standalone module rather than inheriting from
the same base class as the library.
2010-12-03 08:29:13 -05:00
Bryan Schumaker
8ca67cd4c7
Libsaria trees
...
libsaria.path.make_tree(path) will return a tree rooted at path
2010-12-03 08:29:13 -05:00
Bryan Schumaker
f561e6b3e2
Remove library functions from collections.lens
...
I have removed some functions from the old library class since they have
been re-implemented in the library module.
2010-12-03 08:29:13 -05:00
Bryan Schumaker
643da7c12a
New library filtering
...
The new library module can filter songs
2010-12-03 08:29:13 -05:00
Bryan Schumaker
ca331f6b64
Library play_id()
...
I have moved over the play_id function to the library module.
2010-12-03 08:29:13 -05:00