Andrew Belt
75d5d8b5de
Fix handle position of Module-less ModuleWidgets. Move a few member variables to Internal struct.
3 years ago
Andrew Belt
aee5e22ec2
Add AudioButton and MidiButton example. Make SvgButton trigger Action event when right-clicking.
3 years ago
Andrew Belt
bb9e9b78ce
Add pimpl Internal* struct to several classes that have a possibility of needing more member variables in 2.x.
3 years ago
Andrew Belt
65666c23ac
Implement LEDSlider using new template class structure.
3 years ago
Andrew Belt
697571648d
Set default component ID to -1 in all classes.
3 years ago
Andrew Belt
5e22369d2e
Add LedDisplayTextField::bgColor. Display LedDisplay text as a non-tinted light when rack brightness is decreased.
3 years ago
Andrew Belt
30c64c5e93
Zoom in/out rack with extra mouse buttons
3 years ago
Andrew Belt
ac29571db3
Rearrange ModuleWidget methods.
3 years ago
Andrew Belt
c545995fb1
Make fonts and images be permanently cached. Use font cache in LedDisplay.
3 years ago
Andrew Belt
6ffea7d25d
Move SVG_DPI and mm2px() to svg.hpp.
3 years ago
Andrew Belt
5484126aaa
Change `event::Foo` to `FooEvent`.
3 years ago
Andrew Belt
2ef395f99b
Add scroll wheel knob control setting.
3 years ago
Andrew Belt
4ae79f662d
Fix crash when saving/loading module presets. Add "Clear template" menu item to module presets menu. Rename `system::doesExist()` to `exists()`.
3 years ago
Andrew Belt
357bd847bf
Rename PRIVATE macro to INTERNAL.
3 years ago
Andrew Belt
50ec209578
Only wait for mouse to move before dragging module if it was just created with the module browser.
3 years ago
Andrew Belt
fd4479f992
Use a ~15px dragging threshold when dragging a Module from the Module Browser, so that clicking it makes it stay in the last right-clicked position. Make event framework trigger DragHover before DragMove.
3 years ago
Andrew Belt
5bbd32ccac
When Module Browser creates a module, set the ModuleWidget's dragPos to its center, so dragging is more predictable.
3 years ago
Andrew Belt
b3d8f4f997
Delete instead of hide TipWindow (and its overlay) when closing.
4 years ago
Andrew Belt
7a500c9c26
Add tip window. Add "showTipsOnLaunch" and "tipIndex" to settings.
4 years ago
Andrew Belt
426b6d20ed
Rename "autosavePeriod" to "autosaveInterval" in settings.json. Auto-hide menu bar when fullscreen, show when hovering the top of the screen.
4 years ago
Andrew Belt
6e35afb053
Add engine::LightInfo and Module::configLight() helper for configuring the LightInfo. Add LightTooltip for LightWidgets.
4 years ago
Andrew Belt
f3094a572a
Move app::MenuBar class definition from header to source file.
4 years ago
Andrew Belt
e80beefba4
Add AudioButton and MidiButton and Component Library subclasses with graphics.
4 years ago
Andrew Belt
5e4124f66a
Rename bypassed to bypass everywhere.
4 years ago
Andrew Belt
f887faea79
Fix module and cable ID variables that were `int` instead of `int64_t`. Add `Engine::getNumCables()` and `Engine::getCableIds()`.
4 years ago
Andrew Belt
c9a08c7b24
Add CableWidget::releaseCable() and ModuleWidget::releaseModule().
4 years ago
Andrew Belt
9ea49664bb
Copy cable color when cloning cables with Ctrl+click.
4 years ago
Andrew Belt
ae21a4c70d
Add Audio-2 WIP.
4 years ago
Andrew Belt
73c2ecaea2
Remove ModuleWidget::params, inputs, and outputs arrays. Instead, search recursively for those widgets.
4 years ago
Andrew Belt
120aafe6d3
Change order of includes to C++ standard headers, library headers, and local project headers.
4 years ago
Andrew Belt
866f684ce4
Move app::APP_*, ABI_*, and API_* variables to rack:: namespace.
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
8423ce87aa
Add template preset for modules, which are loaded when created from the Module Browser.
4 years ago
Andrew Belt
15ea154602
Remove Dark mode.
4 years ago
Andrew Belt
f2ec0af4b0
Restructure SvgPanel to handle dark mode.
4 years ago
Andrew Belt
b93e889c75
Implement scaled linear and rotary knob modes.
4 years ago
Andrew Belt
6a5f6fd6f3
Add knob mode menu item. Remove "allowCursorLock" setting.
4 years ago
Andrew Belt
040d862102
Move Window::mousePos to Scene::mousePos.
4 years ago
Andrew Belt
55852118f7
Add appendAudioMenu() and appendMidiMenu().
5 years ago
Andrew Belt
c33dc3c842
Rename module disabling to bypassing.
5 years ago
Andrew Belt
265552d0db
Clone cables patched to inputs when a module is cloned.
5 years ago
Andrew Belt
05df47fbd1
Add Internal struct to ModuleWidget.
5 years ago
Andrew Belt
ae19e33774
Make PortInfo a virtual class.
5 years ago
Andrew Belt
4a462fadc5
Add "Connected to" to PortTooltip.
5 years ago
Andrew Belt
90e70060c3
Add manualUrl to plugin::Model.
5 years ago
Andrew Belt
0dbce1683d
Work on PortTooltips.
5 years ago
Andrew Belt
ccb4fe41ec
Add ParamWidget::appendContextMenu(). Fix helper.hpp member field setting.
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
4936df2c0b
Move ParamWidget/Knob/Switch properties to ParamQuantity. Fix static linking on Linux.
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