@@ -55,7 +55,10 @@ struct Octave : Module { | |||||
struct OctaveButton : Widget { | struct OctaveButton : Widget { | ||||
int octave; | int octave; | ||||
void draw(const DrawArgs& args) override { | |||||
void drawLayer(const DrawArgs& args, int layer) override { | |||||
if (layer != 1) | |||||
return; | |||||
Vec c = box.size.div(2); | Vec c = box.size.div(2); | ||||
int activeOctave = 0; | int activeOctave = 0; | ||||
@@ -65,9 +68,6 @@ struct OctaveButton : Widget { | |||||
if (pq) | if (pq) | ||||
activeOctave = std::round(pq->getValue()); | activeOctave = std::round(pq->getValue()); | ||||
// Disable tinting when rack brightness is decreased | |||||
nvgGlobalTint(args.vg, color::WHITE); | |||||
if (activeOctave == octave) { | if (activeOctave == octave) { | ||||
// Enabled | // Enabled | ||||
nvgBeginPath(args.vg); | nvgBeginPath(args.vg); | ||||
@@ -124,13 +124,13 @@ struct QuantizerButton : OpaqueWidget { | |||||
int note; | int note; | ||||
Quantizer* module; | Quantizer* module; | ||||
void draw(const DrawArgs& args) override { | |||||
void drawLayer(const DrawArgs& args, int layer) override { | |||||
if (layer != 1) | |||||
return; | |||||
const float margin = mm2px(1.5); | const float margin = mm2px(1.5); | ||||
Rect r = box.zeroPos().grow(Vec(margin, margin / 2).neg()); | Rect r = box.zeroPos().grow(Vec(margin, margin / 2).neg()); | ||||
// Disable tinting when rack brightness is decreased | |||||
nvgGlobalTint(args.vg, color::WHITE); | |||||
nvgBeginPath(args.vg); | nvgBeginPath(args.vg); | ||||
nvgRect(args.vg, RECT_ARGS(r)); | nvgRect(args.vg, RECT_ARGS(r)); | ||||
if (module ? module->playingNotes[note] : (note == 0)) { | if (module ? module->playingNotes[note] : (note == 0)) { | ||||
@@ -297,12 +297,12 @@ struct ScopeDisplay : TransparentWidget { | |||||
nvgText(args.vg, pos.x + 58 * 2, pos.y, text.c_str(), NULL); | nvgText(args.vg, pos.x + 58 * 2, pos.y, text.c_str(), NULL); | ||||
} | } | ||||
void draw(const DrawArgs& args) override { | |||||
if (!module) | |||||
void drawLayer(const DrawArgs& args, int layer) override { | |||||
if (layer != 1) | |||||
return; | return; | ||||
// Disable tinting when rack brightness is decreased | |||||
nvgGlobalTint(args.vg, color::WHITE); | |||||
if (!module) | |||||
return; | |||||
float gainX = std::pow(2.f, std::round(module->params[Scope::X_SCALE_PARAM].getValue())) / 10.f; | float gainX = std::pow(2.f, std::round(module->params[Scope::X_SCALE_PARAM].getValue())) / 10.f; | ||||
float gainY = std::pow(2.f, std::round(module->params[Scope::Y_SCALE_PARAM].getValue())) / 10.f; | float gainY = std::pow(2.f, std::round(module->params[Scope::Y_SCALE_PARAM].getValue())) / 10.f; | ||||
@@ -210,9 +210,11 @@ struct VCA_1VUKnob : SliderKnob { | |||||
nvgRoundedRect(args.vg, 0, 0, box.size.x, box.size.y, 2.0); | nvgRoundedRect(args.vg, 0, 0, box.size.x, box.size.y, 2.0); | ||||
nvgFillColor(args.vg, nvgRGB(0, 0, 0)); | nvgFillColor(args.vg, nvgRGB(0, 0, 0)); | ||||
nvgFill(args.vg); | nvgFill(args.vg); | ||||
} | |||||
// Disable tinting when rack brightness is decreased | |||||
nvgGlobalTint(args.vg, color::WHITE); | |||||
void drawLayer(const DrawArgs& args, int layer) override { | |||||
if (layer != 1) | |||||
return; | |||||
const Vec margin = Vec(3, 3); | const Vec margin = Vec(3, 3); | ||||
Rect r = box.zeroPos().grow(margin.neg()); | Rect r = box.zeroPos().grow(margin.neg()); | ||||