Andrew Belt
3e1466deed
Fix Module Browser sorting algorithms to use model order in plugin as last resort.
3 years ago
Andrew Belt
2b9efc1401
Add string::join(). Reorder models how they are ordered in plugin's manifest. Use list instead of vector for models and tags in plugin::Plugin/Model.
3 years ago
Andrew Belt
aea660c3b9
Fix sort order of query score in Module Browser.
3 years ago
Andrew Belt
f43330e1fe
Add module count label to Module Browser header.
3 years ago
Andrew Belt
42af36fa0b
Make SequentialLayout resize according to its contents. Fix margins of model container in Module Browser.
3 years ago
Andrew Belt
cdc44cda71
Add bgColor to MenuOverlay
3 years ago
Andrew Belt
6ae98b6194
Clean up Module Browser's ModelBox tooltip creation.
3 years ago
Andrew Belt
e51d4387da
To avoid blinding the user when rack brightness is low, draw Module Browser modules with the same brightness.
3 years ago
Andrew Belt
fa5cd69cd7
Reduce number precision of zoom levels in Module Browser.
4 years ago
Andrew Belt
5484126aaa
Change `event::Foo` to `FooEvent`.
4 years ago
Andrew Belt
50ec209578
Only wait for mouse to move before dragging module if it was just created with the module browser.
4 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.
4 years ago
Andrew Belt
5bbd32ccac
When Module Browser creates a module, set the ModuleWidget's dragPos to its center, so dragging is more predictable.
4 years ago
Andrew Belt
322bb0ea6b
Make BrandItem and TagItem disabled if no results would be shown.
4 years ago
Andrew Belt
1927def7e1
Implement all sorting options to module browser.
4 years ago
Andrew Belt
ac0588c0f8
Rewrite module browser's ModelBox to support changing zoom. Add FramebufferWidget::setDirty().
4 years ago
Andrew Belt
e2e33c09c6
Add "moduleUsages", "moduleBrowserSort", and "moduleBrowserZoom" to settings. Make module browser's SortButton and ZoomButton control these settings.
4 years ago
Andrew Belt
9a58bc7ea7
Make BrandItem and TagItem functional.
4 years ago
Andrew Belt
bd66f64c2d
Replace zoom slider with zoom button.
4 years ago
Andrew Belt
b986ff5882
Replace Module Browser sidebar with header. Add multiple tag selection (WIP), zoom (WIP), and sorting options (WIP).
4 years ago
Andrew Belt
a93ebf8e28
Enable MenuOverlay darkening again. Use MenuOverlay subclass for
ModuleBrowser. Consume all keys/buttons in MenuOverlay.
4 years ago
Andrew Belt
25ea79e194
Update fuzzysearchdatabase.
4 years ago
Andrew Belt
f19b5853f3
Implement FuzzySearchDatabase usage for searching in Module Browser.
4 years ago
Andrew Belt
b146f766b9
Refactor plugin syncing in `library::`.
4 years ago
Andrew Belt
76ece72ade
Add `rack::Exception` catching to midi. Add exception throwing to RtMidi driver. Add `rack::getWithDefault()` to common.hpp.
4 years ago
Andrew Belt
feece06fbb
Add event::KeyBase::keyName, which fixes key commands on AZERTY and Dvorak. Add lots of documentation to event::KeyBase.
5 years ago
Andrew Belt
037fd137e7
Reorder description and tags Module Browser module tooltip.
5 years ago
Andrew Belt
120aafe6d3
Change order of includes to C++ standard headers, library headers, and local project headers.
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
8423ce87aa
Add template preset for modules, which are loaded when created from the Module Browser.
5 years ago
Andrew Belt
05df47fbd1
Add Internal struct to ModuleWidget.
5 years ago
Andrew Belt
14d9a8ea82
Add module whitelist to settings and Module Browser.
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
f7f2678f82
Remove ModelBox::deletePreview().
5 years ago
Andrew Belt
0fdad2faa8
Remove ModelBox preview timeout.
5 years ago
Andrew Belt
f8ef68c4f1
Delete ModelBox tooltips in a deferred way to avoid a use-after-free.
5 years ago
Andrew Belt
52d838d28f
Accept backspace key command on key-repeat with Module Browser search box.
5 years ago
Andrew Belt
3b2a12559f
Reorder tag and brand lists in Module Browser
5 years ago
Andrew Belt
469d66024a
Restructure the tag/alias data structure.
5 years ago
Andrew Belt
729b3dc3c9
Move tag lists to tag.cpp.
5 years ago
Andrew Belt
dca30e2b53
Auto-format code with astyle.
5 years ago
Andrew Belt
02bb2990da
Module Browser: Sort modules by order they are added to plugins with `pluginInstance->addModel()`.
5 years ago
Andrew Belt
53dac38d78
Put tags above description in Module Browser tooltip.
5 years ago
Andrew Belt
2fb6c9fc16
Revert to case insensitive sorting of brands in Module Browser.
5 years ago
Andrew Belt
81d3fb7afc
Clear filters in Module Browser when backspace is pressed while the search field is empty.
5 years ago
Andrew Belt
c09191565d
Make brand list case sensitive.
5 years ago
Andrew Belt
10e1016126
Add plugin name to Module Browser search string.
5 years ago
Andrew Belt
2c910ef698
Move module container header outside of scroll widget.
5 years ago
Andrew Belt
93aca3d4cc
Tweak text
5 years ago
Andrew Belt
93a2a480f6
Remove favorites from settings and favorite scoring in Module Browser.
5 years ago