Browse Source

added Easter egg to Elements' context menu

tags/v1.4.0
eggix 4 years ago
parent
commit
9c736d8379
1 changed files with 19 additions and 0 deletions
  1. +19
    -0
      src/Elements.cpp

+ 19
- 0
src/Elements.cpp View File

@@ -77,6 +77,7 @@ struct Elements : Module {

uint16_t reverb_buffer[32768] = {};
elements::Part* part;
bool easterEgg = false;

Elements() {
config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS);
@@ -232,6 +233,10 @@ struct Elements : Module {
void setModel(int model) {
part->set_resonator_model((elements::ResonatorModel)model);
}

void setEasterEgg() {
part->set_easter_egg(easterEgg);
}
};


@@ -247,6 +252,18 @@ struct ElementsModalItem : MenuItem {
}
};

struct ElementsEasterEggItem : MenuItem {
Elements* elements;
void onAction(const event::Action& e) override {
elements->easterEgg = !elements->easterEgg;
elements->setEasterEgg();
}
void step() override {
rightText = (elements->easterEgg) ? "✔" : "";
MenuItem::step();
}
};


struct ElementsWidget : ModuleWidget {
ElementsWidget(Elements* module) {
@@ -335,6 +352,8 @@ struct ElementsWidget : ModuleWidget {
menu->addChild(construct<ElementsModalItem>(&MenuItem::text, "Original", &ElementsModalItem::elements, elements, &ElementsModalItem::model, 0));
menu->addChild(construct<ElementsModalItem>(&MenuItem::text, "Non-linear string", &ElementsModalItem::elements, elements, &ElementsModalItem::model, 1));
menu->addChild(construct<ElementsModalItem>(&MenuItem::text, "Chords", &ElementsModalItem::elements, elements, &ElementsModalItem::model, 2));
menu->addChild(new MenuSeparator);
menu->addChild(construct<ElementsEasterEggItem>(&MenuItem::text, "Easter egg", &ElementsEasterEggItem::elements, elements));
}
};



Loading…
Cancel
Save