Unify stack order of elements in the waveform display
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mixxx |
Fix Released
|
Low
|
Thomas Vincent |
Bug Description
Currently sometimes the markers are drawn behind the waveform in some display modes.
An element with greater stack order is always in front of an element with a lower stack order.
Current z-index order (example):
Waveform 1 2
Cue 2 5
Hotcue 3 4
Loop-Marker 4 2
Loop overlay 5 1
The order is even different for Filtered GL and GLSL
We may return to a pre-1.11 like order:
*Move loop overlay move it to z-index 1 (basically making it an "underlay")
Interested to hear other opinions here.
Since the new waveforms leave a lot of room in between the beats, i found a loop "underlay"
pretty useful and having displayed the waveform clearly is a big plus imo.
*Move waveform to z-index 2
*Move Loop-Marker to z-index 3
*Move Hotcues to z-index 4
*Move Cues to z-index 5
*Apply alpha value from waveform overview`s loop overlay to all other display types, currently it is different too
*Alternatively swap z-order 1 and 2 while applying multiply/
PS. The waveform overview stack order is just fine.
Related branches
- RJ Skerry-Ryan: Pending requested
-
Diff: 3454 lines (+1509/-1139)39 files modifiedmixxx/build/depends.py (+12/-3)
mixxx/res/skins/Deere1280x800-WXGA/skin.xml (+10/-448)
mixxx/src/engine/cuecontrol.cpp (+0/-2)
mixxx/src/engine/cuecontrol.h (+2/-0)
mixxx/src/skin/legacyskinparser.cpp (+2/-3)
mixxx/src/waveform/renderers/glslwaveformrenderersignal.cpp (+21/-7)
mixxx/src/waveform/renderers/glslwaveformrenderersignal.h (+4/-8)
mixxx/src/waveform/renderers/glwaveformrendererfilteredsignal.cpp (+177/-324)
mixxx/src/waveform/renderers/glwaveformrendererfilteredsignal.h (+4/-34)
mixxx/src/waveform/renderers/glwaveformrenderersimplesignal.cpp (+120/-185)
mixxx/src/waveform/renderers/glwaveformrenderersimplesignal.h (+4/-21)
mixxx/src/waveform/renderers/qtwaveformrendererfilteredsignal.cpp (+346/-0)
mixxx/src/waveform/renderers/qtwaveformrendererfilteredsignal.h (+36/-0)
mixxx/src/waveform/renderers/qtwaveformrenderersimplesignal.cpp (+223/-0)
mixxx/src/waveform/renderers/qtwaveformrenderersimplesignal.h (+31/-0)
mixxx/src/waveform/renderers/waveformmark.cpp (+0/-4)
mixxx/src/waveform/renderers/waveformrendererendoftrack.cpp (+4/-0)
mixxx/src/waveform/renderers/waveformrendererfilteredsignal.cpp (+107/-34)
mixxx/src/waveform/renderers/waveformrendererfilteredsignal.h (+7/-12)
mixxx/src/waveform/renderers/waveformrenderersignalbase.cpp (+83/-0)
mixxx/src/waveform/renderers/waveformrenderersignalbase.h (+38/-0)
mixxx/src/waveform/renderers/waveformrendermark.cpp (+43/-5)
mixxx/src/waveform/renderers/waveformrendermark.h (+1/-0)
mixxx/src/waveform/renderers/waveformwidgetrenderer.cpp (+9/-3)
mixxx/src/waveform/renderers/waveformwidgetrenderer.h (+1/-1)
mixxx/src/waveform/waveformwidgetfactory.cpp (+31/-23)
mixxx/src/waveform/widgets/glsimplewaveformwidget.cpp (+2/-6)
mixxx/src/waveform/widgets/glsimplewaveformwidget.h (+0/-3)
mixxx/src/waveform/widgets/glslwaveformwidget.cpp (+4/-4)
mixxx/src/waveform/widgets/glslwaveformwidget.h (+1/-1)
mixxx/src/waveform/widgets/glwaveformwidget.cpp (+3/-2)
mixxx/src/waveform/widgets/qtsimplewaveformwidget.cpp (+57/-0)
mixxx/src/waveform/widgets/qtsimplewaveformwidget.h (+30/-0)
mixxx/src/waveform/widgets/qtwaveformwidget.cpp (+56/-0)
mixxx/src/waveform/widgets/qtwaveformwidget.h (+30/-0)
mixxx/src/waveform/widgets/softwarewaveformwidget.cpp (+3/-2)
mixxx/src/waveform/widgets/softwarewaveformwidget.h (+1/-1)
mixxx/src/waveform/widgets/waveformwidgettype.h (+3/-1)
mixxx/src/widget/wwaveformviewer.cpp (+3/-2)
Changed in mixxx: | |
status: | Fix Committed → In Progress |
Changed in mixxx: | |
status: | In Progress → Fix Committed |
Changed in mixxx: | |
status: | Fix Committed → Fix Released |
I unified order in waveform- 2.0_pure- gl branch but I did't see thins report before doing it. So I guess I need to check and make it compliant to what is demanded here. Should be out soon :)