Browse Source

Fix generic view not always up to date

Signed-off-by: falkTX <falktx@falktx.com>
tags/v1.0
falkTX 3 years ago
parent
commit
9c2fe21e93
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
2 changed files with 19 additions and 1 deletions
  1. +1
    -1
      carla
  2. +18
    -0
      plugins/Common/IldaeilUI.cpp

+ 1
- 1
carla

@@ -1 +1 @@
Subproject commit 91dac6b693c6146a74da642b0b4f9ee7d5bc1e5b
Subproject commit 65dd56ea73526af7f3e5ffe45f0587a7c62e5f90

+ 18
- 0
plugins/Common/IldaeilUI.cpp View File

@@ -219,6 +219,8 @@ public:
fPluginHasEmbedUI = false;
if (fPluginGenericUI == nullptr)
createPluginGenericUI(handle, info);
else
updatePluginGenericUI(handle);
const double scaleFactor = getScaleFactor();
setSize(kGenericWidth * scaleFactor, (kGenericHeight + kExtraHeight) * scaleFactor);
}
@@ -307,6 +309,20 @@ public:
fPluginGenericUI = ui;
}

void updatePluginGenericUI(const CarlaHostHandle handle)
{
PluginGenericUI* const ui = fPluginGenericUI;
DISTRHO_SAFE_ASSERT_RETURN(ui != nullptr,);

for (uint32_t i=0; i < ui->parameterCount; ++i)
{
ui->values[i] = carla_get_current_parameter_value(handle, 0, ui->parameters[i].rindex);

if (ui->parameters[i].boolean)
ui->parameters[i].bvalue = ui->values[i] > ui->parameters[i].min;
}
}

protected:
void pluginWindowResized(uint width, uint height) override
{
@@ -457,6 +473,8 @@ protected:

if (fPluginGenericUI == nullptr)
createPluginGenericUI(handle, carla_get_plugin_info(handle, 0));
else
updatePluginGenericUI(handle);

const double scaleFactor = getScaleFactor();
setSize(std::max(getWidth(), static_cast<uint>(kGenericWidth * scaleFactor + 0.5)),


Loading…
Cancel
Save