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
[email protected]
https://lists.sourceforge.net/lists/listinfo/mixxx-devel