Andrew Belt
|
b5d7a12448
|
Make AudioInterface handle devices with 0 inputs or 0 outputs better. Clear engine buffers more aggressively, especially for the primary module.
|
3 years ago |
Andrew Belt
|
df68876d16
|
Make INTERNAL macro use hidden visibility instead of internal.
|
3 years ago |
Andrew Belt
|
357bd847bf
|
Rename PRIVATE macro to INTERNAL.
|
3 years ago |
Andrew Belt
|
5f8f9b8e35
|
Change `bypass` variable name to `bypassed` when appropriate.
|
3 years ago |
Andrew Belt
|
317b9125b6
|
Make ReadWriteLock non-recursive and add *_NoLock() methods to Engine as needed.
Split Module::bypass() into isBypass/setBypass().
Add more documentation to Engine methods.
|
3 years ago |
Andrew Belt
|
2f5ce16ce8
|
No longer require that a primary Module belongs to the Engine.
|
3 years ago |
Andrew Belt
|
86f3658b51
|
Add `Exception::Exception(const char* format, ...)` so you can create Exception objects using C format strings.
|
3 years ago |
Andrew Belt
|
9f04e56106
|
AudioInterface: Set primary module after instead of before adding to the Engine (WIP).
|
3 years ago |
Andrew Belt
|
90ada5c532
|
Add Engine::setSuggestedSampleRate(). Make ReadWriteLock support recursive writes.
|
3 years ago |
Andrew Belt
|
169c80e422
|
Use ⌘ instead of Cmd for key command names on Mac.
|
3 years ago |
Andrew Belt
|
4c7c5b1694
|
Add auto engine sample rate setting.
|
3 years ago |
Andrew Belt
|
e9dee76a41
|
Add Port::getOffset() and setOffset().
|
3 years ago |
Andrew Belt
|
4626dea31f
|
Use float instead of int for sample rates in audio:: namespace.
|
3 years ago |
Andrew Belt
|
b9594bb07b
|
Use PRId64 for portability of printf format strings on Linux and Windows.
|
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
|
754319c3ce
|
Add Window::step().
|
3 years ago |
Andrew Belt
|
f0753792b8
|
Rename "step" terminology of Engine to "block". Tweak ModuleWidget meter appearance.
|
3 years ago |
Andrew Belt
|
7003adffe2
|
Move module stepping code from Engine to Module. Change meter to a time plot.
|
3 years ago |
Andrew Belt
|
2a1bbf4ae3
|
Rename system::getRuntime() to getTime().
|
3 years ago |
Andrew Belt
|
f1b4fdce81
|
Make logger aware of format string so it gives warnings if format is malformed.
|
3 years ago |
Andrew Belt
|
1fdbf71bb7
|
Add PRIVATE macro.
|
3 years ago |
Andrew Belt
|
1927def7e1
|
Implement all sorting options to module browser.
|
3 years ago |
Andrew Belt
|
ac0588c0f8
|
Rewrite module browser's ModelBox to support changing zoom. Add FramebufferWidget::setDirty().
|
3 years ago |
Andrew Belt
|
e2e33c09c6
|
Add "moduleUsages", "moduleBrowserSort", and "moduleBrowserZoom" to settings. Make module browser's SortButton and ZoomButton control these settings.
|
3 years ago |
Andrew Belt
|
790e1053cc
|
Rename system::getTime() to getRuntime(). Add system::getUnixTime().
|
3 years ago |
Andrew Belt
|
11721cab00
|
Add WIP Engine::step() timer. Fix module timer.
|
3 years ago |
Andrew Belt
|
a93ebf8e28
|
Enable MenuOverlay darkening again. Use MenuOverlay subclass for
ModuleBrowser. Consume all keys/buttons in MenuOverlay.
|
3 years ago |
Andrew Belt
|
7efd063392
|
Change timestamps from int64_t to double, and define epoch as when `system::init()` is called.
|
3 years ago |
Andrew Belt
|
a5c5cdd302
|
Rearrange Library menu items. Change library plugin update period to 15 seconds.
|
4 years ago |
Andrew Belt
|
b3d8f4f997
|
Delete instead of hide TipWindow (and its overlay) when closing.
|
4 years ago |
Andrew Belt
|
f79090407d
|
Add ui::OptionButton. Replace ShowButton with OptionButton in tip window. Add a few tips.
|
4 years ago |
Andrew Belt
|
847b743148
|
Add ModularGrid link to module Info menu. Add more tips to tip window.
|
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
|
e9848d6d9c
|
Add auto-updating of plugins with a 60-second interval. Refactor updating and syncing of plugins.
|
4 years ago |
Andrew Belt
|
3aaca9f90d
|
Add Widget::getVisibleChildrenBoundingBox(). Scroll ScrollWidget only if content can be scrolled.
|
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
|
18f8283e34
|
Rename ui::ScrollBar to Scrollbar. (Wikipedia says "scrollbar" rather than "scroll bar".)
|
4 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
|
8bfa54bbe9
|
Add "Library > Check for plugin updates" and "Help > Check for VCV Rack update" menu items.
Rename "checkAppUpdates" setting to "autoCheckUpdates".
Make it disable/enable plugin updates in addition to app update.
|
4 years ago |
Andrew Belt
|
77c68c5602
|
Fix correctness error in CaseInsensitiveCompare::operator() by rolling my own implementation.
|
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
|
f3c8262183
|
Make Module always deserialize "id", "leftModuleId", and "rightModuleId". Due to this, make pasting and cloning modules delete these properties from the JSON before `fromJson()` is called.
|
4 years ago |
Andrew Belt
|
06c6590b51
|
Implement Module::ExpanderChangeEvent event trigger.
|
4 years ago |
Andrew Belt
|
fe9fbf8e90
|
Make `Exception` subclass `std::exception` instead of `std::runtime_error`.
|
4 years ago |
Andrew Belt
|
4edd00d855
|
Don't use atomic for WeakPtr reference count.
|
4 years ago |