Re: music catalog overhaul (long)
Kristian Kvilekval <[email protected]>
| Newsgroups | gmane.comp.audio.zinf.devel |
|---|---|
| Message-ID | <1061926246.4162.13.camel@kgklap> |
On Tue, 2003-08-26 at 07:12, Robert Hart wrote: > It sounds like you have put a lot of thought and effort into the new > scheme. You do not mention the UI side of things that much. Will there > be any user visible changes to the way zinf works? > > I have spent a small amount of time trying to port the "playlist" half > of the musicbrowser window to the new gtk TreeView control, and have > learnt quite a lot in the process. > > It seems to me, that if we are to use the TreeView control for the > musiccatalog, and the playlist, then we may want to implement our own > GtkTreeModel for accessing musiccatalog/playlist data. > > see http://developer.gnome.org/doc/API/2.0/gtk/GtkTreeModel.html > > My current code tries to work in the same way as the old code by using > the generic GtkListStore, and is painfully slow in some cases (>2mins to > add 6000 tracks to a playlist) Have you looked at etable/etree in libgal? It looks like a good gtktree alternative. The reason I wrote the long discussion of the music catalog was because I was thinking about the porting effort of the gtktreeview. I have always felt it was a mistake to load entire tree into memory and then have lots of code to maintain that in memory copy of the tree. You'll see that half the tree code seems to be updates from the catalog. Instead the tree should only read the catalog on expand/collapse events. I will be commiting some updates to the catalog to hopefully make the transition easier. Maybe then you can update the tree to react to the appropiate events and expand the tree dynamically. As long as you can add/delete rows from the model dynamically, this should work. ------------------------------------------------------- This SF.net email is sponsored by: VM Ware With VMware you can run multiple operating systems on a single machine. WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the same time. Free trial click here:http://www.vmware.com/wl/offer/358/0