commit 279d04a25b83530f552eaa838ca68ebe6229491d
parent 93ca8f9e9527732b877b53d3b6817bc3df5bf0c8
Author: Oli Larkin <olilarkin@googlemail.com>
Date: Sun, 25 Jun 2023 21:09:42 +0200
Tidy up the layout code, naming "Areas" etc
Diffstat:
1 file changed, 22 insertions(+), 22 deletions(-)
diff --git a/NeuralAmpModeler/NeuralAmpModeler.cpp b/NeuralAmpModeler/NeuralAmpModeler.cpp
@@ -86,7 +86,7 @@ NeuralAmpModeler::NeuralAmpModeler(const InstanceInfo& info)
pGraphics->AttachCornerResizer(EUIResizerMode::Scale, false);
pGraphics->AttachTextEntryControl();
pGraphics->EnableMouseOver(true);
- pGraphics->EnableTooltips(true);
+ pGraphics->EnableTooltips(true);
pGraphics->LoadFont("Roboto-Regular", ROBOTO_FN);
pGraphics->LoadFont("Michroma-Regular", MICHROMA_FN);
@@ -113,17 +113,15 @@ NeuralAmpModeler::NeuralAmpModeler(const InstanceInfo& info)
const auto titleHeight = 50.0f;
const auto titleArea = contentArea.GetFromTop(titleHeight);
- // Area for the Noise gate knob
- const auto allKnobsPad = 20.0f;
-
// Areas for knobs
+ const auto knobsPad = 20.0f;
const auto knobsExtraSpaceBelowTitle = 25.0f;
const auto knobHeight = 120.f;
const auto singleKnobPad = -2.0f;
const auto knobsArea = contentArea.GetFromTop(knobHeight)
- .GetReducedFromLeft(allKnobsPad)
- .GetReducedFromRight(allKnobsPad)
- .GetTranslated(0.0f, titleHeight + knobsExtraSpaceBelowTitle);
+ .GetReducedFromLeft(knobsPad)
+ .GetReducedFromRight(knobsPad)
+ .GetVShifted(titleHeight + knobsExtraSpaceBelowTitle);
const auto inputKnobArea = knobsArea.GetGridCell(0, kInputLevel, 1, numKnobs).GetPadded(-singleKnobPad);
const auto noiseGateArea = knobsArea.GetGridCell(0, kNoiseGateThreshold, 1, numKnobs).GetPadded(-singleKnobPad);
const auto bassKnobArea = knobsArea.GetGridCell(0, kToneBass, 1, numKnobs).GetPadded(-singleKnobPad);
@@ -142,12 +140,17 @@ NeuralAmpModeler::NeuralAmpModeler(const InstanceInfo& info)
const auto modelArea = contentArea.GetFromBottom((2.0f * fileHeight))
.GetFromTop(fileHeight)
.GetMidHPadded(fileWidth)
- .GetTranslated(0.0f, -1);
- const auto irArea = modelArea.GetTranslated(0.0f, irYOffset);
-
+ .GetVShifted(-1);
+ const auto modelIconArea = modelArea.GetFromLeft(30).GetTranslated(-40, 10);
+ const auto irArea = modelArea.GetVShifted(irYOffset);
+ const auto irSwitchArea = irArea.GetFromLeft(30).GetHShifted(-40).GetScaledAboutCentre(0.6);
+
// Areas for meters
const auto inputMeterArea = contentArea.GetFromLeft(30).GetHShifted(-20).GetMidVPadded(100).GetVShifted(-25);
const auto outputMeterArea = contentArea.GetFromRight(30).GetHShifted(20).GetMidVPadded(100).GetVShifted(-25);
+
+ // Misc Areas
+ const auto helpButtonArea = mainArea.GetFromTRHC(50, 50).GetCentredInside(20, 20);
// Model loader button
auto loadModelCompletionHandler = [&](const WDL_String& fileName, const WDL_String& path) {
@@ -191,7 +194,7 @@ NeuralAmpModeler::NeuralAmpModeler(const InstanceInfo& info)
pGraphics->AttachBackground(BACKGROUND_FN);
pGraphics->AttachControl(new IBitmapControl(b, linesBitmap));
pGraphics->AttachControl(new IVLabelControl(titleArea, "NEURAL AMP MODELER", titleStyle));
- pGraphics->AttachControl(new ISVGControl(modelArea.GetFromLeft(30).GetTranslated(-40, 10), modelIconSVG));
+ pGraphics->AttachControl(new ISVGControl(modelIconArea, modelIconSVG));
#ifdef NAM_PICK_DIRECTORY
const std::string defaultNamFileString = "Select model directory...";
@@ -204,11 +207,11 @@ NeuralAmpModeler::NeuralAmpModeler(const InstanceInfo& info)
"nam", loadModelCompletionHandler, style, fileSVG,
crossSVG, leftArrowSVG, rightArrowSVG, fileBackgroundBitmap),
kCtrlTagModelFileBrowser);
- pGraphics->AttachControl(new ISVGSwitchControl(irArea.GetFromLeft(30).GetTranslated(-40, 0).GetScaledAboutCentre(0.6), { irIconOffSVG, irIconOnSVG}, kIRToggle));
- pGraphics->AttachControl(
- new NAMFileBrowserControl(irArea, kMsgTagClearModel, defaultIRString.c_str(), "wav", loadIRCompletionHandler,
- style, fileSVG, crossSVG, leftArrowSVG, rightArrowSVG, fileBackgroundBitmap),
- kCtrlTagIRFileBrowser);
+ pGraphics->AttachControl(new ISVGSwitchControl(irSwitchArea, { irIconOffSVG, irIconOnSVG}, kIRToggle));
+ pGraphics->AttachControl(new NAMFileBrowserControl(irArea, kMsgTagClearModel, defaultIRString.c_str(), "wav",
+ loadIRCompletionHandler, style,
+ fileSVG, crossSVG, leftArrowSVG, rightArrowSVG, fileBackgroundBitmap),
+ kCtrlTagIRFileBrowser);
pGraphics->AttachControl(new NAMSwitchControl(ngToggleArea, kNoiseGateActive, " ", style, switchHandleBitmap));
pGraphics->AttachControl(new NAMSwitchControl(eqToggleArea, kEQActive, "EQ", style, switchHandleBitmap));
pGraphics->AttachControl(new NAMSwitchControl(outNormToggleArea, kOutNorm, "Normalize", style, switchHandleBitmap), kCtrlTagOutNorm);
@@ -218,18 +221,15 @@ NeuralAmpModeler::NeuralAmpModeler(const InstanceInfo& info)
pGraphics->AttachControl(new NAMKnobControl(noiseGateArea, kNoiseGateThreshold, "", style, knobBackgroundBitmap));
pGraphics->AttachControl(new NAMKnobControl(bassKnobArea, kToneBass, "", style, knobBackgroundBitmap), -1, "EQ_KNOBS");
pGraphics->AttachControl(new NAMKnobControl(midKnobArea, kToneMid, "", style, knobBackgroundBitmap), -1, "EQ_KNOBS");
- pGraphics->AttachControl(
- new NAMKnobControl(trebleKnobArea, kToneTreble, "", style, knobBackgroundBitmap), -1, "EQ_KNOBS");
+ pGraphics->AttachControl(new NAMKnobControl(trebleKnobArea, kToneTreble, "", style, knobBackgroundBitmap), -1, "EQ_KNOBS");
pGraphics->AttachControl(new NAMKnobControl(outputKnobArea, kOutputLevel, "", style, knobBackgroundBitmap));
// The meters
pGraphics->AttachControl(new NAMMeterControl(inputMeterArea, meterBackgroundBitmap, style), kCtrlTagInputMeter);
pGraphics->AttachControl(new NAMMeterControl(outputMeterArea, meterBackgroundBitmap, style), kCtrlTagOutputMeter);
-
- // Help/about box
- pGraphics->AttachControl(new NAMCircleButtonControl(
- mainArea.GetFromTRHC(50, 50).GetCentredInside(20, 20),
+ // Help/about box
+ pGraphics->AttachControl(new NAMCircleButtonControl(helpButtonArea,
[pGraphics](IControl* pCaller) {
pGraphics->GetControlWithTag(kCtrlTagAboutBox)->As<NAMAboutBoxControl>()->HideAnimated(false);
},