Browse Source

Cleanup

Signed-off-by: falkTX <falktx@falktx.com>
tags/22.02
falkTX 3 years ago
parent
commit
b3d96ca6d0
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
1 changed files with 3 additions and 78 deletions
  1. +3
    -78
      plugins/ImpromptuModularDark/PanelTheme.cpp

+ 3
- 78
plugins/ImpromptuModularDark/PanelTheme.cpp View File

@@ -15,79 +15,7 @@ void loadThemeAndContrastFromDefault(int* panelTheme, float* panelContrast) {
} }




void createPanelThemeMenu(ui::Menu* menu, int* panelTheme, float* panelContrast, SvgPanel* mainPanel) {
struct PanelThemeItem : MenuItem {
int* panelTheme = NULL;
float* panelContrast = NULL;
SvgPanel* mainPanel;
Menu *createChildMenu() override {
struct PanelThemeDarkItem : MenuItem {
int* panelTheme = NULL;
SvgPanel* mainPanel;
void onAction(const event::Action &e) override {
*panelTheme ^= 0x1;
mainPanel->fb->dirty = true;
e.unconsume();
}
};

struct PanelContrastQuantity : Quantity {
float* panelContrast;
SvgPanel* mainPanel;
PanelContrastQuantity(float* _panelContrast, SvgPanel* _mainPanel) {
panelContrast = _panelContrast;
mainPanel = _mainPanel;
}
void setValue(float value) override {
*panelContrast = math::clamp(value, getMinValue(), getMaxValue());
mainPanel->fb->dirty = true;
}
float getValue() override {
return *panelContrast;
}
float getMinValue() override {return panelContrastMin;}
float getMaxValue() override {return panelContrastMax;}
float getDefaultValue() override {return panelContrastDefault;}
float getDisplayValue() override {return *panelContrast;}
std::string getDisplayValueString() override {
return string::f("%.1f", rescale(*panelContrast, getMinValue(), getMaxValue(), 0.0f, 100.0f));
}
void setDisplayValue(float displayValue) override {setValue(displayValue);}
std::string getLabel() override {return "Panel contrast";}
std::string getUnit() override {return "";}
};
struct PanelContrastSlider : ui::Slider {
PanelContrastSlider(float* panelContrast, SvgPanel* mainPanel) {
quantity = new PanelContrastQuantity(panelContrast, mainPanel);
}
~PanelContrastSlider() {
delete quantity;
}
};
Menu *menu = new Menu;
PanelThemeDarkItem *ptdItem = createMenuItem<PanelThemeDarkItem>("Dark", CHECKMARK(*panelTheme));
ptdItem->panelTheme = panelTheme;
ptdItem->mainPanel = mainPanel;
menu->addChild(ptdItem);
PanelContrastSlider *cSlider = new PanelContrastSlider(panelContrast, mainPanel);
cSlider->box.size.x = 200.0f;
menu->addChild(cSlider);

return menu;
}
};
PanelThemeItem *ptItem = createMenuItem<PanelThemeItem>("Panel theme", RIGHT_ARROW);
ptItem->panelTheme = panelTheme;
ptItem->panelContrast = panelContrast;
ptItem->mainPanel = mainPanel;
menu->addChild(ptItem);
}
void createPanelThemeMenu(ui::Menu*, int*, float*, SvgPanel*) {}




void PanelBaseWidget::draw(const DrawArgs& args) { void PanelBaseWidget::draw(const DrawArgs& args) {
@@ -97,10 +25,7 @@ void PanelBaseWidget::draw(const DrawArgs& args) {
baseColor = nvgRGB(*panelContrastSrc, *panelContrastSrc, *panelContrastSrc); baseColor = nvgRGB(*panelContrastSrc, *panelContrastSrc, *panelContrastSrc);
} }
else { else {
int themeDefault;
float contrastDefault;
loadThemeAndContrastFromDefault(&themeDefault, &contrastDefault);
baseColor = nvgRGB(contrastDefault, contrastDefault, contrastDefault);
baseColor = nvgRGB(panelContrastDefault, panelContrastDefault, panelContrastDefault);
} }
nvgFillColor(args.vg, baseColor); nvgFillColor(args.vg, baseColor);
nvgRect(args.vg, 0, 0, box.size.x, box.size.y); nvgRect(args.vg, 0, 0, box.size.x, box.size.y);
@@ -111,7 +36,7 @@ void PanelBaseWidget::draw(const DrawArgs& args) {


void InverterWidget::draw(const DrawArgs& args) { void InverterWidget::draw(const DrawArgs& args) {
TransparentWidget::draw(args); TransparentWidget::draw(args);
if (isDark(panelThemeSrc)) {
{
// nvgSave(args.vg); // nvgSave(args.vg);
nvgBeginPath(args.vg); nvgBeginPath(args.vg);
nvgFillColor(args.vg, SCHEME_WHITE);// this is the source, the current framebuffer is the dest nvgFillColor(args.vg, SCHEME_WHITE);// this is the source, the current framebuffer is the dest


Loading…
Cancel
Save