== Depends == * Future work: I want to set reasonable expectations for Ocarina 6 so that I don't have to spend a large amount of time coding before releasing something to the wild. This section will be a list of features that I want, but should be deferred to a future release so basic support can be coded. Hint: If feature B depends on A, implement A in 6.x and B in 6.x+1 - New default groups: (6.1) Unplayed tracks - Categories: (6.1) Use these to make "groups of groups" for better organization. Different categories can include Album, Artist and Genere dynamic groups in addition to user created groups (see below) The Artist, Album and Genre "tables" can be used to populate these categories. - User created song groups: (6.2) Basic add and remove features can be implemented using the Library and Banned Songs groups. This will give me a chance to test saving groups on a small scale before letting users create anything they want. - Save a user's playlist as a group: (6.2) - Library defragment: (6.1) Ocarina 6.0 will leave holes in the library when tracks are deleted, potentially leading to fragmentation and larger-than- needed file sizes. A "defragment" utility can be created to clean up unused slots. To help with fixing groups, a mapping of (old values) -> (new values) should be kept. - Fix track durations: (6.1) Some tracks in my library are tagged with the wrong duration, so fix them as they are played. - Track tag editor: (6.2) Make a pop-up window for editing the tags of a track. Be sure to update the library information and the on-disk file. - Album art: (6.1) - Playlist custom sorting: (6.1) Click column headers to choos sort order Keep a list of fields that the user has selected and place new fields in the front of this list. Use a recursive stable sort to do the sorting.