|
- #include "ui/Button.hpp"
- #include "app.hpp"
- #include "event.hpp"
-
-
- namespace rack {
- namespace ui {
-
-
- Button::Button() {
- box.size.y = BND_WIDGET_HEIGHT;
- }
-
- void Button::draw(const DrawArgs &args) {
- BNDwidgetState state = BND_DEFAULT;
- if (APP->event->hoveredWidget == this)
- state = BND_HOVER;
- if (APP->event->draggedWidget == this)
- state = BND_ACTIVE;
- bndToolButton(args.vg, 0.0, 0.0, box.size.x, box.size.y, BND_CORNER_NONE, state, -1, text.c_str());
- }
-
- void Button::onDragStart(const event::DragStart &e) {
- if (e.button != GLFW_MOUSE_BUTTON_LEFT)
- return;
-
- if (quantity)
- quantity->setMax();
- }
-
- void Button::onDragEnd(const event::DragEnd &e) {
- if (quantity)
- quantity->setMin();
- }
-
- void Button::onDragDrop(const event::DragDrop &e) {
- if (e.origin == this) {
- event::Action eAction;
- onAction(eAction);
- }
- }
-
-
- } // namespace ui
- } // namespace rack
|