* Attempt to clean up some things * Add Makefile and plugins.cpp * Added modified res and src for Computerscare * Updated README.md and docs/LICENSES.md, fixed Makefile * Updated Makefile * Added PanelBorder to custom names, modified ComputerscareSVGPanel again * Updated Makefile * Modified dep.cpp for Computerscare dark mode * Attempt to prepare ComputerscareBlank for dark mode * [WIP] a janky fix for ComputerscareBlank dark mode, but logo disappeared! * [WIP] eureka * fix ComputerscareBlank for mark dode * Updated LICENSES.md * [WIP] patched modules so labels properly change colors, hopefully everything else still works as intended * adjust PatchSequencer font size * What does this option do? * tweaked colors, text boxes now change color for dark mode * minor upd to Computerscare and dep.cpp * Upd ComputerscareLaundrySoup (hopefully fixes plugin-validation) * Upd LaundrySoup again * Delete ComputerscareIso.cpp from Computerscare * rebase Computerscare to updated master branch * Upd Computerscare * Don't change object names in submodule source, instead define/undef in plugins.cpp * revert Computerscare due to lto build failuretags/24.04
| @@ -233,6 +233,10 @@ | |||||
| [submodule "plugins/DHE-Modules"] | [submodule "plugins/DHE-Modules"] | ||||
| path = plugins/DHE-Modules | path = plugins/DHE-Modules | ||||
| url = https://github.com/dhemery/DHE-Modules.git | url = https://github.com/dhemery/DHE-Modules.git | ||||
| [submodule "plugins/Computerscare"] | |||||
| path = plugins/Computerscare | |||||
| url = https://github.com/freddyz/computerscare-vcv-modules.git | |||||
| branch = v2.0.4 | |||||
| [submodule "plugins/CVfunk"] | [submodule "plugins/CVfunk"] | ||||
| path = plugins/CVfunk | path = plugins/CVfunk | ||||
| url = https://github.com/codygeary/CVfunk-Modules.git | |||||
| url = https://github.com/codygeary/CVfunk-Modules.git | |||||
| @@ -139,6 +139,7 @@ At the moment the following 3rd-party modules are provided: | |||||
| - [Catro/Modulo](https://github.com/catronomix/catro-modulo) | - [Catro/Modulo](https://github.com/catronomix/catro-modulo) | ||||
| - [cf](https://github.com/cfoulc/cf) | - [cf](https://github.com/cfoulc/cf) | ||||
| - [ChowDSP](https://github.com/jatinchowdhury18/ChowDSP-VCV) | - [ChowDSP](https://github.com/jatinchowdhury18/ChowDSP-VCV) | ||||
| - [Computerscare](https://github.com/freddyz/computerscare-vcv-modules) | |||||
| - [CVfunk](https://github.com/codygeary/CVfunk-Modules) | - [CVfunk](https://github.com/codygeary/CVfunk-Modules) | ||||
| - [dBiz](https://github.com/dBiz/dBiz) | - [dBiz](https://github.com/dBiz/dBiz) | ||||
| - [DHE Modules](https://github.com/dhemery/DHE-Modules) | - [DHE Modules](https://github.com/dhemery/DHE-Modules) | ||||
| @@ -33,6 +33,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | |||||
| | Catro/Modulo | BSD-3-Clause | | | | Catro/Modulo | BSD-3-Clause | | | ||||
| | cf | BSD-3-Clause | | | | cf | BSD-3-Clause | | | ||||
| | ChowDSP | GPL-3.0-or-later | | | | ChowDSP | GPL-3.0-or-later | | | ||||
| | Computerscare | BSD-3-Clause | | | |||||
| | CVfunk | MIT | | | | CVfunk | MIT | | | ||||
| | dBiz | GPL-3.0-or-later | | | | dBiz | GPL-3.0-or-later | | | ||||
| | DHE-Modules | MIT | | | | DHE-Modules | MIT | | | ||||
| @@ -158,6 +159,9 @@ Below is a list of artwork licenses from plugins | |||||
| | cf/VT323-Regular.ttf | OFL-1.1-no-RFN | | | | cf/VT323-Regular.ttf | OFL-1.1-no-RFN | | | ||||
| | ChowDSP/* | GPL-3.0-or-later | Same license as source code | | | ChowDSP/* | GPL-3.0-or-later | Same license as source code | | ||||
| | ChowDSP/fonts/RobotoCondensed-*.ttf | Apache-2.0 | | | | ChowDSP/fonts/RobotoCondensed-*.ttf | Apache-2.0 | | | ||||
| | Computerscare/* | BSD-3-Clause | No artwork specific license provided | | |||||
| | Computerscare/Oswald-Regular.ttf | OFL-1.1 | | | |||||
| | Computerscare/Segment7Standard.ttf | OFL-1.1-RFN | | | |||||
| | CVfunk/* | MIT | Same license as source code | | | CVfunk/* | MIT | Same license as source code | | ||||
| | dBiz/* | CC-BY-NC-ND-4.0 | | | | dBiz/* | CC-BY-NC-ND-4.0 | | | ||||
| | dBiz/DejaVuSansMono.ttf | Bitstream-Vera | | | | dBiz/DejaVuSansMono.ttf | Bitstream-Vera | | | ||||
| @@ -0,0 +1 @@ | |||||
| Subproject commit d460bd226ab7b132fc4dfe14c5f359d7bbf007b7 | |||||
| @@ -645,6 +645,14 @@ PLUGIN_FILES += $(filter-out cf/src/plugin.cpp,$(wildcard cf/src/*.cpp)) | |||||
| # modules/types which are present in other plugins | # modules/types which are present in other plugins | ||||
| CF_CUSTOM = $(DRWAV) | CF_CUSTOM = $(DRWAV) | ||||
| # -------------------------------------------------------------- | |||||
| # Computerscare | |||||
| PLUGIN_FILES += $(filter-out Computerscare/src/Computerscare.cpp Computerscare/src/test.cpp,$(wildcard Computerscare/src/*.cpp)) | |||||
| # modules/types which are present in other plugins | |||||
| COMPUTERSCARE_CUSTOM = Quantizer PanelBorder | |||||
| # -------------------------------------------------------------- | # -------------------------------------------------------------- | ||||
| # CVfunk | # CVfunk | ||||
| @@ -2207,6 +2215,13 @@ $(BUILD_DIR)/cf/src/%.cpp.o: cf/src/%.cpp | |||||
| -DpluginInstance=pluginInstance__cf \ | -DpluginInstance=pluginInstance__cf \ | ||||
| -Wno-misleading-indentation | -Wno-misleading-indentation | ||||
| $(BUILD_DIR)/Computerscare/src/%.cpp.o: Computerscare/src/%.cpp | |||||
| -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | |||||
| @echo "Compiling $<" | |||||
| $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ | |||||
| $(foreach m,$(COMPUTERSCARE_CUSTOM),$(call custom_module_names,$(m),Computerscare)) \ | |||||
| -DpluginInstance=pluginInstance__Computerscare | |||||
| $(BUILD_DIR)/CVfunk/src/%.cpp.o: CVfunk/src/%.cpp | $(BUILD_DIR)/CVfunk/src/%.cpp.o: CVfunk/src/%.cpp | ||||
| -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | ||||
| @echo "Compiling $<" | @echo "Compiling $<" | ||||
| @@ -311,6 +311,9 @@ extern Model* modelTestVCF; | |||||
| #include "ChowDSP/src/plugin.cpp" | #include "ChowDSP/src/plugin.cpp" | ||||
| #undef init | #undef init | ||||
| // Computerscare | |||||
| #include "Computerscare/src/Computerscare.hpp" | |||||
| // dBiz | // dBiz | ||||
| #define DarkDefaultItem dBizDarkDefaultItem | #define DarkDefaultItem dBizDarkDefaultItem | ||||
| #define OrangeLight dBizOrangeLight | #define OrangeLight dBizOrangeLight | ||||
| @@ -866,6 +869,7 @@ Plugin* pluginInstance__BogaudioModules; | |||||
| Plugin* pluginInstance__CatroModulo; | Plugin* pluginInstance__CatroModulo; | ||||
| Plugin* pluginInstance__cf; | Plugin* pluginInstance__cf; | ||||
| Plugin* pluginInstance__ChowDSP; | Plugin* pluginInstance__ChowDSP; | ||||
| Plugin* pluginInstance__Computerscare; | |||||
| Plugin* pluginInstance__CVfunk; | Plugin* pluginInstance__CVfunk; | ||||
| Plugin* pluginInstance__dBiz; | Plugin* pluginInstance__dBiz; | ||||
| Plugin* pluginInstance__DHE; | Plugin* pluginInstance__DHE; | ||||
| @@ -1833,6 +1837,34 @@ static void initStatic__ChowDSP() | |||||
| } | } | ||||
| } | } | ||||
| static void initStatic__Computerscare() | |||||
| { | |||||
| Plugin* const p = new Plugin; | |||||
| pluginInstance__Computerscare = p; | |||||
| const StaticPluginLoader spl(p, "Computerscare"); | |||||
| if (spl.ok()) | |||||
| { | |||||
| p->addModel(modelComputerscarePatchSequencer); | |||||
| p->addModel(modelComputerscareDebug); | |||||
| p->addModel(modelComputerscareLaundrySoup); | |||||
| p->addModel(modelComputerscareILoveCookies); | |||||
| p->addModel(modelComputerscareOhPeas); | |||||
| p->addModel(modelComputerscareHorseADoodleDoo); | |||||
| p->addModel(modelComputerscareKnolyPobs); | |||||
| p->addModel(modelComputerscareBolyPuttons); | |||||
| p->addModel(modelComputerscareRolyPouter); | |||||
| p->addModel(modelComputerscareSolyPequencer); | |||||
| p->addModel(modelComputerscareTolyPools); | |||||
| p->addModel(modelComputerscareMolyPatrix); | |||||
| p->addModel(modelComputerscareGolyPenerator); | |||||
| p->addModel(modelComputerscareFolyPace); | |||||
| p->addModel(modelComputerscareStolyFickPigure); | |||||
| p->addModel(modelComputerscareBlank); | |||||
| p->addModel(modelComputerscareBlankExpander); | |||||
| } | |||||
| } | |||||
| static void initStatic__CVfunk() | static void initStatic__CVfunk() | ||||
| { | { | ||||
| Plugin* const p = new Plugin; | Plugin* const p = new Plugin; | ||||
| @@ -3252,6 +3284,7 @@ void initStaticPlugins() | |||||
| initStatic__CatroModulo(); | initStatic__CatroModulo(); | ||||
| initStatic__cf(); | initStatic__cf(); | ||||
| initStatic__ChowDSP(); | initStatic__ChowDSP(); | ||||
| initStatic__Computerscare(); | |||||
| initStatic__CVfunk(); | initStatic__CVfunk(); | ||||
| initStatic__dBiz(); | initStatic__dBiz(); | ||||
| initStatic__DHE(); | initStatic__DHE(); | ||||
| @@ -62,6 +62,7 @@ enum DarkMode { | |||||
| kModeAudibleInstruments, | kModeAudibleInstruments, | ||||
| kModeBidoo, | kModeBidoo, | ||||
| kModeCf, | kModeCf, | ||||
| kModeComputerscare, | |||||
| kModeDHE, | kModeDHE, | ||||
| kModeDrumKit, | kModeDrumKit, | ||||
| kModeESeries, | kModeESeries, | ||||
| @@ -214,6 +215,29 @@ static const struct { | |||||
| { kModeCf, "/cf/res/SUB.svg", {}, -1 }, | { kModeCf, "/cf/res/SUB.svg", {}, -1 }, | ||||
| { kModeCf, "/cf/res/trSEQ.svg", {}, -1 }, | { kModeCf, "/cf/res/trSEQ.svg", {}, -1 }, | ||||
| { kModeCf, "/cf/res/VARIABLE.svg", {}, -1 }, | { kModeCf, "/cf/res/VARIABLE.svg", {}, -1 }, | ||||
| // BSD-3 Clause | |||||
| { kModeComputerscare, "/Computerscare/res/computerscare-clk-text.svg", {}, -1}, | |||||
| { kModeComputerscare, "/Computerscare/res/vertical-x-1.svg", {}, -1}, | |||||
| { kModeComputerscare, "/Computerscare/res/vertical-x-2.svg", {}, -1}, | |||||
| { kModeComputerscare, "/Computerscare/res/vertical-x-3.svg", {}, -1}, | |||||
| { kModeComputerscare, "/Computerscare/res/computerscare-logo-normal.svg", {}, -1}, | |||||
| { kModeComputerscare, "/Computerscare/res/computerscare-logo-sad.svg", {}, -1}, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareDebugPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareOhPeasPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareFolyPacePanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareKnolyPobsPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareTolyPoolsPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareMolyPatrixPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareRolyPouterPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareBolyPuttonsPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareCustomBlankPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareLaundrySoupPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareILoveCookiesPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareGolyPeneratorPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareSolyPequencerPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscarePatchSequencerPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareHorseADoodleDooPanel.svg", {}, -1 }, | |||||
| { kModeComputerscare, "/Computerscare/res/ComputerscareCustomBlankExpanderPanel.svg", {}, -1 }, | |||||
| // MIT | // MIT | ||||
| { kModeDHE, "/DHE-Modules/svg/blossom.svg", {}, -1 }, | { kModeDHE, "/DHE-Modules/svg/blossom.svg", {}, -1 }, | ||||
| { kModeDHE, "/DHE-Modules/svg/booster-stage.svg", {}, -1 }, | { kModeDHE, "/DHE-Modules/svg/booster-stage.svg", {}, -1 }, | ||||
| @@ -664,6 +688,15 @@ bool invertPaintForDarkMode(const DarkMode mode, NSVGshape* const shape, NSVGpai | |||||
| } | } | ||||
| } | } | ||||
| break; | break; | ||||
| // Special case for Computerscare | |||||
| case kModeComputerscare: | |||||
| switch (paint.color) | |||||
| { | |||||
| // Just make vertical-x-* visible | |||||
| case 0xffa6c924: | |||||
| return false; | |||||
| } | |||||
| break; | |||||
| // Special case for DHE, mark things darker instead of inverting | // Special case for DHE, mark things darker instead of inverting | ||||
| case kModeDHE: | case kModeDHE: | ||||
| paint.color = darkerColor(paint.color); | paint.color = darkerColor(paint.color); | ||||