summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt10
-rw-r--r--build/depends.py8
-rw-r--r--res/controllers/.eslintrc.json2
-rw-r--r--res/controllers/Roland_DJ-505-scripts.js56
-rw-r--r--res/controllers/midi-components-0.0.js77
-rw-r--r--res/schema.xml26
-rw-r--r--res/skins/Deere/hotcue_button.xml4
-rw-r--r--res/skins/Deere/style.qss123
-rw-r--r--res/skins/LateNight/button_hotcue.xml4
-rw-r--r--res/skins/LateNight/style.qss52
-rw-r--r--res/skins/Shade/btn/btn_hotcue_1.pngbin386 -> 3173 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_1_down.pngbin385 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_1_over.pngbin592 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_1_overdown.pngbin594 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_2.pngbin392 -> 3711 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_2_down.pngbin392 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_2_over.pngbin3436 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_2_overdown.pngbin2265 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_3.pngbin397 -> 3582 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_3_down.pngbin397 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_3_over.pngbin3242 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_3_overdown.pngbin2271 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_4.pngbin389 -> 3504 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_4_down.pngbin388 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_4_over.pngbin3085 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_4_overdown.pngbin2160 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_5.pngbin201 -> 3723 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_5_down.pngbin201 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_5_over.pngbin204 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_5_overdown.pngbin208 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_6.pngbin202 -> 3593 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_6_down.pngbin202 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_6_over.pngbin205 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_6_overdown.pngbin209 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_7.pngbin203 -> 3473 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_7_down.pngbin202 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_7_over.pngbin206 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_7_overdown.pngbin210 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_8.pngbin196 -> 3581 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_8_down.pngbin195 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_8_over.pngbin601 -> 0 bytes
-rw-r--r--res/skins/Shade/btn/btn_hotcue_8_overdown.pngbin603 -> 0 bytes
-rw-r--r--res/skins/Shade/hotcue_button.xml10
-rw-r--r--res/skins/Shade/style.qss47
-rw-r--r--res/skins/Shade/style_dark.qss5
-rw-r--r--res/skins/Shade/style_summer_sunset.qss10
-rw-r--r--res/skins/Tango/button_hotcue_deck.xml4
-rw-r--r--res/skins/Tango/style.qss59
-rw-r--r--src/controllers/bulk/bulkcontroller.cpp14
-rw-r--r--src/controllers/bulk/bulkcontroller.h6
-rw-r--r--src/controllers/bulk/bulkenumerator.cpp8
-rw-r--r--src/controllers/bulk/bulkenumerator.h3
-rw-r--r--src/controllers/colorjsproxy.cpp36
-rw-r--r--src/controllers/colorjsproxy.h27
-rw-r--r--src/controllers/colormapper.cpp65
-rw-r--r--src/controllers/colormapper.h27
-rw-r--r--src/controllers/colormapperjsproxy.cpp46
-rw-r--r--src/controllers/colormapperjsproxy.h30
-rw-r--r--src/controllers/controller.cpp9
-rw-r--r--src/controllers/controller.h6
-rw-r--r--src/controllers/controllerengine.cpp12
-rw-r--r--src/controllers/controllerengine.h5
-rw-r--r--src/controllers/controllermanager.cpp8
-rw-r--r--src/controllers/hid/hidcontroller.cpp5
-rw-r--r--src/controllers/hid/hidcontroller.h2
-rw-r--r--src/controllers/hid/hidenumerator.cpp5
-rw-r--r--src/controllers/hid/hidenumerator.h3
-rw-r--r--src/controllers/midi/hss1394controller.cpp8
-rw-r--r--src/controllers/midi/hss1394controller.h5
-rw-r--r--src/controllers/midi/hss1394enumerator.cpp8
-rw-r--r--src/controllers/midi/hss1394enumerator.h3
-rw-r--r--src/controllers/midi/midicontroller.cpp4
-rw-r--r--src/controllers/midi/midicontroller.h2
-rw-r--r--src/controllers/midi/portmidicontroller.cpp11
-rw-r--r--src/controllers/midi/portmidicontroller.h7
-rw-r--r--src/controllers/midi/portmidienumerator.cpp12
-rw-r--r--src/controllers/midi/portmidienumerator.h3
-rw-r--r--src/database/mixxxdb.cpp2
-rw-r--r--src/engine/controls/cuecontrol.cpp131
-rw-r--r--src/engine/controls/cuecontrol.h13
-rw-r--r--src/library/dao/cuedao.cpp29
-rw-r--r--src/library/dlgtrackinfo.cpp251
-rw-r--r--src/library/dlgtrackinfo.h8
-rw-r--r--src/library/dlgtrackinfo.ui102
-rw-r--r--src/preferences/colorpalettesettings.cpp107
-rw-r--r--src/preferences/colorpalettesettings.h26
-rw-r--r--src/preferences/configobject.cpp81
-rw-r--r--src/preferences/configobject.h3
-rw-r--r--src/skin/skincontext.h15
-rw-r--r--src/test/colorconfig_test.cpp102
-rw-r--r--src/test/colorpalette_test.cpp30
-rw-r--r--src/test/controller_preset_validation_test.cpp9
-rw-r--r--src/test/controllerengine_test.cpp31
-rw-r--r--src/test/cue_test.cpp14
-rw-r--r--src/test/midicontrollertest.cpp6
-rw-r--r--src/test/portmidicontroller_test.cpp19
-rw-r--r--src/track/cue.cpp14
-rw-r--r--src/track/cue.h10
-rw-r--r--src/util/color/color.cpp2
-rw-r--r--src/util/color/color.h4
-rw-r--r--src/util/color/colorpalette.cpp55
-rw-r--r--src/util/color/colorpalette.h63
-rw-r--r--src/util/color/predefinedcolor.cpp10
-rw-r--r--src/util/color/predefinedcolor.h35
-rw-r--r--src/util/color/predefinedcolorsrepresentation.h41
-rw-r--r--src/util/color/predefinedcolorsset.h140
-rw-r--r--src/waveform/renderers/waveformrendermark.cpp7
-rw-r--r--src/waveform/renderers/waveformrendermark.h2
-rw-r--r--src/widget/wcolorpicker.cpp229
-rw-r--r--src/widget/wcolorpicker.h22
-rw-r--r--src/widget/wcolorpickeraction.cpp16
-rw-r--r--src/widget/wcolorpickeraction.h7
-rw-r--r--src/widget/wcuemenupopup.cpp16
-rw-r--r--src/widget/wcuemenupopup.h11
-rw-r--r--src/widget/woverview.cpp31
-rw-r--r--src/widget/woverview.h1
-rw-r--r--src/widget/wtracktableview.cpp80
-rw-r--r--src/widget/wtracktableview.h2
-rw-r--r--src/widget/wwidget.cpp28
-rw-r--r--src/widget/wwidget.h19
120 files changed, 1342 insertions, 1359 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index aa5fba2edf..6b9a320981 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -167,7 +167,8 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/control/controlproxy.cpp
src/control/controlpushbutton.cpp
src/control/controlttrotary.cpp
- src/controllers/colorjsproxy.cpp
+ src/controllers/colormapper.cpp
+ src/controllers/colormapperjsproxy.cpp
src/controllers/controller.cpp
src/controllers/controllerdebug.cpp
src/controllers/controllerengine.cpp
@@ -313,7 +314,6 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/errordialoghandler.cpp
src/library/analysisfeature.cpp
src/library/analysislibrarytablemodel.cpp
- src/library/trackloader.cpp
src/library/autodj/autodjfeature.cpp
src/library/autodj/autodjprocessor.cpp
src/library/autodj/dlgautodj.cpp
@@ -410,6 +410,7 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/library/tableitemdelegate.cpp
src/library/trackcollection.cpp
src/library/trackcollectionmanager.cpp
+ src/library/trackloader.cpp
src/library/traktor/traktorfeature.cpp
src/library/treeitem.cpp
src/library/treeitemmodel.cpp
@@ -476,6 +477,7 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/preferences/dialog/dlgprefwaveformdlg.ui
src/preferences/dlgpreferencepage.cpp
src/preferences/effectsettingsmodel.cpp
+ src/preferences/colorpalettesettings.cpp
src/preferences/replaygainsettings.cpp
src/preferences/settingsmanager.cpp
src/preferences/upgrade.cpp
@@ -538,7 +540,7 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/util/cache.cpp
src/util/cmdlineargs.cpp
src/util/color/color.cpp
- src/util/color/predefinedcolor.cpp
+ src/util/color/colorpalette.cpp
src/util/console.cpp
src/util/db/dbconnection.cpp
src/util/db/dbconnectionpool.cpp
@@ -926,6 +928,8 @@ add_executable(mixxx-test
src/test/broadcastsettings_test.cpp
src/test/cache_test.cpp
src/test/channelhandle_test.cpp
+ src/test/colorconfig_test.cpp
+ src/test/colorpalette_test.cpp
src/test/compatibility_test.cpp
src/test/configobject_test.cpp
src/test/controller_preset_validation_test.cpp
diff --git a/build/depends.py b/build/depends.py
index 4740b2c5c0..e13d2df5b3 100644
--- a/build/depends.py
+++ b/build/depends.py
@@ -790,6 +790,7 @@ class MixxxCore(Feature):
"src/preferences/effectsettingsmodel.cpp",
"src/preferences/broadcastprofile.cpp",
"src/preferences/upgrade.cpp",
+ "src/preferences/colorpalettesettings.cpp",
"src/preferences/dlgpreferencepage.cpp",
"src/effects/effectmanifest.cpp",
@@ -925,7 +926,8 @@ class MixxxCore(Feature):
"src/controllers/midi/midioutputhandler.cpp",
"src/controllers/softtakeover.cpp",
"src/controllers/keyboard/keyboardeventfilter.cpp",
- "src/controllers/colorjsproxy.cpp",
+ "src/controllers/colormapper.cpp",
+ "src/controllers/colormapperjsproxy.cpp",
"src/main.cpp",
"src/mixxx.cpp",
@@ -1283,6 +1285,7 @@ class MixxxCore(Feature):
"src/util/cache.cpp",
"src/util/console.cpp",
"src/util/color/color.cpp",
+ "src/util/color/colorpalette.cpp",
"src/util/db/dbconnection.cpp",
"src/util/db/dbconnectionpool.cpp",
"src/util/db/dbconnectionpooler.cpp",
@@ -1309,8 +1312,7 @@ class MixxxCore(Feature):
"src/util/desktophelper.cpp",
"src/util/widgetrendertimer.cpp",
"src/util/workerthread.cpp",
- "src/util/workerthreadscheduler.cpp",
- "src/util/color/predefinedcolor.cpp"
+ "src/util/workerthreadscheduler.cpp"
]
proto_args = {
diff --git a/res/controllers/.eslintrc.json b/res/controllers/.eslintrc.json
index a5f60376e3..b2687b106a 100644
--- a/res/controllers/.eslintrc.json
+++ b/res/controllers/.eslintrc.json
@@ -1,7 +1,7 @@
{
"globals": {
+ "ColorMapper": "readonly",
"_": "readonly",
- "color": "readonly",
"components": "readonly",
"engine": "readonly",
"midi": "readonly",
diff --git a/res/controllers/Roland_DJ-505-scripts.js b/res/controllers/Roland_DJ-505-scripts.js
index be2ddb4f77..ceee4d06b3 100644
--- a/res/controllers/Roland_DJ-505-scripts.js
+++ b/res/controllers/Roland_DJ-505-scripts.js
@@ -970,17 +970,24 @@ DJ505.PadColor = {
DIM_MODIFIER: 0x10,
};
-DJ505.PadColorMap = [
- DJ505.PadColor.OFF,
- DJ505.PadColor.RED,
- DJ505.PadColor.GREEN,
- DJ505.PadColor.BLUE,
- DJ505.PadColor.YELLOW,
- DJ505.PadColor.CELESTE,
- DJ505.PadColor.PURPLE,
- DJ505.PadColor.APRICOT,
- DJ505.PadColor.WHITE,
-];
+DJ505.PadColorMap = new ColorMapper({
+ "#CC0000": DJ505.PadColor.RED,
+ "#CC4400": DJ505.PadColor.CORAL,
+ "#CC8800": DJ505.PadColor.ORANGE,