From 8087b81e0e98816e8bec9f5fed7881376672b797 Mon Sep 17 00:00:00 2001 From: Andrew Belt Date: Tue, 21 Sep 2021 06:33:09 -0400 Subject: [PATCH] Add "Draw custom light-like widgets at full brightness" section to Migrate2. --- Migrate2.md | 26 +++++++++++++++++++++----- images/dark-scope.png | Bin 0 -> 29985 bytes 2 files changed, 21 insertions(+), 5 deletions(-) create mode 100644 images/dark-scope.png diff --git a/Migrate2.md b/Migrate2.md index 4b36e1f..8cb13fc 100644 --- a/Migrate2.md +++ b/Migrate2.md @@ -79,6 +79,8 @@ Search and replace: perl -p -i -e 's/APP->window->loadSvg\b/Svg::load/g' src/*.{cpp,hpp} ``` +If your plugin still has build errors, open a thread in the [VCV development forum](https://community.vcvrack.com/c/development/8) or contact [VCV support](https://vcvrack.com/support) to describe your build error. + ## 2) Potential runtime bugs You might encounter these issues while testing. @@ -105,8 +107,7 @@ void draw(const DrawArgs& args) override { ## 3) New optional v2 API features While not required, these new API features in Rack 2 can enhance the usability of your modules. - -### 3.2) Add Port and Light labels +### 3.1) Add Port and Light labels Add names to your ports and lights which appear in tooltips. For example, in your `Module` constructor: @@ -117,7 +118,7 @@ configLight(PHASE_LIGHT, "Phase"); ``` -### 3.3) Replace `configParam()` with `configButton()` or `configSwitch()` as applicable +### 3.2) Replace `configParam()` with `configButton()` or `configSwitch()` as applicable For momentary buttons and multi-state switches, displaying a real-valued parameter to the user doesn't make much sense. Instead, use `configButton()` to hide the text field in its context menu, or `configSwitch()` to offer a list of choices. @@ -127,7 +128,7 @@ configSwitch(SYNC_PARAM, "Sync mode", {"Soft", "Hard"}); ``` -### 3.4) Add bypass routes +### 3.3) Add bypass routes If your module is bypassed by the user (via the context menu or key command), you can route certain inputs directly to outputs, bypassing all processing. This would make sense for a filter or reverb, or even a clock divider or quantizer, but it would not make sense for a VCO, since it generates a signal rather than processes one. @@ -140,7 +141,7 @@ configBypass(RIGHT_INPUT, RIGHT_OUTPUT); Alternatively, override `Module::processBypass()` to implement custom bypass behavior. -### 3.5) Store large data in the module's patch storage directory +### 3.4) Store large data in the module's patch storage directory Instead of serializing large (>100 KB) buffers in `toJson/fromJson()` methods which could lag the UI, read/write to the directory returned by `createPatchStorageDirectory()` and `getPatchStorageDirectory()`. Example: @@ -156,3 +157,18 @@ void onSave(const SaveEvent& e) override { } ``` Note: You cannot call these methods in the `Module` constructor since it is not added to the Engine at that point. + + +### 3.5) Draw custom light-like widgets at full brightness + +![](images/dark-scope.png) + +Rack 2 allows users to decrease the brightness of the rack, leaving lights at full brightness. + +If your custom widget should emit light, set the global tint to white in its `draw()` method. +```cpp +void draw(const DrawArgs& args) override { + nvgGlobalTint(args.vg, color::WHITE); + ... +} +``` diff --git a/images/dark-scope.png b/images/dark-scope.png new file mode 100644 index 0000000000000000000000000000000000000000..010f80aa6f5d3e171fcf743ef8326375e729e73a GIT binary patch literal 29985 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 QpFRbtC~7EFpv;5+2XG1?g8%>k literal 0 HcmV?d00001