Hi Mixxx Developer,

do you have fun to test the bleeding edge of Mixxx? Joan, one of our GSoC
student, has just published his library redesign branch. It allows to find
and manage you tracks much faster and includes some cool unique ideas.
It is a real fun to work with it, check it out!

Any feedback, is very appreciated, especial if you are a skin artist, or
even a bit picker. ;-)

Joan has now one remaining full time week to iron out remaining edges.

For more details see his PR below.

Thank you,

Daniel

---------- Weitergeleitete Nachricht ----------
Von: "Joan" <notificati...@github.com>
Datum: 12.08.2016 12:57 nachm.
Betreff: [mixxxdj/mixxx] Library layout redesign (#991)
An: "mixxxdj/mixxx" <mi...@noreply.github.com>
Cc:

> Hello,
> during this summer I've been redesigning the Library GUI.
>
> This is a GSoC project and the complete info about the project can be
found here:
> http://www.mixxx.org/wiki/doku.php/library_layout_redesign
>
> A small list of the changes is:
>
> Now there can be one, two or more track table panes where the features
can show their tracks, info...
> In the MixxxLibraryFeature there's a new tree allowing the users to use
all the power from the SearchBar queries, it acts like a query helper.
> A new feature is added FoldersFeature, this feature shows the tracks
added into the Mixxx Library sorted by their folder.
> The sidebar is separated in a buttons sidebar (sidebar buttons) + tree
sidebar (sidebar expanded)
> Added a breadcrumb to allow visual feedback and not confuse the user
> Added this new library behavior to all officially skins (Shade, LateNight
and Deere).
>
> Here are some images of the new layout in the skins
>
> This PR is a continuation of #975
>
> ________________________________
> You can view, comment on, or merge this pull request online at:
>
>   https://github.com/mixxxdj/mixxx/pull/991
>
> Commit Summary
> Add suport for TreeItemModel in WLibrarySidebar
> Add generyc spliter CSS
> Add maximum size to LibrarySidebar
> Move analysis feature to Sidebar
> Add treeview to AutoDjFeature
> Fixed Segmentation fault in DlgAnalysis
> Fixed bug in AutoDj not handling multiple tables
> Added Library item in LibraryTree
> Fixed size in button bar
> Added icon suport in TreeItemModel
> Renamed pLibraryWidget and added getter
> Removed unnecessary pLibraryWidget from LibraryControl
> Added getActiveView function in Library
> Added setCurrent index in WBaseLibrary to avoid bugs
> Removed button bar from splitter
> Added new Library style to LateNight skin
> Added CSS to new Library Layout
> Added deleteLater to pane widgets and remove some debugs
> Remove some unnecesary code and set Margin to 0 by default in Wbuttonbar
> Remove unnecessary items in LateNight
> Added style to handle focus
> Add smart option to switch between panes
> Add visuals for focus change in pane
> Set data to wbuttonbar
> Add new LibraryPaneManager inherited class
> Remove switch from LibraryPaneManager
> Use new LibrarySidebarExpandedManager in library
> Added focus indicator on deere skin and more minimal in LateNight
> Add paneId parameter in bindPaneWidget function
> Add better focus engine
> Add feature click button to handle features
> Add hover code for feature click button
> Add forward declaration for fast compilation
> Fix treeitem model not accepting some drop events
> Add forward declaration and remove some debugs
> Add autoexpanding on hover in wbuttonbar
> Add drag move support for playlist feature
> Add new library layout to Shade skin
> Fixed bug with Analysis Feature not handling properly tables
> Rename LibrarySidebar to LibrarySidebarButtons
> Add support for 2.0 skins
> Add tabs to AutoDJ and style
> Add style to LateNight and remove commented coded
> Added QSS in LateNight and Deere skins
> Fix searchbox not working in Mixxx 2.0 skin
> Fix bug when loading a 2.0 skin from Mixxx 2.1
> Create WBreadCrumb class
> Fix wrong height in LateNight
> Add support from dropping targets from table to table
> Add focus change with Tab key
> Add LibraryFeatureFactory
> Added creator to factory
> Add new function to WBreadCrumb
> Fix compilation issue
> Finished getData function in WBreadCrumb
> Changed constructor in LibraryFeature adding the direct Library relation
> Remove includes to avoid recompiling unnecessary code
> Create WLibraryStack class
> Move Mixxx Library buttons to the SideBarExpanded
> Begin adding new Library direct Mapping
> Fix compilation issue in WLibraryStack
> Finish moving Mixxx Library controls to sidebar
> Fixed some bugs in Mixx Library controls
> Add slotSwitchToVie with feature pointer
> Fix Recording feature not working properly
> Fix some CSS issues with Library in LateNight
> Fix that pane was not taking in account Feature's search
> Finish recording feature moving to the SidebarExpanded
> Begin of createSidebar function implementation
> Avoid passing table to DlgAnalysis
> Fix compilation issues
> Fixed some connections failing and removed redundant code
> Remove unnecessary table from DlgHidden and DlgMissing
> Fixed nothing happening when selecting a track
> Remove track table from DlgAutoDJ
> Remove track table from Mixxx Library Feature
> Remove unnecessary function calls
> Fixed potential source of errors with m_featureFocus
> Remove duplicated code
> Renamed WBreadCrumb
> Add breadcrumb to LateNight skin and fix some style issues
> Convert dialogs from QWidgets to QFrames
> Performance improvements and allow to switch by pointer
> Add WLibraryBreadCrumb to LegacySkinParser
> Fix some bugs with connections
> Fix bug in browseFeature and begin experimenting breadcrumb
> Fix segmentation fault and remove unnecessary inheritance
> Rename SetLogFeature to HistoryFeature
> Add breadcrumb to analysis, and basePlaylist feature
> Add BreadCrumb to AutoDJ and fix CoverArt
> Fixed many crashes [Not building]
> Fixed WBaseLibrary not changing some times
> Fixed RecordingFeature segmentation fault
> Fix minor bugs
> Add bread crumb to more features
> Remove SwitchToView remains and finish recording breadcrumb
> Add BreadCrumb to Deere skin
> Fix some style issues in Deere skin
> Fixed issue with focus change
> Added focus change coments and a new function
> Last tweaks in trackModelChange
> Fixed many nullpointer issues and fixed not overriding some methods
> Fixed build not working
> Fixed not building
> Fixed not building
> Remove Bind Pane from LibraryFeature
> Fix minor issues with libraryPaneManager connections and RhythmBox
> Removed bindSidebarWidget function
> Remove unnecessary signals and added more QPointers
> Rename getViewName() and remove switchToView
> Fixed compilation issue
> Rename misspeled name
> Remove factory
> Fixed build and added Bread Crumb to shade skin
> Avoid moving focus to a hidden pane
> Add new WTrackTable behaviour
> Changed showTrackModel function [Not Building]
> Fixed not building
> Fixed missing and hidden tables not loading
> Rename slots to not being slots anymore and fix some bugs
> Fix AutoDJ sidebar
> Add LibraryFeature pointer in WBaseLibrary instead of QString
> Fix search in analysis feature
> Merge remote-tracking branch 'mixxxdj/master' into feature/libraryManager
> Fix changing playlist not working
> Force travis build
> Add multiple pane playlists view
> Added multipane view to crates
> Remove unnecessary featureName
> Fixed wrong focus connection
> Created Maintenance Feature
> Added new breadcrumb mode
> Finished Maintenance Feature
> Create TreeItemModel
> Tree created
> Add new header
> Fixed small issue with non capital letters
> Finish tree filter, still needs option to choose group by and coverarts
> Added custom ordering in LibraryTree
> Begin of cover art addition
> Finished cover art addition
> Finished Icons in tree
> Added track count in tree
> Add is null search query integrated with tree
> Fix wrong icon size in tree in some features
> Fix not building
> Fix wrong indentation
> MixxxLibraryFeature remove selection on search
> Add usefull functions in LibraryFeature to avoid coding
> Fix sorting problem when setting a new trackModel
> Fixed bug with HistoryFeature causing SIGSEGV
> Merge branch 'feature/libraryManager'
> Add locale aware compare in tree generation
> Add new "IS NULL" behavior
> Update tree on hidden tracks
> Avoid showing missing tracks
> Solve problem with headers and non ASCII characters
> Add new mini view scrollbar
> Remove unnecessary code in AutoDJ
> Separate in small functions create tracks tree
> Removed unnecessary code from Recording feature
> Removed loading unnecessarily track model
> Begin of scrollbar painter implementation
> Improve letter draw in paint event
> Added stringhelper class and added tests for string helper
> Improve painting function in MiniView ScrollBar
> Miniview sidebar fully working on WTrackTable
> Add scrollbar mini view to tree
> Add style to LateNight and Shade skins in new scrollbar
> Remove duplicated code
> Remove QPair
> New letters positioning algorithm
> Optimize interpol function
> Move function to right place
> Add number checking
> Add Slider overlapping scrollbar background
> Add style to scrollbars in official skins and add year support
> Fix some skin issues and add scrollbar scroll on click
> First steps with HistoryTreeModel
> Finish history tree creation, still needs to create a search query
> Begin of query creation and move BreadCrum creation to proper class
> Add support for multiple playlists in PlaylistTableModel
> Fix some precision issues and better naming
> Fix scrollbar go on click
> Remove day from History Tree model
> Add multiple list options from History feature
> Clean code and do better naming
> Fix crash due to right clicking to the empty space of AutoDJ
> Merged branch feature/libraryManager into feature/libraryTree
> Add history feature grouping by Year/Month
> Add necessary functions for compatibility with BasePlaylistFeature
> Fix include hierarchy to avoid unnecessary compilations
> Fix sort order in history tree
> Fix join with Previous
> Fix search starting and search cleared functions
> Force scrollbar in Sidebar Buttons
> Restore History Feature name
> Fix some unnecessary includes
> Add save sorting on search
> Save librarytree sort order accross restarts
> Fix icon in History Feature
> Avoid some pane switching issues due to collapsing and uncollapsing
> Create new color filter
> Fix compilation error
> Add 'getIconPath' to LibraryFeature
> Add support for filtered icons, still needs testing
> Add color change in Deere skin, fixed maintenance icon color
> Fix bug with icon color filter not working
> Add new breadcrumb with icon
> Fix bread crum in official skins
> Add LibraryIconsColor tag
> Fix bug in monocolor filter not working properly
> Fix bug when LibraryIconsColor was not set
> Add option to hide text in WButtonBar
> Add LibraryIcon to WPixmapStore
> Fix some issues with WButtonBar and hidden text
> Fix issue with scrollarea size
> Fix more issues with button bar
> Fix some issues with ImgSource pointers
> Begin creating new Folders item in Library Tree
> Fix double scrollbar again
> First steps with Folders in Library Tree
> Finish Library Folders query
> Add icon to Library Folder and fix some colors in maintenance icon
> Add Daniel's patch
> Fix small issues with tree model
> Add Tree Grouping option in Prefernces dialog
> Remove added Tree Grouping option in Preferences dialog
> Separate different source folders in Library Tree
> Add exact query matcher in SearchBox
> Fix some issues with queries (not working yet)
> Fix query not workin when selecting a tree Folder item
> Remove some antialiasing from icon
> Fix widget resizable and unnecessary border
> Add icon to Sidebar Expanded title
> Apply Daniel's patch 2
> Move folder's tree to it's own class
> Add LibraryFodler feature for browsing the Library items with folders
> Fix some bugs and coding style issues
> Added show all
> Center cross icon and add save icon
> Add drop down button
> First steps with saved queries
> Add new icons and fix issue when replacing a query with another
> Change icon size
> Save selection with TrackModel instead of WTrackTableView
> Add getPosition function to get the Playlist track position
> Fix selection on Playlist sorting
> Merge branch 'master'
> Fix broken function due to merge
> File Changes
> M build/depends.py (17)
> A res/images/library/ic_library_folder.png (0)
> A res/images/library/ic_library_maintenance.png (0)
> M res/mixxx.qrc (5)
> M res/skins/Deere/library.xml (76)
> M res/skins/Deere/skin.xml (3)
> M res/skins/Deere/style.qss (320)
> M res/skins/LateNight/library.xml (45)
> M res/skins/LateNight/skin.xml (1)
> M res/skins/LateNight/style.qss (209)
> M res/skins/Shade/skin.xml (1413)
> M res/skins/cross.png (0)
> A res/skins/cross_2.png (0)
> A res/skins/downArrow.png (0)
> A res/skins/save.png (0)
> M src/controllers/controlpickermenu.cpp (3)
> M src/library/analysisfeature.cpp (124)
> M src/library/analysisfeature.h (31)
> M src/library/autodj/autodjfeature.cpp (124)
> M src/library/autodj/autodjfeature.h (20)
> M src/library/autodj/dlgautodj.cpp (120)
> M src/library/autodj/dlgautodj.h (28)
> M src/library/autodj/dlgautodj.ui (186)
> M src/library/banshee/bansheefeature.cpp (33)
> M src/library/banshee/bansheefeature.h (11)
> M src/library/baseexternallibraryfeature.cpp (7)
> M src/library/baseexternallibraryfeature.h (6)
> M src/library/baseexternalplaylistmodel.h (1)
> M src/library/baseplaylistfeature.cpp (196)
> M src/library/baseplaylistfeature.h (38)
> M src/library/basesqltablemodel.cpp (28)
> M src/library/basesqltablemodel.h (18)
> M src/library/browse/browsefeature.cpp (109)
> M src/library/browse/browsefeature.h (19)
> M src/library/browse/foldertreemodel.cpp (8)
> M src/library/coverart.h (4)
> M src/library/cratefeature.cpp (150)
> M src/library/cratefeature.h (36)
> M src/library/dlganalysis.cpp (132)
> M src/library/dlganalysis.h (42)
> M src/library/dlganalysis.ui (139)
> M src/library/dlghidden.cpp (78)
> M src/library/dlghidden.h (21)
> M src/library/dlghidden.ui (127)
> M src/library/dlgmissing.cpp (75)
> M src/library/dlgmissing.h (21)
> M src/library/dlgmissing.ui (97)
> R src/library/historyfeature.cpp (247)
> A src/library/historyfeature.h (62)
> A src/library/historytreemodel.cpp (169)
> A src/library/historytreemodel.h (37)
> M src/library/itunes/itunesfeature.cpp (25)
> M src/library/itunes/itunesfeature.h (9)
> M src/library/library.cpp (507)
> M src/library/library.h (114)
> M src/library/librarycontrol.cpp (45)
> M src/library/librarycontrol.h (5)
> M src/library/libraryfeature.cpp (211)
> M src/library/libraryfeature.h (161)
> A src/library/libraryfoldermodel.cpp (179)
> A src/library/libraryfoldermodel.h (39)
> A src/library/libraryfoldersfeature.cpp (48)
> A src/library/libraryfoldersfeature.h (23)
> A src/library/librarypanemanager.cpp (182)
> A src/library/librarypanemanager.h (87)
> A src/library/librarysidebarexpandedmanager.cpp (23)
> A src/library/librarysidebarexpandedmanager.h (14)
> A src/library/librarytreemodel.cpp (304)
> A src/library/librarytreemodel.h (64)
> M src/library/libraryview.h (12)
> A src/library/maintenancefeature.cpp (185)
> A src/library/maintenancefeature.h (71)
> M src/library/mixxxlibraryfeature.cpp (183)
> M src/library/mixxxlibraryfeature.h (58)
> M src/library/playlistfeature.cpp (35)
> M src/library/playlistfeature.h (12)
> M src/library/playlisttablemodel.cpp (104)
> M src/library/playlisttablemodel.h (14)
> M src/library/recording/dlgrecording.cpp (85)
> M src/library/recording/dlgrecording.h (35)
> M src/library/recording/dlgrecording.ui (90)
> M src/library/recording/recordingfeature.cpp (92)
> M src/library/recording/recordingfeature.h (29)
> M src/library/rhythmbox/rhythmboxfeature.cpp (30)
> M src/library/rhythmbox/rhythmboxfeature.h (7)
> M src/library/searchquery.cpp (11)
> M src/library/searchquery.h (11)
> M src/library/searchqueryparser.cpp (43)
> M src/library/searchqueryparser.h (1)
> D src/library/setlogfeature.h (54)
> M src/library/sidebarmodel.cpp (2)
> M src/library/trackmodel.h (10)
> M src/library/traktor/traktorfeature.cpp (28)
> M src/library/traktor/traktorfeature.h (9)
> M src/library/treeitem.cpp (132)
> M src/library/treeitem.h (56)
> M src/library/treeitemmodel.cpp (128)
> M src/library/treeitemmodel.h (29)
> M src/mixer/basetrackplayer.cpp (7)
> M src/mixxx.cpp (3)
> M src/mixxx.h (1)
> M src/preferences/dialog/dlgprefwaveform.cpp (1)
> M src/skin/colorschemeparser.cpp (12)
> M src/skin/imgcolor.cpp (16)
> M src/skin/imgcolor.h (21)
> M src/skin/imginvert.h (2)
> M src/skin/imgloader.cpp (3)
> M src/skin/imgloader.h (3)
> M src/skin/imgsource.h (42)
> M src/skin/legacyskinparser.cpp (191)
> M src/skin/legacyskinparser.h (8)
> M src/skin/skinloader.cpp (2)
> M src/skin/skinloader.h (1)
> M src/test/searchqueryparsertest.cpp (9)
> A src/test/stringhelpertest.cpp (68)
> M src/util/dnd.h (1)
> A src/util/stringhelper.cpp (37)
> A src/util/stringhelper.h (12)
> A src/widget/wbaselibrary.cpp (84)
> A src/widget/wbaselibrary.h (59)
> A src/widget/wbuttonbar.cpp (41)
> A src/widget/wbuttonbar.h (25)
> A src/widget/wfeatureclickbutton.cpp (82)
> A src/widget/wfeatureclickbutton.h (49)
> M src/widget/wlibrary.cpp (77)
> M src/widget/wlibrary.h (20)
> A src/widget/wlibrarybreadcrumb.cpp (68)
> A src/widget/wlibrarybreadcrumb.h (40)
> M src/widget/wlibrarysidebar.cpp (66)
> M src/widget/wlibrarysidebar.h (11)
> A src/widget/wlibrarystack.cpp (69)
> A src/widget/wlibrarystack.h (34)
> M src/widget/wlibrarytableview.cpp (19)
> M src/widget/wlibrarytableview.h (6)
> M src/widget/wmainmenubar.cpp (10)
> A src/widget/wminiviewscrollbar.cpp (275)
> A src/widget/wminiviewscrollbar.h (64)
> M src/widget/wpixmapstore.cpp (36)
> M src/widget/wpixmapstore.h (8)
> M src/widget/wsearchlineedit.cpp (146)
> M src/widget/wsearchlineedit.h (27)
> M src/widget/wtracktableview.cpp (106)
> M src/widget/wtracktableview.h (9)
> A src/widget/wverticalscrollarea.cpp (28)
> A src/widget/wverticalscrollarea.h (17)
> Patch Links:
> https://github.com/mixxxdj/mixxx/pull/991.patch
> https://github.com/mixxxdj/mixxx/pull/991.diff
>
> —
> You are receiving this because you are subscribed to this thread.
> Reply to this email directly, view it on GitHub, or mute the thread.
------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. http://sdm.link/zohodev2dev
_______________________________________________
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