We shouldn't need to save preferences during startup because at this
point only the initial values have been set. If nothing is changed,
then nothing needs to be saved and we can save some time. This should
also prevent any problems caused by crashing during a save.
I will eventually be moving things over to here. The general rule: if
it has to do with buttons on the gui, then it should probably be
considered a control.
The prefs2 structure is where I will store my new tree-based
preferences. I'll use this for now until everything gets moved over. I
also remove the vars variable since nothing uses it.
Libsaria and Ocarina have a __vers__ variable. This contains a string
with the official version (eg. "Ocarina 4.1-dev" or "Libsaria 1.1").
"-dev" means that there have been changes since the last official
version.
I can now change the volume using a button in the gui. Additionally,
the volume is stored between sessions, and the correct value is loaded
when libsaria is initialized.
Libsaria events now support starting specific callback functions in a
background thread. This replaces starting a specific event in the
background.
I have a library tab that is added to the main window through use of the
ocarina.add_tab function.
I have new tests for walking the tree and running multiple threads with
locks.
The web radio plugin can load pandora and grooveshark. This happens
when a web radio tab is selected. After the web document is loaded,
playing music will be paused.
I have begun creating the Ocarina 4.1 gui. So far, I can create and
resize a window. After a resize, the new size is saved and used again
when Ocarina is next started. I am also investigating drag and drop for
use with plugin loading.
I've begun work on a generic collection class for the library, playlist,
and queue. Tagpy functions have been merged into the
libsaria.collections.__init__.py file to make things easier.
I have reworked the gstreamer functions from Ocarina 4.0 and combined
everything into one file. I have also created an audio test that plays
a song from my library.
This function should be called to initialize the preferences and
variables dictionary when libsaria is started. This function triggers
the POSTSTARTUP event.
I combined various parts of the Ocarina 4.0 event system into one file.
The new event file has threading abilities built in, so I no longer need
an external file for that
I revised the Ocarina 4.0 map class so it will hopefully have better
performance. I also began working on a new testing system so testing
specific changes should be easier than with Ocarina 4.0