Browse Source

Proper suppport for log parameters; Minor UI style changes

Signed-off-by: falkTX <falktx@falktx.com>
tags/v1.0
falkTX 3 years ago
parent
commit
f1b22ca1f2
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
2 changed files with 15 additions and 5 deletions
  1. +1
    -1
      dpf-widgets
  2. +14
    -4
      plugins/Common/IldaeilUI.cpp

+ 1
- 1
dpf-widgets

@@ -1 +1 @@
Subproject commit 484141e2a032c8a913dcc3e320b73a2d84a8b338
Subproject commit 7f5969da6597e1cd8f5e469df74d6b97b39114d7

+ 14
- 4
plugins/Common/IldaeilUI.cpp View File

@@ -97,14 +97,15 @@ class IldaeilUI : public UI,
char* name; char* name;
char* format; char* format;
uint32_t rindex; uint32_t rindex;
bool boolean, bvalue;
float min, max;
bool boolean, bvalue, log;
float min, max, power;
Parameter() Parameter()
: name(nullptr), : name(nullptr),
format(nullptr), format(nullptr),
rindex(0), rindex(0),
boolean(false), boolean(false),
bvalue(false), bvalue(false),
log(false),
min(0.0f), min(0.0f),
max(1.0f) {} max(1.0f) {}
~Parameter() ~Parameter()
@@ -170,7 +171,10 @@ public:


std::strcpy(fPluginSearchString, "Search..."); std::strcpy(fPluginSearchString, "Search...");


const double padding = ImGui::GetStyle().WindowPadding.y * 2;
ImGuiStyle& style(ImGui::GetStyle());
style.FrameRounding = 4;

const double padding = style.WindowPadding.y * 2;
const double scaleFactor = getScaleFactor(); const double scaleFactor = getScaleFactor();


if (d_isNotEqual(scaleFactor, 1.0)) if (d_isNotEqual(scaleFactor, 1.0))
@@ -343,6 +347,7 @@ public:
param.format = format.getAndReleaseBuffer(); param.format = format.getAndReleaseBuffer();
param.rindex = i; param.rindex = i;
param.boolean = pdata->hints & PARAMETER_IS_BOOLEAN; param.boolean = pdata->hints & PARAMETER_IS_BOOLEAN;
param.log = pdata->hints & PARAMETER_IS_LOGARITHMIC;
param.min = pranges->min; param.min = pranges->min;
param.max = pranges->max; param.max = pranges->max;
ui->values[j] = carla_get_current_parameter_value(handle, 0, i); ui->values[j] = carla_get_current_parameter_value(handle, 0, i);
@@ -605,6 +610,8 @@ protected:
PluginGenericUI* const ui = fPluginGenericUI; PluginGenericUI* const ui = fPluginGenericUI;
DISTRHO_SAFE_ASSERT_RETURN(ui != nullptr,); DISTRHO_SAFE_ASSERT_RETURN(ui != nullptr,);


ImGui::SetNextWindowFocus();

if (ImGui::Begin(ui->title, nullptr, ImGuiWindowFlags_NoResize|ImGuiWindowFlags_NoCollapse)) if (ImGui::Begin(ui->title, nullptr, ImGuiWindowFlags_NoResize|ImGuiWindowFlags_NoCollapse))
{ {
const CarlaHostHandle handle = fPlugin->fCarlaHostHandle; const CarlaHostHandle handle = fPlugin->fCarlaHostHandle;
@@ -630,7 +637,10 @@ protected:
} }
else else
{ {
if (ImGui::SliderFloat(param.name, &ui->values[i], param.min, param.max, param.format))
const bool ret = param.log
? ImGui::SliderFloat(param.name, &ui->values[i], param.min, param.max, param.format, 2.0f)
: ImGui::SliderFloat(param.name, &ui->values[i], param.min, param.max, param.format);
if (ret)
{ {
if (ImGui::IsItemActivated()) if (ImGui::IsItemActivated())
{ {


Loading…
Cancel
Save