| @@ -169,11 +169,11 @@ struct CCTextField : TextField { | |||||
| void draw(NVGcontext *vg); | void draw(NVGcontext *vg); | ||||
| void onMouseDownOpaque(int button); | |||||
| void onMouseDown(EventMouseDown &e); | |||||
| void onMouseUpOpaque(int button); | |||||
| void onMouseUp(EventMouseUp &e); | |||||
| void onMouseLeave(); | |||||
| void onMouseLeave(EventMouseLeave &e); | |||||
| int outNum; | int outNum; | ||||
| @@ -196,21 +196,25 @@ void CCTextField::draw(NVGcontext *vg) { | |||||
| TextField::draw(vg); | TextField::draw(vg); | ||||
| } | } | ||||
| void CCTextField::onMouseUpOpaque(int button) { | |||||
| if (button == 1) { | |||||
| void CCTextField::onMouseUp(EventMouseUp &e) { | |||||
| if (e.button == 1) { | |||||
| module->cc[outNum].numSelected = false; | module->cc[outNum].numSelected = false; | ||||
| e.consumed = true; | |||||
| } | } | ||||
| } | } | ||||
| void CCTextField::onMouseDownOpaque(int button) { | |||||
| if (button == 1) { | |||||
| void CCTextField::onMouseDown(EventMouseDown &e) { | |||||
| if (e.button == 1) { | |||||
| module->cc[outNum].numSelected = true; | module->cc[outNum].numSelected = true; | ||||
| e.consumed = true; | |||||
| } | } | ||||
| } | } | ||||
| void CCTextField::onMouseLeave() { | |||||
| void CCTextField::onMouseLeave(EventMouseLeave &e) { | |||||
| module->cc[outNum].numSelected = false; | module->cc[outNum].numSelected = false; | ||||
| e.consumed = true; | |||||
| } | } | ||||
| @@ -210,7 +210,7 @@ struct ClockRatioItem : MenuItem { | |||||
| int ratio; | int ratio; | ||||
| int *clockRatio; | int *clockRatio; | ||||
| void onAction() { | |||||
| void onAction(EventAction &e) { | |||||
| *clockRatio = ratio; | *clockRatio = ratio; | ||||
| } | } | ||||
| }; | }; | ||||
| @@ -226,7 +226,7 @@ struct ClockRatioChoice : ChoiceButton { | |||||
| const std::vector<std::string> ratioNames_short = {"1:4 ratio", "1:3 ratio", "1:2 ratio", "2:3 ratio", "1:1 ratio", | const std::vector<std::string> ratioNames_short = {"1:4 ratio", "1:3 ratio", "1:2 ratio", "2:3 ratio", "1:1 ratio", | ||||
| "4:3", "2:1 ratio", "4:1 ratio", "8:1 ratio"}; | "4:3", "2:1 ratio", "4:1 ratio", "8:1 ratio"}; | ||||
| void onAction() { | |||||
| void onAction(EventAction &e) { | |||||
| Menu *menu = gScene->createMenu(); | Menu *menu = gScene->createMenu(); | ||||
| menu->box.pos = getAbsoluteOffset(Vec(0, box.size.y)).round(); | menu->box.pos = getAbsoluteOffset(Vec(0, box.size.y)).round(); | ||||
| menu->box.size.x = box.size.x; | menu->box.size.x = box.size.x; | ||||
| @@ -195,11 +195,11 @@ void MidiIO::close() { | |||||
| } | } | ||||
| void MidiItem::onAction() { | |||||
| void MidiItem::onAction(EventAction &e) { | |||||
| midiModule->openDevice(text); | midiModule->openDevice(text); | ||||
| } | } | ||||
| void MidiChoice::onAction() { | |||||
| void MidiChoice::onAction(EventAction &e) { | |||||
| Menu *menu = gScene->createMenu(); | Menu *menu = gScene->createMenu(); | ||||
| menu->box.pos = getAbsoluteOffset(Vec(0, box.size.y)).round(); | menu->box.pos = getAbsoluteOffset(Vec(0, box.size.y)).round(); | ||||
| menu->box.size.x = box.size.x; | menu->box.size.x = box.size.x; | ||||
| @@ -229,12 +229,12 @@ void MidiChoice::step() { | |||||
| text = ellipsize(name, 15); | text = ellipsize(name, 15); | ||||
| } | } | ||||
| void ChannelItem::onAction() { | |||||
| void ChannelItem::onAction(EventAction &e) { | |||||
| midiModule->resetMidi(); // reset Midi values | midiModule->resetMidi(); // reset Midi values | ||||
| midiModule->setChannel(channel); | midiModule->setChannel(channel); | ||||
| } | } | ||||
| void ChannelChoice::onAction() { | |||||
| void ChannelChoice::onAction(EventAction &e) { | |||||
| Menu *menu = gScene->createMenu(); | Menu *menu = gScene->createMenu(); | ||||
| menu->box.pos = getAbsoluteOffset(Vec(0, box.size.y)).round(); | menu->box.pos = getAbsoluteOffset(Vec(0, box.size.y)).round(); | ||||
| menu->box.size.x = box.size.x; | menu->box.size.x = box.size.x; | ||||
| @@ -174,13 +174,13 @@ struct TransitionSmoother { | |||||
| struct MidiItem : MenuItem { | struct MidiItem : MenuItem { | ||||
| MidiIO *midiModule; | MidiIO *midiModule; | ||||
| void onAction(); | |||||
| void onAction(EventAction &e); | |||||
| }; | }; | ||||
| struct MidiChoice : ChoiceButton { | struct MidiChoice : ChoiceButton { | ||||
| MidiIO *midiModule; | MidiIO *midiModule; | ||||
| void onAction(); | |||||
| void onAction(EventAction &e); | |||||
| void step(); | void step(); | ||||
| }; | }; | ||||
| @@ -189,13 +189,13 @@ struct ChannelItem : MenuItem { | |||||
| MidiIO *midiModule; | MidiIO *midiModule; | ||||
| int channel; | int channel; | ||||
| void onAction(); | |||||
| void onAction(EventAction &e); | |||||
| }; | }; | ||||
| struct ChannelChoice : ChoiceButton { | struct ChannelChoice : ChoiceButton { | ||||
| MidiIO *midiModule; | MidiIO *midiModule; | ||||
| void onAction(); | |||||
| void onAction(EventAction &e); | |||||
| void step(); | void step(); | ||||
| }; | }; | ||||
| @@ -135,11 +135,11 @@ struct TriggerTextField : TextField { | |||||
| void draw(NVGcontext *vg); | void draw(NVGcontext *vg); | ||||
| void onMouseDownOpaque(int button); | |||||
| void onMouseDown(EventMouseDown &e); | |||||
| void onMouseUpOpaque(int button); | |||||
| void onMouseUp(EventMouseUp &e); | |||||
| void onMouseLeave(); | |||||
| void onMouseLeave(EventMouseLeave &e); | |||||
| int outNum; | int outNum; | ||||
| MIDITriggerToCVInterface *module; | MIDITriggerToCVInterface *module; | ||||
| @@ -180,21 +180,24 @@ void TriggerTextField::onTextChange() { | |||||
| }; | }; | ||||
| } | } | ||||
| void TriggerTextField::onMouseUpOpaque(int button) { | |||||
| if (button == 1) { | |||||
| void TriggerTextField::onMouseUp(EventMouseUp &e) { | |||||
| if (e.button == 1) { | |||||
| module->trigger[outNum].onFocus = false; | module->trigger[outNum].onFocus = false; | ||||
| e.consumed = true; | |||||
| } | } | ||||
| } | } | ||||
| void TriggerTextField::onMouseDownOpaque(int button) { | |||||
| if (button == 1) { | |||||
| void TriggerTextField::onMouseDown(EventMouseDown &e) { | |||||
| if (e.button == 1) { | |||||
| module->trigger[outNum].onFocus = true; | module->trigger[outNum].onFocus = true; | ||||
| e.consumed = true; | |||||
| } | } | ||||
| } | } | ||||
| void TriggerTextField::onMouseLeave() { | |||||
| void TriggerTextField::onMouseLeave(EventMouseLeave &e) { | |||||
| module->trigger[outNum].onFocus = false; | module->trigger[outNum].onFocus = false; | ||||
| e.consumed = true; | |||||
| } | } | ||||
| MIDITriggerToCVWidget::MIDITriggerToCVWidget() { | MIDITriggerToCVWidget::MIDITriggerToCVWidget() { | ||||
| @@ -254,7 +254,7 @@ struct ModeItem : MenuItem { | |||||
| int mode; | int mode; | ||||
| QuadMIDIToCVInterface *module; | QuadMIDIToCVInterface *module; | ||||
| void onAction() { | |||||
| void onAction(EventAction &e) { | |||||
| module->setMode(mode); | module->setMode(mode); | ||||
| } | } | ||||
| }; | }; | ||||
| @@ -264,7 +264,7 @@ struct ModeChoice : ChoiceButton { | |||||
| const std::vector<std::string> modeNames = {"ROTATE", "RESET", "REASSIGN"}; | const std::vector<std::string> modeNames = {"ROTATE", "RESET", "REASSIGN"}; | ||||
| void onAction() { | |||||
| void onAction(EventAction &e) { | |||||
| Menu *menu = gScene->createMenu(); | Menu *menu = gScene->createMenu(); | ||||
| menu->box.pos = getAbsoluteOffset(Vec(0, box.size.y)).round(); | menu->box.pos = getAbsoluteOffset(Vec(0, box.size.y)).round(); | ||||
| menu->box.size.x = box.size.x; | menu->box.size.x = box.size.x; | ||||