Andrew Belt
6e35afb053
Add engine::LightInfo and Module::configLight() helper for configuring the LightInfo. Add LightTooltip for LightWidgets.
4 years ago
Andrew Belt
9ea49664bb
Copy cable color when cloning cables with Ctrl+click.
4 years ago
Andrew Belt
ca9231e1b3
Rename App to Context and app.hpp to context.hpp. The APP macro is still valid.
4 years ago
Andrew Belt
e875096728
Change PortTooltip input/output labels.
4 years ago
Andrew Belt
05df47fbd1
Add Internal struct to ModuleWidget.
5 years ago
Andrew Belt
adc3f681c3
Rearrange text in PortTooltip
5 years ago
Andrew Belt
ae19e33774
Make PortInfo a virtual class.
5 years ago
Andrew Belt
ef89a96c87
Change ParamQuantity/PortInfo label to name.
5 years ago
Andrew Belt
4a462fadc5
Add "Connected to" to PortTooltip.
5 years ago
Andrew Belt
0dbce1683d
Work on PortTooltips.
5 years ago
Andrew Belt
99b17727ab
WIP:
- Make ParamWidget hold module/paramId instead of paramQuantity.
- Add configInput/configOutput.
- Add engine::PortInfo.
- Avoid calling particular events when cursor is locked.
- Add PortTooltip.
5 years ago
Andrew Belt
e4b6056ded
Massive WIP v2 overhaul:
- Add Engine::fromJson which can be called without the GUI at all.
- Make RackWidget::fromJson attach itself to existing Engine state. However, once attached, they own their Engine objects (Module, Cable).
- Remove Engine thread. Now Engine must be stepped by other threads, such as the audio thread. This is fantastic because there is no longer a mutex lock every audio buffer.
- Add concept of the "primary module", which is allowed to call Engine::step().
- Add many Module events.
5 years ago
Andrew Belt
ff2ac805e2
Fix #1510
5 years ago
Andrew Belt
dca30e2b53
Auto-format code with astyle.
5 years ago
Andrew Belt
696939069d
Use <> instead of "" for include directive.
5 years ago
Andrew Belt
5e0378cb5a
Clean up app namespace.
5 years ago
Andrew Belt
2c9644d80d
Rename WINDOW_ macros to RACK_. Require rack:: namespace for APP macro.
5 years ago
Andrew Belt
faa96068af
Remove useless `e.consume(this)` from events that no longer need it. Fix bugs introduced by change of event system behavior.
5 years ago
Andrew Belt
a5d7a0b75b
Add middle-click-drag to ScrollWidget. Fix numerous bugs introduced by event system changes.
5 years ago
Andrew Belt
9d609fee2b
Rename `widget::*Event` to `event::*`.
5 years ago
Andrew Belt
13b3fabd8b
Replace `Event::consumed` with `target` and `propogating`.
5 years ago
Andrew Belt
2210287039
Move handling of RackWidget from Scene to RackScrollWidget.
5 years ago
Andrew Belt
b84e2f57fa
Merge event:: namespace with widget:: namespace. Rename event::* to widget::*Event.
5 years ago
Andrew Belt
11544f25b3
Update rack0.hpp header
5 years ago
Andrew Belt
d6f5a84178
Draw FramebufferWidgets during step() instead of draw() so we can use the same NanoVG context.
5 years ago
Andrew Belt
a509fab1c1
Move and rename widget::DrawContext to widget::Widget::DrawArgs. Rename Module::ProcessContext to Module::ProcessArgs.
5 years ago
Andrew Belt
e184fdb947
Ctrl-click an input port to clone the plugged cable.
5 years ago
Andrew Belt
510f7b2179
Change behavior of Port::getPolyVoltage(). Change port behavior when module is bypassed.
5 years ago
Andrew Belt
02e5e382d5
Require Enter, Select, DragStart, and DragEnter to be consumed in order to the event State to be set.
5 years ago
Andrew Belt
cc3b9acb7c
Create `component::` namespace
5 years ago
Andrew Belt
8a5a806425
Add app::, ui::, and widget:: namespaces.
5 years ago
Andrew Belt
6d1142b449
Add new Widget::draw() method. Deprecate old method.
5 years ago
Andrew Belt
dac26ce0a7
Fix plug light colors
5 years ago
Andrew Belt
98aa18d354
Rename a few variables and methods
5 years ago
Andrew Belt
6d86a8280c
Add convenience methods to Port. Draw blue plug lights for polyphonic ports.
5 years ago
Andrew Belt
c6f8153d74
Use various other history actions when interacting with the rack
5 years ago
Andrew Belt
c4a33bedc3
Move CableContainer methods into RackWidget
5 years ago
Andrew Belt
94c33c5e77
Use cable history actions when interacting with cables
5 years ago
Andrew Belt
5266641777
Big cable refactor.
5 years ago
Andrew Belt
9ffb57edd0
Remove Window::isModPressed() and isShiftPressed(). Add Window::getMods(). Add partial implementations of Core MIDI-CC and MIDI-Gate.
5 years ago
Andrew Belt
428f137d45
Remove multiple inheritance from all widgets, remove virtual inheritance, merge MomentarySwitch and ToggleSwitch to Switch with a boolean.
5 years ago
Andrew Belt
1a26bac9b1
Move ui header implementations to source files.
5 years ago
Andrew Belt
3ab43a2ce0
Rename wire to cable
5 years ago
Andrew Belt
655f081965
Rename context() to app(). Add skeleton for history.
5 years ago
Andrew Belt
2e4faa4a10
Add hack when disconnecting ModuleWidgets with NULL Module
5 years ago
Andrew Belt
a6961d6626
Tear down old Module Browser, make app widgets and Core plugins compatible with NULL Module
5 years ago
Andrew Belt
e845373ee9
Make event callbacks use const
5 years ago
Andrew Belt
1a7aeb6c3b
Create event context for each event that is triggered
5 years ago
Andrew Belt
7c04ff0abf
Rename Port to PortWidget
5 years ago
Andrew Belt
04f53901b2
Fix event and Wire bugs
5 years ago