Andrew Belt
4a904d4950
Rename ParamQuantity::set/getDirectValue() to set/getImmediateValue().
Use setImmediateValue() when appropriate in ParamQuantity and SwitchQuantity, such as in reset(), randomize(), and setDisplayValue().
Add doc comments to ParamQuantity.
2 years ago
Andrew Belt
cdaea345d3
Make ParamQuantity::set/getValue() set/get the target value of engine smoothing instead of the value directly. Add ParamQuantity::set/getDirectValue(). Deprecate ParamQuantity::set/getSmoothValue().
2 years ago
Andrew Belt
1f0e27749e
Allow SwitchQuantity first index to start at value other than 0.
3 years ago
Andrew Belt
90d395ae8b
Add Quantity::toScaled() and fromScaled(). Clean up Quantity and ParamQuantity.
3 years ago
Andrew Belt
c08c6e365a
Add ParamQuantity::smoothEnabled.
3 years ago
Andrew Belt
de3f42edc1
Rename Engine::setParam() etc to Engine::setParamValue() etc.
3 years ago
Andrew Belt
b9d91b85af
Add ParamQuantity::getScaledValue().
3 years ago
Andrew Belt
4f98870e88
Add ParamQuantity::setSmoothScaledValue().
3 years ago
Andrew Belt
4734f13ba8
Silently fail is user enters a NAN expression in parameter field.
3 years ago
Andrew Belt
697571648d
Set default component ID to -1 in all classes.
3 years ago
Andrew Belt
cb65043538
Add virtual ParamQuantity::toJson() and fromJson() so plugins can override JSON serialization behavior of params.
4 years ago
Andrew Belt
9086c1aeed
Hide ParamResetItem if param is unbounded.
5 years ago
Andrew Belt
4e766a7eca
Don't randomize ParamQuantity if unbounded.
5 years ago
Andrew Belt
8ace079ee5
Fix randomization of snapped params.
5 years ago
Andrew Belt
f819bd4255
Use menu items for selecting SwitchQuantity params.
5 years ago
Andrew Belt
87935d7e6f
Add SwitchQuantity. Add return value to config*() methods in Module.
5 years ago
Andrew Belt
ca9231e1b3
Rename App to Context and app.hpp to context.hpp. The APP macro is still valid.
5 years ago
Andrew Belt
804dc4daf2
Interpret blank ParamQuantity/PortInfo name as "#id".
5 years ago
Andrew Belt
ef89a96c87
Change ParamQuantity/PortInfo label to name.
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
Andrew Belt
dca30e2b53
Auto-format code with astyle.
5 years ago
Andrew Belt
7cb85d543c
Allow ParamQuantity::displayMultiplier to be 0.
5 years ago
Andrew Belt
696939069d
Use <> instead of "" for include directive.
6 years ago
Andrew Belt
a7ec68e4f0
Log OS version on launch
6 years ago
Andrew Belt
357952c3d3
Move all metadata from Param to ParamQuantity.
6 years ago
Andrew Belt
6660c88885
Change app::ParamQuantity to engine::ParamQuantity.
6 years ago
Andrew Belt
b932a8d87c
Move ui::Quantity to Quantity.
6 years ago
Andrew Belt
445686b89d
Allow Param limits with min > max
6 years ago
Andrew Belt
6d755381f9
Reset double-click state after DoubleClickEvent is fired. Fix Knob resetting.
6 years ago
Andrew Belt
3634059dcd
Revise Param documentation. Fix Param::getDisplayValue() formula for logarithmic bases.
6 years ago
Andrew Belt
da4110367a
Move DSP window functions to window.hpp. Use 0-indexed module/cable IDs instead of 1-indexed. Unserialize module/cable IDs as they are in the patch file.
6 years ago
Andrew Belt
64602576b0
Create `engine::` namespace
6 years ago
Andrew Belt
8a5a806425
Add app::, ui::, and widget:: namespaces.
6 years ago
Andrew Belt
6d86a8280c
Add convenience methods to Port. Draw blue plug lights for polyphonic ports.
6 years ago
Andrew Belt
0f08886aae
Add Param::displayOffset. Switch around param key commands and param context menu again.
6 years ago
Andrew Belt
6a83a3c766
Add SliderKnob as SVGSlider's superclass. Add logarithmic scaling too ParamQuantity
6 years ago
Andrew Belt
445e5e6d6b
Fix history for momentary Switches, remove `virtual` from Core structs
6 years ago
Andrew Belt
1f030a16fd
Add -funsafe-math-optimizations, tweak Quantity display string
6 years ago
Andrew Belt
ec83a4dacb
Improve behavior for unbounded params
6 years ago
Andrew Belt
38c291b365
Merge ParamInfo with Param
6 years ago
Andrew Belt
6dad6ec000
Add param smoothing when moving Knob
6 years ago
Andrew Belt
cb7e139b47
Make power meter display in microseconds instead of millisamples. Add history::ComplexAction. Split Param into Param and ParamInfo. Rename setup() to config().
6 years ago
Andrew Belt
87cc6e3edb
Param event tweaking
6 years ago
Andrew Belt
4c23dc9cc0
Added param value entry. Make ParamQuantity automatically compute its displayPrecision.
6 years ago
Andrew Belt
3f2476073d
Fix Core Blank panel
6 years ago
Andrew Belt
a6961d6626
Tear down old Module Browser, make app widgets and Core plugins compatible with NULL Module
6 years ago
Andrew Belt
f5601d2042
Work on toolbar, event context
6 years ago
Andrew Belt
960ac66b73
Fix event drag handling, fix ParamQuantity and tweak its API
6 years ago