Hello, I am gramanas from GSoC 2017. I've implemeted the Crate Filter and it is already merged in master. I hope you find it useful. Next on the list are the Nested Crates. Here I would like to present the logic begind them and get some feedback from the list.
* Nested crates means a tree structure of the crate system, like a file system. Consider the following example: - Metal - Progressive - Instrumental - Alternative - Rock - Instrumental This is a nice way to organise the tracks in these two major categories (metal/rock) Obviously Rock/Instrumentals are different songs that Metal/Progressive/Instrumentals and they exist in a different crate, but with the same name. To solve this issue I am thinking of naming each crate like a link in a file system. For example the crates above would have a name like this in the DB: /Metal /Metal/Progressive /Metal/Progressive/Instrumental /Metal/Alternative /Rock /Rock/Instrumental The CrateTreeItemModel will take care of showing only the last word of the name. The crate: filter would work like this: ** If you want to see all instrumentals you type crate: instrumental and you get both /Metal/Progressive/Instrumental and /Rock/Instrumental. ** If you want only Metal instrumental songs you type crate: metal crate: instrumental and you get only /Metal/Progressive/Instrumental songs. ---------- * Each crate can contain other crates AND tracks. This means that in the example above if you have songs inside the Progressive crate, there is no way to see them alone, you have to see them with the nested instrumentals as well. This is because when you want to see what progressive songs you have you don't care if they are instrumental or not. If you care, you should have another crate inside Progressive that's for the songs that have lyrics. ---------- * A crate can't contain itself nor his parent, or his parent's parent etc. Obviously.. I am thinking this can be enforced by the database, were there will be a table | ParentID | ChildID | with the relationship of the crates. Please comment on my ideas! Cheers! ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Get Mixxx, the #1 Free MP3 DJ Mixing software Today http://mixxx.org Mixxx-devel mailing list Mixxx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mixxx-devel