Work around Ardour6 parameter edits not working
This commit is contained in:
parent
cbc7c912dd
commit
f572cd35a2
2 changed files with 20 additions and 1 deletions
|
|
@ -191,6 +191,20 @@ tresult PLUGIN_API SfizzVstControllerNoUi::getKeyswitchInfo(int32 busIndex, int1
|
||||||
return kResultTrue;
|
return kResultTrue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tresult PLUGIN_API SfizzVstControllerNoUi::beginEditFromHost(Vst::ParamID paramID)
|
||||||
|
{
|
||||||
|
// Note(jpc) implementing this interface is a workaround to make
|
||||||
|
// non-automatable parameters editable in Ardour (as of 6.6)
|
||||||
|
(void)paramID;
|
||||||
|
return kResultTrue;
|
||||||
|
}
|
||||||
|
|
||||||
|
tresult PLUGIN_API SfizzVstControllerNoUi::endEditFromHost(Vst::ParamID paramID)
|
||||||
|
{
|
||||||
|
(void)paramID;
|
||||||
|
return kResultTrue;
|
||||||
|
}
|
||||||
|
|
||||||
tresult PLUGIN_API SfizzVstControllerNoUi::getParamStringByValue(Vst::ParamID tag, Vst::ParamValue valueNormalized, Vst::String128 string)
|
tresult PLUGIN_API SfizzVstControllerNoUi::getParamStringByValue(Vst::ParamID tag, Vst::ParamValue valueNormalized, Vst::String128 string)
|
||||||
{
|
{
|
||||||
switch (tag) {
|
switch (tag) {
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,8 @@ using namespace VSTGUI;
|
||||||
|
|
||||||
class SfizzVstControllerNoUi : public Vst::EditControllerEx1,
|
class SfizzVstControllerNoUi : public Vst::EditControllerEx1,
|
||||||
public Vst::IMidiMapping,
|
public Vst::IMidiMapping,
|
||||||
public Vst::IKeyswitchController {
|
public Vst::IKeyswitchController,
|
||||||
|
public Vst::IEditControllerHostEditing {
|
||||||
public:
|
public:
|
||||||
virtual ~SfizzVstControllerNoUi() {}
|
virtual ~SfizzVstControllerNoUi() {}
|
||||||
|
|
||||||
|
|
@ -35,6 +36,9 @@ public:
|
||||||
int32 PLUGIN_API getKeyswitchCount (int32 busIndex, int16 channel) override;
|
int32 PLUGIN_API getKeyswitchCount (int32 busIndex, int16 channel) override;
|
||||||
tresult PLUGIN_API getKeyswitchInfo (int32 busIndex, int16 channel, int32 keySwitchIndex, Vst::KeyswitchInfo& info) override;
|
tresult PLUGIN_API getKeyswitchInfo (int32 busIndex, int16 channel, int32 keySwitchIndex, Vst::KeyswitchInfo& info) override;
|
||||||
|
|
||||||
|
tresult PLUGIN_API beginEditFromHost(Vst::ParamID paramID) override;
|
||||||
|
tresult PLUGIN_API endEditFromHost(Vst::ParamID paramID) override;
|
||||||
|
|
||||||
tresult PLUGIN_API getParamStringByValue(Vst::ParamID tag, Vst::ParamValue valueNormalized, Vst::String128 string) override;
|
tresult PLUGIN_API getParamStringByValue(Vst::ParamID tag, Vst::ParamValue valueNormalized, Vst::String128 string) override;
|
||||||
tresult PLUGIN_API getParamValueByString(Vst::ParamID tag, Vst::TChar* string, Vst::ParamValue& valueNormalized) override;
|
tresult PLUGIN_API getParamValueByString(Vst::ParamID tag, Vst::TChar* string, Vst::ParamValue& valueNormalized) override;
|
||||||
|
|
||||||
|
|
@ -47,6 +51,7 @@ public:
|
||||||
DEFINE_INTERFACES
|
DEFINE_INTERFACES
|
||||||
DEF_INTERFACE(Vst::IMidiMapping)
|
DEF_INTERFACE(Vst::IMidiMapping)
|
||||||
DEF_INTERFACE(Vst::IKeyswitchController)
|
DEF_INTERFACE(Vst::IKeyswitchController)
|
||||||
|
DEF_INTERFACE(Vst::IEditControllerHostEditing)
|
||||||
END_DEFINE_INTERFACES(Vst::EditControllerEx1)
|
END_DEFINE_INTERFACES(Vst::EditControllerEx1)
|
||||||
REFCOUNT_METHODS(Vst::EditControllerEx1)
|
REFCOUNT_METHODS(Vst::EditControllerEx1)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue