This looks better. Could you update your proposed timeline to reflect 
the changes?

On 03/31/2017 02:21 PM, Anast Gramm wrote:
> On Fri, Mar 31, 2017 at 06:59:48PM +0300, Anast Gramm wrote:
>> Hello, I wrote a more detailed plan for those two features you metioned for 
>> the project
>> scope. I will send it soon after some polishing.
> here it is (also in pdf below)
>
> 1 Nested Crates
> ===============
>
>   A preview for the nested crates is included. Tree like view. (If you don't 
> listen
>   to the Jazz/Trance sub-genre of Dub, you should!! :D )
>
>   The following is derived by the comments on launchpad and my thoughts
>   on them.
>
>
> 1.1 Overview
> ~~~~~~~~~~~~
>
> 1.1.1 What can a crate contain?
> -------------------------------
>
>   A crate can contain the following:
>   - Another crate (smart or not)
>   - Songs
>
>
> 1.1.2 Can a song be in multiple crates?
> ---------------------------------------
>
>   Yes.
>
>
> 1.1.3 What happens when I click on a crate
> ------------------------------------------
>
>   Recursively lists all the songs that exist in the crate or the
>   subcrates that it contains. DISTINCT! (eliminates duplicate songs)
>
>   ["mixxx's unique selling point!"]
>
>
> ["mixxx's unique selling point!"]
> https://bugs.launchpad.net/mixxx/+bug/671632/comments/37
>
>
> 1.1.4 What happens when I drag&drop a crate into another one
> ------------------------------------------------------------
>
>   If the crate you drag is a parent crate to the one you drop it then
>   nothing happens. (or an error!)
>
>   Else the drag crate and everything that it contains become members of
>   the drop crate. (like moving files in a file system)
>
>
> 1.1.5 How do I insert a song to a multilevel crate
> --------------------------------------------------
>
>   You place the song to the crate you want it to become a member of. If
>   you have multiple levels, the above still holds. If a crate/song
>   belongs to a child, it belongs to the parent as well.
>
>
> 1.1.6 How many levels will be supported?
> ----------------------------------------
>
>   As many as the user wants.
>
>
> 1.1.7 What if I want two crates with different parents have the same name?
> --------------------------------------------------------------------------
>
>   Every crate will contain information about it's parent, so the
>   following can work:
>
>   Crate1/sameSubcrateName
>
>   Crate2/sameSubcrateName
>
>
> 1.2 Implementation
> ~~~~~~~~~~~~~~~~~~
>
>   Here are some first thoughts on the way the above will get
>   implemented.
>
>
> 1.2.1 Modifications
> -------------------
>
>   In order for crates to be able to hold both other crates and songs
>   some modifications need to be made in the database schema.
>
>   A new table with columns:
>    PARENT_ID  CHILD_ID
>   ---------------------
>    ...        ...
>
>   Here the CRATE_ID will be linked with other CRATE_ID's depending on
>   the parent/child state of those.
>
>   While populating this table checks will occur so that a crate can't be
>   it's own parent, or a child can't have his parent as a child etc.
>
>   The whole crate side of the database might need a revamp for this to
>   work efficiently and be expandable at the same time. I will look at it
>   in depth in time.
>
>
> 2 Search filter for Crates
> ==========================
>
>   Due to the nested crate's complexity I will work on search filters
>   first, while keeping in mind the future adjustments it might need in
>   order to work well with nested crates.
>
>
> 2.1 Overview
> ~~~~~~~~~~~~
>
> 2.1.1 What is the search filter for crates
> ------------------------------------------
>
>   Typing "crate:" in the search bar, will act like a filter listing
>   whatever any song within a crate named whatever comes after "crate:"
>   (fuzzy style). Like "artist:"
>
>
> 2.1.2 What about nested crates
> ------------------------------
>
>   Say you have a top level crate named (creatively) Crate1 with
>   subcrates and songs nested under it. Typing crate:Crate1 in the search
>   will list every song this crate contains and every subcrate's song as
>   well.
>
>
> 2.1.3 What about the same name subcrates we talked before
> ---------------------------------------------------------
>
>   Typing crate:sameSubcrateName will get you both the crates with the
>   same name. If you want your search to stay in one crate you have to
>   type it's parent crate (in case this is the same as well, you need the
>   full path)
>
>
> 2.2 Implementation
> ~~~~~~~~~~~~~~~~~~
>
>   Here I will make things work like the other filters, already existing
>   (artist: etc).
>
>   I believe this part will be not that hard to pull off.
>
>   I will have a more detailed plan for the implementation after the
>   community bonding period where I will read the whole code, and
>   understand it completely.
>

------------------------------------------------------------------------------
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

Reply via email to