Juk: Difference between revisions
Line 39: | Line 39: | ||
** '''done''' Move TrackSequenceManager away from PlaylistItem | ** '''done''' Move TrackSequenceManager away from PlaylistItem | ||
*** reimplement random stuff without the playlistsearch stuff | *** reimplement random stuff without the playlistsearch stuff | ||
** Find other classes that use PlaylistItem | ** '''done''' Find other classes that use PlaylistItem | ||
** Port everything to use Playlist directly | ** '''done''' Port everything to use Playlist directly | ||
** '''done''' Nuke createItem | ** '''done''' Nuke createItem | ||
*** Move file scanning to playlistcollection or something | *** Move file scanning to playlistcollection or something | ||
* '''done''' Nuke setPlaying | * '''done''' Nuke setPlaying | ||
* Singleton history playlist | * Singleton history/upcoming playlist | ||
This is being done in the [http://quickgit.kde.org/index.php?p=juk.git&a=shortlog&h=refs/heads/nokde3 '''nokde3'''] branch in git. | This is being done in the [http://quickgit.kde.org/index.php?p=juk.git&a=shortlog&h=refs/heads/nokde3 '''nokde3'''] branch in git. |
Revision as of 02:25, 21 October 2012
JuK is a lightweight music organizer and player.
If you want to do something, please talk with mpyne or sandsmark on IRC (in the #kde-multimedia channel on Freenode).
It is in git: http://quickgit.kde.org/index.php?p=juk.git&a=summary
TODO/Wishlist
- Port away from k3listview (see below).
- CD playback.
- Clickable items in playlists (like the clickable on currently playing item, only for all items in list).
- Visualization (yes, I want bling).
- Mobile device synchronization.
- QML/mobile interface.
- Settings dialog
- "Stop after current song"
- Fadeout on stop
- Port from libtunepimp to libmusicbrainz
- Duplicate cleaning
- Various Artist albums
- Right click -> properties
Porting plan
Because of JuK's architecture, it's more of a partial rewrite, but whatever.
- done Move stuff around so it's more logically organized.
- done Make Playlist not depend on K3ListView.
- done Make the playlist subclasses not depend on k3listview.
- done Make a custom QHeaderView
- Sorting
- Port PlaylistBox and TrackPickerDialog away from K3ListView.
- Move view functionality commented out from playlist class into custom qlistview class.
- Use a proxymodel for the search, drop the PlaylistSearch class.
- PlaylistSearch is often used for setting stuff for an entire album/artist, rather use specialized functions (QModelIndexList getAlbum/getArtist or something) in Playlist
- Remove PlaylistInterface class in favour of plain old QObject signals and slots.
- Store just PlaylistItem::Datas in the Playlist, drop PlaylistItem.
- done Move TrackSequenceManager away from PlaylistItem
- reimplement random stuff without the playlistsearch stuff
- done Find other classes that use PlaylistItem
- done Port everything to use Playlist directly
- done Nuke createItem
- Move file scanning to playlistcollection or something
- done Move TrackSequenceManager away from PlaylistItem
- done Nuke setPlaying
- Singleton history/upcoming playlist
This is being done in the nokde3 branch in git.