Krotos Modules 3
Loading...
Searching...
No Matches
Kwidget_Template.cpp
Go to the documentation of this file.
1namespace krotos
2{
3 const String Kwidget_Template::Parameters::Example = "ParamID";
4 const String Kwidget_Template::Parameters::Custom = "CustomParamID";
5
6 Kwidget_Template::Kwidget_Template(const String& id) : Kwidget("Template", id)
7 {
8 // CustomParameters can be used to store strings in the Kwidget's state.
9 auto& param = *createAndAddCustomParameter(Parameters::Custom, "");
10 param.valueChanged = [this](const var& value) {
11 // do something
12 };
13
14 // This must be called after all custom parameters are added.
15 init();
16
17 // Parameter callbacks can be added to deal with parameter changes at the Kwidget level, instead
18 // of having each KwidgetProcessor voice apply the changes separately. This function must be called
19 // after init().
20 addParameterCallback(Parameters::Example, [this](float newValue) {
21 // do something
22 });
23 }
24
36 std::vector<Kwidget::ParameterInfo> Kwidget_Template::createParameters()
37 {
38 return {{Parameters::Example, Parameters::Example, {0.0f, 1.0f}, 0.0f}};
39 }
40
41 std::unique_ptr<KwidgetProcessor> Kwidget_Template::createProcessor()
42 {
43 return std::make_unique<KwidgetProcessor_Template>(*this);
44 }
45
46 std::unique_ptr<KwidgetGUI> Kwidget_Template::createGUI() { return std::make_unique<KwidgetGUI_Template>(*this); }
47} // namespace krotos
std::vector< ParameterInfo > createParameters() override
Definition Kwidget_Template.cpp:36
std::unique_ptr< KwidgetGUI > createGUI() override
Definition Kwidget_Template.cpp:46
Kwidget_Template(const String &id)
Definition Kwidget_Template.cpp:6
std::unique_ptr< KwidgetProcessor > createProcessor() override
Definition Kwidget_Template.cpp:41
Definition Kwidget.h:8
void init()
Definition Kwidget.cpp:27
CustomParameter * createAndAddCustomParameter(const String &paramID, const var &value)
Definition Kwidget.cpp:419
void addParameterCallback(const String &paramID, std::function< void(float)> callback)
Definition Kwidget.cpp:458
Definition AirAbsorptionFilter.cpp:2