You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
2.5KB

  1. #include "JWModules.hpp"
  2. namespace rack_plugin_JW_Modules {
  3. struct BlankPanel : Module {BlankPanel() : Module(0, 0, 0, 0) {}};
  4. struct BlankPanelSmallWidget : ModuleWidget { BlankPanelSmallWidget(BlankPanel *module); };
  5. struct BlankPanelMediumWidget : ModuleWidget { BlankPanelMediumWidget(BlankPanel *module); };
  6. struct BlankPanelLargeWidget : ModuleWidget { BlankPanelLargeWidget(BlankPanel *module); };
  7. BlankPanelSmallWidget::BlankPanelSmallWidget(BlankPanel *module) : ModuleWidget(module) {
  8. box.size = Vec(15*3, 380);
  9. SVGPanel *panel = new SVGPanel();
  10. panel->box.size = box.size;
  11. panel->setBackground(SVG::load(assetPlugin(plugin, "res/BlankPanelSmall.svg")));
  12. addChild(panel);
  13. addChild(Widget::create<Screw_J>(Vec(16, 0)));
  14. addChild(Widget::create<Screw_W>(Vec(16, 365)));
  15. }
  16. BlankPanelMediumWidget::BlankPanelMediumWidget(BlankPanel *module) : ModuleWidget(module) {
  17. box.size = Vec(15*6, 380);
  18. SVGPanel *panel = new SVGPanel();
  19. panel->box.size = box.size;
  20. panel->setBackground(SVG::load(assetPlugin(plugin, "res/BlankPanelMedium.svg")));
  21. addChild(panel);
  22. addChild(Widget::create<Screw_J>(Vec(16, 0)));
  23. addChild(Widget::create<Screw_J>(Vec(16, 365)));
  24. addChild(Widget::create<Screw_W>(Vec(box.size.x-29, 0)));
  25. addChild(Widget::create<Screw_W>(Vec(box.size.x-29, 365)));
  26. }
  27. BlankPanelLargeWidget::BlankPanelLargeWidget(BlankPanel *module) : ModuleWidget(module) {
  28. box.size = Vec(15*12, 380);
  29. SVGPanel *panel = new SVGPanel();
  30. panel->box.size = box.size;
  31. panel->setBackground(SVG::load(assetPlugin(plugin, "res/BlankPanelLarge.svg")));
  32. addChild(panel);
  33. addChild(Widget::create<Screw_J>(Vec(16, 0)));
  34. addChild(Widget::create<Screw_J>(Vec(16, 365)));
  35. addChild(Widget::create<Screw_W>(Vec(box.size.x-29, 0)));
  36. addChild(Widget::create<Screw_W>(Vec(box.size.x-29, 365)));
  37. }
  38. } // namespace rack_plugin_JW_Modules
  39. using namespace rack_plugin_JW_Modules;
  40. RACK_PLUGIN_MODEL_INIT(JW_Modules, BlankPanelSmall) {
  41. Model *modelBlankPanelSmall = Model::create<BlankPanel, BlankPanelSmallWidget>("JW-Modules", "BlankPanel_SM", "BlankPanel (Small)", VISUAL_TAG);
  42. return modelBlankPanelSmall;
  43. }
  44. RACK_PLUGIN_MODEL_INIT(JW_Modules, BlankPanelMedium) {
  45. Model *modelBlankPanelMedium = Model::create<BlankPanel, BlankPanelMediumWidget>("JW-Modules", "BlankPanel_MD", "BlankPanel (Medium)", VISUAL_TAG);
  46. return modelBlankPanelMedium;
  47. }
  48. RACK_PLUGIN_MODEL_INIT(JW_Modules, BlankPanelLarge) {
  49. Model *modelBlankPanelLarge = Model::create<BlankPanel, BlankPanelLargeWidget>("JW-Modules", "BlankPanel_LG", "BlankPanel (Large)", VISUAL_TAG);
  50. return modelBlankPanelLarge;
  51. }