commit 73e2dd98b3e8e95cf50b1d6a88733ef7d3597506
parent 0358eba8d2beece08d69f47b2f738fa18b182d97
Author: Matt Demanett <matt@demanett.net>
Date: Sun, 18 Feb 2018 00:52:48 -0500
Test/template panels in various widths.
Diffstat:
38 files changed, 1071 insertions(+), 4 deletions(-)
diff --git a/res-src/EightHP-src.svg b/res-src/EightHP-src.svg
@@ -0,0 +1,38 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="120"
+ height="380"
+ viewBox="0 0 120 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 119,1 119,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 119.5,0.5 119.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 120,0 120,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <text class="title" x="50" y="17" font-size="9pt" letter-spacing="3px">8HP8HP</text>
+ <g transform="translate(5.5 374)">
+ <text class="brand" font-size="6.5pt" letter-spacing="2px">BOGAUDIO</text>
+ <rect width="1.5" height="2" fill="#ddd" transform="translate(21 -4)" />
+ </g>
+</svg>
diff --git a/res-src/EighteenHP-src.svg b/res-src/EighteenHP-src.svg
@@ -0,0 +1,38 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="270"
+ height="380"
+ viewBox="0 0 270 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 269,1 269,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 269.5,0.5 269.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 270,0 270,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <text class="title" x="44" y="19" font-size="12pt" letter-spacing="4px">18HP-18HP-18HP</text>
+ <g transform="translate(95 374)">
+ <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text>
+ <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" />
+ </g>
+</svg>
diff --git a/res-src/FifteenHP-src.svg b/res-src/FifteenHP-src.svg
@@ -0,0 +1,38 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="225"
+ height="380"
+ viewBox="0 0 225 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 224,1 224,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 224.5,0.5 224.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 225,0 225,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <text class="title" x="54" y="19" font-size="12pt" letter-spacing="4px">15HP-15HP</text>
+ <g transform="translate(72.5 374)">
+ <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text>
+ <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" />
+ </g>
+</svg>
diff --git a/res-src/SixHP-src.svg b/res-src/SixHP-src.svg
@@ -27,12 +27,12 @@
<rect width="100%" height="100%" fill="#ddd" />
<polyline points="1,1 89,1 89,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
- <polyline points="0.5,0.5 149.5,0.5 149.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
- <polyline points="0,0 150,0 150,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+ <polyline points="0.5,0.5 89.5,0.5 89.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 90,0 90,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
<text class="title" x="20" y="17" font-size="9pt" letter-spacing="3px">6HP6HP</text>
<g transform="translate(5.5 374)">
<text class="brand" font-size="6.5pt" letter-spacing="2px">BOGAUDIO</text>
- <rect width="1.5" height="2" fill="#ddd" transform="translate(20.5 -4)" />
+ <rect width="1.5" height="2" fill="#ddd" transform="translate(21 -4)" />
</g>
</svg>
diff --git a/res-src/TenHP-src.svg b/res-src/TenHP-src.svg
@@ -0,0 +1,38 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="150"
+ height="380"
+ viewBox="0 0 150 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 149,1 149,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 149.5,0.5 149.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 150,0 150,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <text class="title" x="22" y="19" font-size="12pt" letter-spacing="4px">10HP10HP</text>
+ <g transform="translate(35.5 374)">
+ <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text>
+ <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" />
+ </g>
+\</svg>
diff --git a/res-src/ThirteenHP-src.svg b/res-src/ThirteenHP-src.svg
@@ -0,0 +1,38 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="195"
+ height="380"
+ viewBox="0 0 195 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 194,1 194,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 194.5,0.5 194.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 195,0 195,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <text class="title" x="39" y="19" font-size="12pt" letter-spacing="4px">13HP-13HP</text>
+ <g transform="translate(58 374)">
+ <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text>
+ <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" />
+ </g>
+</svg>
diff --git a/res-src/ThirtyHP-src.svg b/res-src/ThirtyHP-src.svg
@@ -0,0 +1,38 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="450"
+ height="380"
+ viewBox="0 0 450 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 449,1 449,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 449.5,0.5 449.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 450,0 450,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <text class="title" x="47" y="19" font-size="12pt" letter-spacing="4px">THIRTY(30) HP - THIRTY(30) HP</text>
+ <g transform="translate(185 374)">
+ <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text>
+ <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" />
+ </g>
+</svg>
diff --git a/res-src/ThreeHP-src.svg b/res-src/ThreeHP-src.svg
@@ -0,0 +1,40 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="45"
+ height="380"
+ viewBox="0 0 45 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 44,1 44,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 44.5,0.5 44.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 45,0 45,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <g transform="rotate(-90) translate(-376 13)">
+ <text class="title" font-size="7pt" letter-spacing="2.5px">3HP</text>
+ <g transform="translate(0 12)">
+ <text class="brand" font-size="7pt" letter-spacing="2px">BGA</text>
+ <rect width="3.0" height="3" fill="#ddd" transform="translate(11.5 -5)" />
+ </g>
+ </g>
+</svg>
diff --git a/res-src/TwelveHP-src.svg b/res-src/TwelveHP-src.svg
@@ -0,0 +1,38 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="180"
+ height="380"
+ viewBox="0 0 180 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 179,1 179,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 179.5,0.5 179.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 180,0 180,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <text class="title" x="32" y="19" font-size="12pt" letter-spacing="4px">12HP-12HP</text>
+ <g transform="translate(50 374)">
+ <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text>
+ <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" />
+ </g>
+\</svg>
diff --git a/res-src/TwentyFiveHP-src.svg b/res-src/TwentyFiveHP-src.svg
@@ -0,0 +1,38 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="375"
+ height="380"
+ viewBox="0 0 375 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 374,1 374,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 374.5,0.5 374.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 375,0 375,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <text class="title" x="58" y="19" font-size="12pt" letter-spacing="4px">25HP-25HP-25HP-25HP</text>
+ <g transform="translate(148 374)">
+ <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text>
+ <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" />
+ </g>
+</svg>
diff --git a/res-src/TwentyHP-src.svg b/res-src/TwentyHP-src.svg
@@ -0,0 +1,38 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="300"
+ height="380"
+ viewBox="0 0 300 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 299,1 299,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 299.5,0.5 299.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 300,0 300,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <text class="title" x="55" y="19" font-size="12pt" letter-spacing="4px">20HP-20HP-20HP</text>
+ <g transform="translate(110 374)">
+ <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text>
+ <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" />
+ </g>
+</svg>
diff --git a/res-src/TwentyTwoHP-src.svg b/res-src/TwentyTwoHP-src.svg
@@ -0,0 +1,38 @@
+<svg
+ version="1.1"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ width="330"
+ height="380"
+ viewBox="0 0 330 380"
+>
+ <style>
+ text {
+ fill: #333;
+ font-family: 'Roboto', sans-serif;
+ font-weight: bold;
+ }
+ text.title {
+ font-family: 'Comfortaa', sans-serif;
+ font-weight: normal;
+ }
+ text.brand {
+ font-family: 'Audiowide', sans-serif;
+ font-weight: bold;
+ }
+ </style>
+
+ <defs>
+ </defs>
+
+ <rect width="100%" height="100%" fill="#ddd" />
+ <polyline points="1,1 329,1 329,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" />
+ <polyline points="0.5,0.5 329.5,0.5 329.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" />
+ <polyline points="0,0 330,0 330,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" />
+
+ <text class="title" x="70" y="19" font-size="12pt" letter-spacing="4px">22HP-22HP-22HP</text>
+ <g transform="translate(125 374)">
+ <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text>
+ <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" />
+ </g>
+</svg>
diff --git a/res/EightHP.svg b/res/EightHP.svg
Binary files differ.
diff --git a/res/EighteenHP.svg b/res/EighteenHP.svg
Binary files differ.
diff --git a/res/FifteenHP.svg b/res/FifteenHP.svg
Binary files differ.
diff --git a/res/SixHP.svg b/res/SixHP.svg
Binary files differ.
diff --git a/res/TenHP.svg b/res/TenHP.svg
Binary files differ.
diff --git a/res/ThirteenHP.svg b/res/ThirteenHP.svg
Binary files differ.
diff --git a/res/ThirtyHP.svg b/res/ThirtyHP.svg
Binary files differ.
diff --git a/res/ThreeHP.svg b/res/ThreeHP.svg
Binary files differ.
diff --git a/res/TwelveHP.svg b/res/TwelveHP.svg
Binary files differ.
diff --git a/res/TwentyFiveHP.svg b/res/TwentyFiveHP.svg
Binary files differ.
diff --git a/res/TwentyHP.svg b/res/TwentyHP.svg
Binary files differ.
diff --git a/res/TwentyTwoHP.svg b/res/TwentyTwoHP.svg
Binary files differ.
diff --git a/scripts/svg_widgets.rb b/scripts/svg_widgets.rb
@@ -265,7 +265,7 @@ def make_screws(hp, comments, indent)
if hp <= 6
ss << 'addChild(Widget::create<ScrewSilver>(Vec(0, 0)));'
ss << 'addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365)));'
- elsif hp <= 10
+ elsif hp <= 13
ss << 'addChild(Widget::create<ScrewSilver>(Vec(0, 0)));'
ss << 'addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 0)));'
ss << 'addChild(Widget::create<ScrewSilver>(Vec(0, 365)));'
diff --git a/src/EightHP.cpp b/src/EightHP.cpp
@@ -0,0 +1,55 @@
+
+#include "bogaudio.hpp"
+
+struct EightHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ EightHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void EightHP::onReset() {
+}
+
+void EightHP::step() {
+}
+
+
+struct EightHPWidget : ModuleWidget {
+ EightHPWidget(EightHP* module);
+};
+
+EightHPWidget::EightHPWidget(EightHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 8, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/EightHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(0, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365)));
+}
+
+
+Model* modelEightHP = Model::create<EightHP, EightHPWidget>("Bogaudio", "Bogaudio-EightHP", "8HP");
diff --git a/src/EighteenHP.cpp b/src/EighteenHP.cpp
@@ -0,0 +1,57 @@
+
+#include "bogaudio.hpp"
+
+struct EighteenHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ EighteenHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void EighteenHP::onReset() {
+}
+
+void EighteenHP::step() {
+}
+
+
+struct EighteenHPWidget : ModuleWidget {
+ EighteenHPWidget(EighteenHP* module);
+};
+
+EighteenHPWidget::EighteenHPWidget(EighteenHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 18, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/EighteenHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(15, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(15, 365)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365)));
+}
+
+
+Model* modelEighteenHP = Model::create<EighteenHP, EighteenHPWidget>("Bogaudio", "Bogaudio-EighteenHP", "18HP");
diff --git a/src/FifteenHP.cpp b/src/FifteenHP.cpp
@@ -0,0 +1,57 @@
+
+#include "bogaudio.hpp"
+
+struct FifteenHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ FifteenHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void FifteenHP::onReset() {
+}
+
+void FifteenHP::step() {
+}
+
+
+struct FifteenHPWidget : ModuleWidget {
+ FifteenHPWidget(FifteenHP* module);
+};
+
+FifteenHPWidget::FifteenHPWidget(FifteenHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 15, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/FifteenHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(15, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(15, 365)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365)));
+}
+
+
+Model* modelFifteenHP = Model::create<FifteenHP, FifteenHPWidget>("Bogaudio", "Bogaudio-FifteenHP", "15HP");
diff --git a/src/TenHP.cpp b/src/TenHP.cpp
@@ -0,0 +1,57 @@
+
+#include "bogaudio.hpp"
+
+struct TenHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ TenHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void TenHP::onReset() {
+}
+
+void TenHP::step() {
+}
+
+
+struct TenHPWidget : ModuleWidget {
+ TenHPWidget(TenHP* module);
+};
+
+TenHPWidget::TenHPWidget(TenHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 10, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/TenHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(0, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(0, 365)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365)));
+}
+
+
+Model* modelTenHP = Model::create<TenHP, TenHPWidget>("Bogaudio", "Bogaudio-TenHP", "10HP");
diff --git a/src/ThirteenHP.cpp b/src/ThirteenHP.cpp
@@ -0,0 +1,57 @@
+
+#include "bogaudio.hpp"
+
+struct ThirteenHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ ThirteenHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void ThirteenHP::onReset() {
+}
+
+void ThirteenHP::step() {
+}
+
+
+struct ThirteenHPWidget : ModuleWidget {
+ ThirteenHPWidget(ThirteenHP* module);
+};
+
+ThirteenHPWidget::ThirteenHPWidget(ThirteenHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 13, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/ThirteenHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(0, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(0, 365)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365)));
+}
+
+
+Model* modelThirteenHP = Model::create<ThirteenHP, ThirteenHPWidget>("Bogaudio", "Bogaudio-ThirteenHP", "13HP");
diff --git a/src/ThirtyHP.cpp b/src/ThirtyHP.cpp
@@ -0,0 +1,57 @@
+
+#include "bogaudio.hpp"
+
+struct ThirtyHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ ThirtyHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void ThirtyHP::onReset() {
+}
+
+void ThirtyHP::step() {
+}
+
+
+struct ThirtyHPWidget : ModuleWidget {
+ ThirtyHPWidget(ThirtyHP* module);
+};
+
+ThirtyHPWidget::ThirtyHPWidget(ThirtyHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 30, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/ThirtyHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(15, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(15, 365)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365)));
+}
+
+
+Model* modelThirtyHP = Model::create<ThirtyHP, ThirtyHPWidget>("Bogaudio", "Bogaudio-ThirtyHP", "30HP");
diff --git a/src/ThreeHP.cpp b/src/ThreeHP.cpp
@@ -0,0 +1,55 @@
+
+#include "bogaudio.hpp"
+
+struct ThreeHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ ThreeHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void ThreeHP::onReset() {
+}
+
+void ThreeHP::step() {
+}
+
+
+struct ThreeHPWidget : ModuleWidget {
+ ThreeHPWidget(ThreeHP* module);
+};
+
+ThreeHPWidget::ThreeHPWidget(ThreeHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 3, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/ThreeHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(0, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365)));
+}
+
+
+Model* modelThreeHP = Model::create<ThreeHP, ThreeHPWidget>("Bogaudio", "Bogaudio-ThreeHP", "3HP");
diff --git a/src/TwelveHP.cpp b/src/TwelveHP.cpp
@@ -0,0 +1,57 @@
+
+#include "bogaudio.hpp"
+
+struct TwelveHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ TwelveHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void TwelveHP::onReset() {
+}
+
+void TwelveHP::step() {
+}
+
+
+struct TwelveHPWidget : ModuleWidget {
+ TwelveHPWidget(TwelveHP* module);
+};
+
+TwelveHPWidget::TwelveHPWidget(TwelveHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 12, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/TwelveHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(0, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(0, 365)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365)));
+}
+
+
+Model* modelTwelveHP = Model::create<TwelveHP, TwelveHPWidget>("Bogaudio", "Bogaudio-TwelveHP", "12HP");
diff --git a/src/TwentyFiveHP.cpp b/src/TwentyFiveHP.cpp
@@ -0,0 +1,57 @@
+
+#include "bogaudio.hpp"
+
+struct TwentyFiveHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ TwentyFiveHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void TwentyFiveHP::onReset() {
+}
+
+void TwentyFiveHP::step() {
+}
+
+
+struct TwentyFiveHPWidget : ModuleWidget {
+ TwentyFiveHPWidget(TwentyFiveHP* module);
+};
+
+TwentyFiveHPWidget::TwentyFiveHPWidget(TwentyFiveHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 25, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/TwentyFiveHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(15, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(15, 365)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365)));
+}
+
+
+Model* modelTwentyFiveHP = Model::create<TwentyFiveHP, TwentyFiveHPWidget>("Bogaudio", "Bogaudio-TwentyFiveHP", "25HP");
diff --git a/src/TwentyHP.cpp b/src/TwentyHP.cpp
@@ -0,0 +1,57 @@
+
+#include "bogaudio.hpp"
+
+struct TwentyHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ TwentyHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void TwentyHP::onReset() {
+}
+
+void TwentyHP::step() {
+}
+
+
+struct TwentyHPWidget : ModuleWidget {
+ TwentyHPWidget(TwentyHP* module);
+};
+
+TwentyHPWidget::TwentyHPWidget(TwentyHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 20, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/TwentyHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(15, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(15, 365)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365)));
+}
+
+
+Model* modelTwentyHP = Model::create<TwentyHP, TwentyHPWidget>("Bogaudio", "Bogaudio-TwentyHP", "20HP");
diff --git a/src/TwentyTwoHP.cpp b/src/TwentyTwoHP.cpp
@@ -0,0 +1,57 @@
+
+#include "bogaudio.hpp"
+
+struct TwentyTwoHP : Module {
+ enum ParamsIds {
+ NUM_PARAMS
+ };
+
+ enum InputsIds {
+ NUM_INPUTS
+ };
+
+ enum OutputsIds {
+ NUM_OUTPUTS
+ };
+
+ enum LightsIds {
+ NUM_LIGHTS
+ };
+
+ TwentyTwoHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
+ onReset();
+ }
+
+ virtual void onReset() override;
+ virtual void step() override;
+};
+
+void TwentyTwoHP::onReset() {
+}
+
+void TwentyTwoHP::step() {
+}
+
+
+struct TwentyTwoHPWidget : ModuleWidget {
+ TwentyTwoHPWidget(TwentyTwoHP* module);
+};
+
+TwentyTwoHPWidget::TwentyTwoHPWidget(TwentyTwoHP* module) : ModuleWidget(module) {
+ box.size = Vec(RACK_GRID_WIDTH * 22, RACK_GRID_HEIGHT);
+
+ {
+ SVGPanel *panel = new SVGPanel();
+ panel->box.size = box.size;
+ panel->setBackground(SVG::load(assetPlugin(plugin, "res/TwentyTwoHP.svg")));
+ addChild(panel);
+ }
+
+ addChild(Widget::create<ScrewSilver>(Vec(15, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(15, 365)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365)));
+}
+
+
+Model* modelTwentyTwoHP = Model::create<TwentyTwoHP, TwentyTwoHPWidget>("Bogaudio", "Bogaudio-TwentyTwoHP", "22HP");
diff --git a/src/bogaudio.cpp b/src/bogaudio.cpp
@@ -29,6 +29,18 @@ void init(rack::Plugin *p) {
#ifdef TEST
p->addModel(modelTest);
+
+ p->addModel(modelThreeHP);
p->addModel(modelSixHP);
+ p->addModel(modelEightHP);
+ p->addModel(modelTenHP);
+ p->addModel(modelTwelveHP);
+ p->addModel(modelThirteenHP);
+ p->addModel(modelFifteenHP);
+ p->addModel(modelEighteenHP);
+ p->addModel(modelTwentyHP);
+ p->addModel(modelTwentyTwoHP);
+ p->addModel(modelTwentyFiveHP);
+ p->addModel(modelThirtyHP);
#endif
}
diff --git a/src/bogaudio.hpp b/src/bogaudio.hpp
@@ -35,4 +35,16 @@ extern Model* modelSwitch;
extern Model* modelVCA;
extern Model* modelTest;
+
+extern Model* modelThreeHP;
extern Model* modelSixHP;
+extern Model* modelEightHP;
+extern Model* modelTenHP;
+extern Model* modelTwelveHP;
+extern Model* modelThirteenHP;
+extern Model* modelFifteenHP;
+extern Model* modelEighteenHP;
+extern Model* modelTwentyHP;
+extern Model* modelTwentyTwoHP;
+extern Model* modelTwentyFiveHP;
+extern Model* modelThirtyHP;