commit 25a2a33246547d3e54986bc4db39f968df06ceb5
parent 41ca53ba6ef8202f9e9eaf4d799ef9ee5ff653e3
Author: Matt Demanett <matt@demanett.net>
Date: Mon, 27 Sep 2021 23:44:44 -0400
Rack2: add nightmode support for modules with displays.
Diffstat:
8 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/src/Blank3.cpp b/src/Blank3.cpp
@@ -69,6 +69,7 @@ struct Blank3Display : OpaqueWidget {
nvgText(args.vg, 0, 0, _text, NULL);
}
else {
+ nvgGlobalTint(args.vg, color::WHITE);
nvgFillColor(args.vg, bgTextColor);
nvgText(args.vg, 0, 0, _text, NULL);
if (level > 0.0001f) {
diff --git a/src/Blank6.cpp b/src/Blank6.cpp
@@ -69,6 +69,7 @@ struct Blank6Display : OpaqueWidget {
nvgText(args.vg, 0, 0, _text, NULL);
}
else {
+ nvgGlobalTint(args.vg, color::WHITE);
nvgFillColor(args.vg, bgTextColor);
nvgText(args.vg, 0, 0, _text, NULL);
if (level > 0.0001f) {
diff --git a/src/Mono.cpp b/src/Mono.cpp
@@ -65,6 +65,7 @@ struct MonoWidget : BGModuleWidget {
void draw(const DrawArgs& args) override {
nvgSave(args.vg);
+ nvgGlobalTint(args.vg, color::WHITE);
for (int i = 0; i < _module->maxChannels; ++i) {
nvgBeginPath(args.vg);
if (!_module || i >= _module->_activeChannels) {
@@ -112,6 +113,7 @@ struct MonoWidget : BGModuleWidget {
}
nvgSave(args.vg);
+ nvgGlobalTint(args.vg, color::WHITE);
for (int i = 0; i < 35; i += 5) {
const Level& l = _levels.at(i / 5);
diff --git a/src/Pressor.cpp b/src/Pressor.cpp
@@ -219,6 +219,7 @@ struct PressorWidget : BGModuleWidget {
}
nvgSave(args.vg);
+ nvgGlobalTint(args.vg, color::WHITE);
for (int i = 0; i < 80; i += 5) {
const Level& l = _levels.at(i / 5);
diff --git a/src/Reftone.cpp b/src/Reftone.cpp
@@ -131,6 +131,8 @@ void ReftoneDisplay::draw(const DrawArgs& args) {
}
}
+ nvgSave(args.vg);
+ nvgGlobalTint(args.vg, color::WHITE);
drawBackground(args);
if (sharpFlat) {
drawText(args, pitch, 3, 20, 28);
@@ -142,6 +144,7 @@ void ReftoneDisplay::draw(const DrawArgs& args) {
}
drawCenteredText(args, fine.c_str(), 32.5, 14);
drawCenteredText(args, frequency.c_str(), 45, 14);
+ nvgRestore(args.vg);
}
void ReftoneDisplay::drawBackground(const DrawArgs& args) {
diff --git a/src/VU.cpp b/src/VU.cpp
@@ -89,6 +89,7 @@ struct VUDisplay : OpaqueWidget {
}
nvgSave(args.vg);
+ nvgGlobalTint(args.vg, color::WHITE);
for (int i = 0; i < 180; i += 5) {
const Level& l = _levels.at(i / 5);
diff --git a/src/Walk2.cpp b/src/Walk2.cpp
@@ -228,8 +228,9 @@ struct Walk2Display : TransparentWidget {
void draw(const DrawArgs& args) override {
float strokeWidth = std::max(1.0f, 3.0f - getZoom());
- drawBackground(args);
nvgSave(args.vg);
+ nvgGlobalTint(args.vg, color::WHITE);
+ drawBackground(args);
nvgScissor(args.vg, _insetAround, _insetAround, _drawSize.x / 2, _drawSize.y / 2);
if (_module && _module->_zoomOut) {
nvgScale(args.vg, 0.5f, 0.5f);
diff --git a/src/analyzer_base.cpp b/src/analyzer_base.cpp
@@ -474,8 +474,6 @@ void AnalyzerDisplay::draw(const DrawArgs& args) {
rangeMaxHz = 0.5f * APP->engine->getSampleRate();
}
- drawBackground(args);
-
float strokeWidth = std::max(1.0f, 3.0f - getZoom());
if (frequencyPlot == LINEAR_FP) {
_xAxisLogFactor = 1.0f;
@@ -487,6 +485,8 @@ void AnalyzerDisplay::draw(const DrawArgs& args) {
}
nvgSave(args.vg);
+ nvgGlobalTint(args.vg, color::WHITE);
+ drawBackground(args);
nvgScissor(args.vg, _insetAround, _insetAround, _size.x - _insetAround, _size.y - _insetAround);
if (_module) {
drawHeader(args, rangeMinHz, rangeMaxHz);