On Sun, 2003-11-16 at 02:13, Jeffrey Yasskin wrote: > I plan to work on the shuffle and random algorithms over the next week > or so. I expect to be done by the end of next weekend, but it could take > me over thanksgiving. Cool. > 1) Linear > 2) Shuffle (re-randomize on repeat) If we're talking about what happens when shuffle is checked; clearly, I think it should shuffle. This means playing all the songs in a random order until all songs have been played. If repeat is checked, then at that point a new random order is computed and the songs played through again. If repeat is not checked, playback should stop. Right? > Coming from the C++ tradition, I plan to implement these as a class > heirarchy (methods for get_next() and get_previous()). Which one is > instantiated will be up to a GConf option, Well, if you wanted to do this with multiple objects like this, you could break all the core forward/next logic out into separate objects from RBShellPlayer. There would be RBSimplePlayController which would just get the next/previous entry from the entryview, and a RBShufflePlayController. Repeat would be simple logic inside both of them. > but I'll leave the UI up to > you guys. ;) I'll probably attach the object to the player but give it a > reference to the entry-view and let it define callbacks. I think the player should be instantiating and driving the object. I'm not sure where you're going with the GConf stuff; does anyone out there really want a purely random mode, or even a random weighted by rating or play count?
This is a digitally signed message part