| @@ -177,7 +177,7 @@ void ParamWidget::step() { | |||
| engine::ParamQuantity* pq = getParamQuantity(); | |||
| if (pq) { | |||
| float value = pq->getSmoothValue(); | |||
| // Trigger change event when the ParamQuantity value changes | |||
| // Dispatch change event when the ParamQuantity value changes | |||
| if (value != lastValue) { | |||
| ChangeEvent eChange; | |||
| onChange(eChange); | |||
| @@ -265,7 +265,7 @@ static void Engine_updateExpander(Engine* that, Module* module, bool side) { | |||
| } | |||
| if (expander.module != oldExpanderModule) { | |||
| // Trigger ExpanderChangeEvent event | |||
| // Dispatch ExpanderChangeEvent | |||
| Module::ExpanderChangeEvent e; | |||
| e.side = side; | |||
| module->onExpanderChange(e); | |||
| @@ -579,7 +579,7 @@ void Engine::setPrimaryModule(Module* module) { | |||
| WriteLock lock(internal->mutex); | |||
| if (internal->primaryModule) { | |||
| // Trigger UnsetPrimaryEvent | |||
| // Dispatch UnsetPrimaryEvent | |||
| Module::UnsetPrimaryEvent e; | |||
| internal->primaryModule->onUnsetPrimary(e); | |||
| } | |||
| @@ -587,7 +587,7 @@ void Engine::setPrimaryModule(Module* module) { | |||
| internal->primaryModule = module; | |||
| if (internal->primaryModule) { | |||
| // Trigger SetPrimaryEvent | |||
| // Dispatch SetPrimaryEvent | |||
| Module::SetPrimaryEvent e; | |||
| internal->primaryModule->onSetPrimary(e); | |||
| } | |||
| @@ -611,7 +611,7 @@ void Engine::setSampleRate(float sampleRate) { | |||
| internal->sampleRate = sampleRate; | |||
| internal->sampleTime = 1.f / sampleRate; | |||
| // Trigger SampleRateChangeEvent | |||
| // Dispatch SampleRateChangeEvent | |||
| Module::SampleRateChangeEvent e; | |||
| e.sampleRate = internal->sampleRate; | |||
| e.sampleTime = internal->sampleTime; | |||
| @@ -733,7 +733,7 @@ void Engine::addModule(Module* module) { | |||
| // Add module | |||
| internal->modules.push_back(module); | |||
| internal->modulesCache[module->id] = module; | |||
| // Trigger Add event | |||
| // Dispatch AddEvent | |||
| Module::AddEvent eAdd; | |||
| module->onAdd(eAdd); | |||
| // Update ParamHandles' module pointers | |||
| @@ -780,7 +780,7 @@ void Engine::removeModule_NoLock(Module* module) { | |||
| m->rightExpander.module = NULL; | |||
| } | |||
| } | |||
| // Trigger Remove event | |||
| // Dispatch RemoveEvent | |||
| Module::RemoveEvent eRemove; | |||
| module->onRemove(eRemove); | |||
| // Unset primary module | |||
| @@ -841,12 +841,13 @@ void Engine::bypassModule(Module* module, bool bypassed) { | |||
| } | |||
| // Set bypassed state | |||
| module->setBypassed(bypassed); | |||
| // Trigger event | |||
| if (bypassed) { | |||
| // Dispatch BypassEvent | |||
| Module::BypassEvent eBypass; | |||
| module->onBypass(eBypass); | |||
| } | |||
| else { | |||
| // Dispatch UnBypassEvent | |||
| Module::UnBypassEvent eUnBypass; | |||
| module->onUnBypass(eUnBypass); | |||
| } | |||
| @@ -929,7 +930,7 @@ void Engine::addCable(Cable* cable) { | |||
| internal->cables.push_back(cable); | |||
| internal->cablesCache[cable->id] = cable; | |||
| Engine_updateConnected(this); | |||
| // Trigger input port event | |||
| // Dispatch input port event | |||
| { | |||
| Module::PortChangeEvent e; | |||
| e.connecting = true; | |||
| @@ -937,7 +938,7 @@ void Engine::addCable(Cable* cable) { | |||
| e.portId = cable->inputId; | |||
| cable->inputModule->onPortChange(e); | |||
| } | |||
| // Trigger output port event if its state went from disconnected to connected. | |||
| // Dispatch output port event if its state went from disconnected to connected. | |||
| if (!outputWasConnected) { | |||
| Module::PortChangeEvent e; | |||
| e.connecting = true; | |||
| @@ -970,7 +971,7 @@ void Engine::removeCable_NoLock(Cable* cable) { | |||
| if (cable2->outputModule == cable->outputModule && cable2->outputId == cable->outputId) | |||
| outputIsConnected = true; | |||
| } | |||
| // Trigger input port event | |||
| // Dispatch input port event | |||
| { | |||
| Module::PortChangeEvent e; | |||
| e.connecting = false; | |||
| @@ -978,7 +979,7 @@ void Engine::removeCable_NoLock(Cable* cable) { | |||
| e.portId = cable->inputId; | |||
| cable->inputModule->onPortChange(e); | |||
| } | |||
| // Trigger output port event if its state went from connected to disconnected. | |||
| // Dispatch output port event if its state went from connected to disconnected. | |||
| if (!outputIsConnected) { | |||
| Module::PortChangeEvent e; | |||
| e.connecting = false; | |||
| @@ -35,7 +35,7 @@ void Widget::setPosition(math::Vec pos) { | |||
| if (pos.equals(box.pos)) | |||
| return; | |||
| box.pos = pos; | |||
| // Trigger Reposition event | |||
| // Dispatch Reposition event | |||
| RepositionEvent eReposition; | |||
| onReposition(eReposition); | |||
| } | |||
| @@ -50,7 +50,7 @@ void Widget::setSize(math::Vec size) { | |||
| if (size.equals(box.size)) | |||
| return; | |||
| box.size = size; | |||
| // Trigger Resize event | |||
| // Dispatch Resize event | |||
| ResizeEvent eResize; | |||
| onResize(eResize); | |||
| } | |||
| @@ -71,12 +71,12 @@ void Widget::setVisible(bool visible) { | |||
| return; | |||
| this->visible = visible; | |||
| if (visible) { | |||
| // Trigger Show event | |||
| // Dispatch Show event | |||
| ShowEvent eShow; | |||
| onShow(eShow); | |||
| } | |||
| else { | |||
| // Trigger Hide event | |||
| // Dispatch Hide event | |||
| HideEvent eHide; | |||
| onHide(eHide); | |||
| } | |||
| @@ -159,7 +159,7 @@ void Widget::addChild(Widget* child) { | |||
| // Add child | |||
| child->parent = this; | |||
| children.push_back(child); | |||
| // Trigger Add event | |||
| // Dispatch Add event | |||
| AddEvent eAdd; | |||
| child->onAdd(eAdd); | |||
| } | |||
| @@ -171,7 +171,7 @@ void Widget::addChildBottom(Widget* child) { | |||
| // Add child | |||
| child->parent = this; | |||
| children.push_front(child); | |||
| // Trigger Add event | |||
| // Dispatch Add event | |||
| AddEvent eAdd; | |||
| child->onAdd(eAdd); | |||
| } | |||
| @@ -185,7 +185,7 @@ void Widget::addChildBelow(Widget* child, Widget* sibling) { | |||
| // Add child | |||
| child->parent = this; | |||
| children.insert(it, child); | |||
| // Trigger Add event | |||
| // Dispatch Add event | |||
| AddEvent eAdd; | |||
| child->onAdd(eAdd); | |||
| } | |||
| @@ -200,7 +200,7 @@ void Widget::addChildAbove(Widget* child, Widget* sibling) { | |||
| child->parent = this; | |||
| it++; | |||
| children.insert(it, child); | |||
| // Trigger Add event | |||
| // Dispatch Add event | |||
| AddEvent eAdd; | |||
| child->onAdd(eAdd); | |||
| } | |||
| @@ -210,7 +210,7 @@ void Widget::removeChild(Widget* child) { | |||
| assert(child); | |||
| // Make sure `this` is the child's parent | |||
| assert(child->parent == this); | |||
| // Trigger Remove event | |||
| // Dispatch Remove event | |||
| RemoveEvent eRemove; | |||
| child->onRemove(eRemove); | |||
| // Prepare to remove widget from the event state | |||
| @@ -226,7 +226,7 @@ void Widget::removeChild(Widget* child) { | |||
| void Widget::clearChildren() { | |||
| for (Widget* child : children) { | |||
| // Trigger Remove event | |||
| // Dispatch Remove event | |||
| RemoveEvent eRemove; | |||
| child->onRemove(eRemove); | |||
| APP->event->finalizeWidget(child); | |||
| @@ -242,7 +242,7 @@ void Widget::step() { | |||
| Widget* child = *it; | |||
| // Delete children if a delete is requested | |||
| if (child->requestedDelete) { | |||
| // Trigger Remove event | |||
| // Dispatch Remove event | |||
| RemoveEvent eRemove; | |||
| child->onRemove(eRemove); | |||
| APP->event->finalizeWidget(child); | |||
| @@ -32,7 +32,7 @@ void ZoomWidget::setZoom(float zoom) { | |||
| return; | |||
| this->zoom = zoom; | |||
| // Trigger Dirty event | |||
| // Dispatch Dirty event | |||
| widget::EventContext cDirty; | |||
| DirtyEvent eDirty; | |||
| eDirty.context = &cDirty; | |||
| @@ -13,14 +13,14 @@ void EventState::setHovered(widget::Widget* w) { | |||
| return; | |||
| if (hoveredWidget) { | |||
| // Trigger LeaveEvent | |||
| // Dispatch LeaveEvent | |||
| Widget::LeaveEvent eLeave; | |||
| hoveredWidget->onLeave(eLeave); | |||
| hoveredWidget = NULL; | |||
| } | |||
| if (w) { | |||
| // Trigger EnterEvent | |||
| // Dispatch EnterEvent | |||
| EventContext cEnter; | |||
| cEnter.target = w; | |||
| Widget::EnterEvent eEnter; | |||
| @@ -35,7 +35,7 @@ void EventState::setDragged(widget::Widget* w, int button) { | |||
| return; | |||
| if (draggedWidget) { | |||
| // Trigger DragEndEvent | |||
| // Dispatch DragEndEvent | |||
| Widget::DragEndEvent eDragEnd; | |||
| eDragEnd.button = dragButton; | |||
| draggedWidget->onDragEnd(eDragEnd); | |||
| @@ -45,7 +45,7 @@ void EventState::setDragged(widget::Widget* w, int button) { | |||
| dragButton = button; | |||
| if (w) { | |||
| // Trigger DragStartEvent | |||
| // Dispatch DragStartEvent | |||
| EventContext cDragStart; | |||
| cDragStart.target = w; | |||
| Widget::DragStartEvent eDragStart; | |||
| @@ -61,7 +61,7 @@ void EventState::setDragHovered(widget::Widget* w) { | |||
| return; | |||
| if (dragHoveredWidget) { | |||
| // Trigger DragLeaveEvent | |||
| // Dispatch DragLeaveEvent | |||
| Widget::DragLeaveEvent eDragLeave; | |||
| eDragLeave.button = dragButton; | |||
| eDragLeave.origin = draggedWidget; | |||
| @@ -70,7 +70,7 @@ void EventState::setDragHovered(widget::Widget* w) { | |||
| } | |||
| if (w) { | |||
| // Trigger DragEnterEvent | |||
| // Dispatch DragEnterEvent | |||
| EventContext cDragEnter; | |||
| cDragEnter.target = w; | |||
| Widget::DragEnterEvent eDragEnter; | |||
| @@ -87,14 +87,14 @@ void EventState::setSelected(widget::Widget* w) { | |||
| return; | |||
| if (selectedWidget) { | |||
| // Trigger DeselectEvent | |||
| // Dispatch DeselectEvent | |||
| Widget::DeselectEvent eDeselect; | |||
| selectedWidget->onDeselect(eDeselect); | |||
| selectedWidget = NULL; | |||
| } | |||
| if (w) { | |||
| // Trigger SelectEvent | |||
| // Dispatch SelectEvent | |||
| EventContext cSelect; | |||
| cSelect.target = w; | |||
| Widget::SelectEvent eSelect; | |||
| @@ -122,7 +122,7 @@ bool EventState::handleButton(math::Vec pos, int button, int action, int mods) { | |||
| widget::Widget* clickedWidget = NULL; | |||
| if (!cursorLocked) { | |||
| // Trigger ButtonEvent | |||
| // Dispatch ButtonEvent | |||
| EventContext cButton; | |||
| Widget::ButtonEvent eButton; | |||
| eButton.context = &cButton; | |||
| @@ -142,7 +142,7 @@ bool EventState::handleButton(math::Vec pos, int button, int action, int mods) { | |||
| setDragHovered(NULL); | |||
| if (clickedWidget && draggedWidget) { | |||
| // Trigger DragDropEvent | |||
| // Dispatch DragDropEvent | |||
| Widget::DragDropEvent eDragDrop; | |||
| eDragDrop.button = dragButton; | |||
| eDragDrop.origin = draggedWidget; | |||
| @@ -163,7 +163,7 @@ bool EventState::handleButton(math::Vec pos, int button, int action, int mods) { | |||
| if (clickedWidget | |||
| && clickTime - lastClickTime <= doubleClickDuration | |||
| && lastClickedWidget == clickedWidget) { | |||
| // Trigger DoubleClickEvent | |||
| // Dispatch DoubleClickEvent | |||
| Widget::DoubleClickEvent eDoubleClick; | |||
| clickedWidget->onDoubleClick(eDoubleClick); | |||
| // Reset double click | |||
| @@ -195,7 +195,7 @@ bool EventState::handleHover(math::Vec pos, math::Vec mouseDelta) { | |||
| if (draggedWidget) { | |||
| bool dragHovered = false; | |||
| if (!cursorLocked) { | |||
| // Trigger DragHoverEvent | |||
| // Dispatch DragHoverEvent | |||
| EventContext cDragHover; | |||
| Widget::DragHoverEvent eDragHover; | |||
| eDragHover.context = &cDragHover; | |||
| @@ -211,7 +211,7 @@ bool EventState::handleHover(math::Vec pos, math::Vec mouseDelta) { | |||
| dragHovered = true; | |||
| } | |||
| // Trigger DragMoveEvent | |||
| // Dispatch DragMoveEvent | |||
| Widget::DragMoveEvent eDragMove; | |||
| eDragMove.button = dragButton; | |||
| eDragMove.mouseDelta = mouseDelta; | |||
| @@ -221,7 +221,7 @@ bool EventState::handleHover(math::Vec pos, math::Vec mouseDelta) { | |||
| } | |||
| if (!cursorLocked) { | |||
| // Trigger HoverEvent | |||
| // Dispatch HoverEvent | |||
| EventContext cHover; | |||
| Widget::HoverEvent eHover; | |||
| eHover.context = &cHover; | |||
| @@ -245,7 +245,7 @@ bool EventState::handleLeave() { | |||
| } | |||
| bool EventState::handleScroll(math::Vec pos, math::Vec scrollDelta) { | |||
| // Trigger HoverScrollEvent | |||
| // Dispatch HoverScrollEvent | |||
| EventContext cHoverScroll; | |||
| Widget::HoverScrollEvent eHoverScroll; | |||
| eHoverScroll.context = &cHoverScroll; | |||
| @@ -257,7 +257,7 @@ bool EventState::handleScroll(math::Vec pos, math::Vec scrollDelta) { | |||
| } | |||
| bool EventState::handleDrop(math::Vec pos, const std::vector<std::string>& paths) { | |||
| // Trigger PathDropEvent | |||
| // Dispatch PathDropEvent | |||
| EventContext cPathDrop; | |||
| Widget::PathDropEvent ePathDrop(paths); | |||
| ePathDrop.context = &cPathDrop; | |||
| @@ -269,7 +269,7 @@ bool EventState::handleDrop(math::Vec pos, const std::vector<std::string>& paths | |||
| bool EventState::handleText(math::Vec pos, int codepoint) { | |||
| if (selectedWidget) { | |||
| // Trigger SelectTextEvent | |||
| // Dispatch SelectTextEvent | |||
| EventContext cSelectText; | |||
| Widget::SelectTextEvent eSelectText; | |||
| eSelectText.context = &cSelectText; | |||
| @@ -279,7 +279,7 @@ bool EventState::handleText(math::Vec pos, int codepoint) { | |||
| return true; | |||
| } | |||
| // Trigger HoverText | |||
| // Dispatch HoverText | |||
| EventContext cHoverText; | |||
| Widget::HoverTextEvent eHoverText; | |||
| eHoverText.context = &cHoverText; | |||
| @@ -302,7 +302,7 @@ bool EventState::handleKey(math::Vec pos, int key, int scancode, int action, int | |||
| } | |||
| if (selectedWidget) { | |||
| // Trigger SelectKeyEvent | |||
| // Dispatch SelectKeyEvent | |||
| EventContext cSelectKey; | |||
| Widget::SelectKeyEvent eSelectKey; | |||
| eSelectKey.context = &cSelectKey; | |||
| @@ -318,7 +318,7 @@ bool EventState::handleKey(math::Vec pos, int key, int scancode, int action, int | |||
| return true; | |||
| } | |||
| // Trigger HoverKeyEvent | |||
| // Dispatch HoverKeyEvent | |||
| EventContext cHoverKey; | |||
| Widget::HoverKeyEvent eHoverKey; | |||
| eHoverKey.context = &cHoverKey; | |||
| @@ -335,7 +335,7 @@ bool EventState::handleKey(math::Vec pos, int key, int scancode, int action, int | |||
| } | |||
| bool EventState::handleDirty() { | |||
| // Trigger DirtyEvent | |||
| // Dispatch DirtyEvent | |||
| EventContext cDirty; | |||
| Widget::DirtyEvent eDirty; | |||
| eDirty.context = &cDirty; | |||