@@ -49,11 +49,21 @@ protected: | |||||
return "3BandEQ"; | return "3BandEQ"; | ||||
} | } | ||||
const char* getDescription() const override | |||||
{ | |||||
return "3 Band Equalizer, stereo version."; | |||||
} | |||||
const char* getMaker() const noexcept override | const char* getMaker() const noexcept override | ||||
{ | { | ||||
return "DISTRHO"; | return "DISTRHO"; | ||||
} | } | ||||
const char* getHomePage() const override | |||||
{ | |||||
return "https://github.com/DISTRHO/Mini-Series"; | |||||
} | |||||
const char* getLicense() const noexcept override | const char* getLicense() const noexcept override | ||||
{ | { | ||||
return "LGPL"; | return "LGPL"; | ||||
@@ -61,7 +71,7 @@ protected: | |||||
uint32_t getVersion() const noexcept override | uint32_t getVersion() const noexcept override | ||||
{ | { | ||||
return 0x1000; | |||||
return d_version(1, 0, 0); | |||||
} | } | ||||
int64_t getUniqueId() const noexcept override | int64_t getUniqueId() const noexcept override | ||||
@@ -17,8 +17,9 @@ | |||||
#ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | #ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_INFO_H_INCLUDED | #define DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_NAME "3 Band EQ" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/3BandEQ" | |||||
#define DISTRHO_PLUGIN_BRAND "DISTRHO" | |||||
#define DISTRHO_PLUGIN_NAME "3 Band EQ" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/3BandEQ" | |||||
#define DISTRHO_PLUGIN_HAS_UI 1 | #define DISTRHO_PLUGIN_HAS_UI 1 | ||||
#define DISTRHO_PLUGIN_IS_RT_SAFE 1 | #define DISTRHO_PLUGIN_IS_RT_SAFE 1 | ||||
@@ -49,11 +49,21 @@ protected: | |||||
return "3BandSplitter"; | return "3BandSplitter"; | ||||
} | } | ||||
const char* getDescription() const override | |||||
{ | |||||
return "3 Band Equalizer, splitted output version."; | |||||
} | |||||
const char* getMaker() const noexcept override | const char* getMaker() const noexcept override | ||||
{ | { | ||||
return "DISTRHO"; | return "DISTRHO"; | ||||
} | } | ||||
const char* getHomePage() const override | |||||
{ | |||||
return "https://github.com/DISTRHO/Mini-Series"; | |||||
} | |||||
const char* getLicense() const noexcept override | const char* getLicense() const noexcept override | ||||
{ | { | ||||
return "LGPL"; | return "LGPL"; | ||||
@@ -61,7 +71,7 @@ protected: | |||||
uint32_t getVersion() const noexcept override | uint32_t getVersion() const noexcept override | ||||
{ | { | ||||
return 0x1000; | |||||
return d_version(1, 0, 0); | |||||
} | } | ||||
int64_t getUniqueId() const noexcept override | int64_t getUniqueId() const noexcept override | ||||
@@ -17,8 +17,9 @@ | |||||
#ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | #ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_INFO_H_INCLUDED | #define DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_NAME "3 Band Splitter" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/3BandSplitter" | |||||
#define DISTRHO_PLUGIN_BRAND "DISTRHO" | |||||
#define DISTRHO_PLUGIN_NAME "3 Band Splitter" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/3BandSplitter" | |||||
#define DISTRHO_PLUGIN_HAS_UI 1 | #define DISTRHO_PLUGIN_HAS_UI 1 | ||||
#define DISTRHO_PLUGIN_IS_RT_SAFE 1 | #define DISTRHO_PLUGIN_IS_RT_SAFE 1 | ||||
@@ -19,14 +19,16 @@ | |||||
#ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | #ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_INFO_H_INCLUDED | #define DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_NAME "MVerb" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/MVerb" | |||||
#define DISTRHO_PLUGIN_BRAND "DISTRHO" | |||||
#define DISTRHO_PLUGIN_NAME "MVerb" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/MVerb" | |||||
#define DISTRHO_PLUGIN_HAS_UI 1 | #define DISTRHO_PLUGIN_HAS_UI 1 | ||||
#define DISTRHO_PLUGIN_IS_RT_SAFE 1 | #define DISTRHO_PLUGIN_IS_RT_SAFE 1 | ||||
#define DISTRHO_PLUGIN_NUM_INPUTS 2 | #define DISTRHO_PLUGIN_NUM_INPUTS 2 | ||||
#define DISTRHO_PLUGIN_NUM_OUTPUTS 2 | #define DISTRHO_PLUGIN_NUM_OUTPUTS 2 | ||||
#define DISTRHO_PLUGIN_WANT_PROGRAMS 1 | #define DISTRHO_PLUGIN_WANT_PROGRAMS 1 | ||||
#define DISTRHO_PLUGIN_USES_MODGUI 1 | |||||
#define DISTRHO_PLUGIN_LV2_CATEGORY "lv2:ReverbPlugin" | #define DISTRHO_PLUGIN_LV2_CATEGORY "lv2:ReverbPlugin" | ||||
@@ -40,11 +40,21 @@ protected: | |||||
return "MVerb"; | return "MVerb"; | ||||
} | } | ||||
const char* getDescription() const override | |||||
{ | |||||
return "Studio quality reverb, provides a practical demonstration of Dattorro’s figure-of-eight reverb structure."; | |||||
} | |||||
const char* getMaker() const noexcept override | const char* getMaker() const noexcept override | ||||
{ | { | ||||
return "Martin Eastwood, falkTX"; | return "Martin Eastwood, falkTX"; | ||||
} | } | ||||
const char* getHomePage() const override | |||||
{ | |||||
return "https://github.com/DISTRHO/MVerb"; | |||||
} | |||||
const char* getLicense() const noexcept override | const char* getLicense() const noexcept override | ||||
{ | { | ||||
return "GPL v3+"; | return "GPL v3+"; | ||||
@@ -52,7 +62,7 @@ protected: | |||||
uint32_t getVersion() const noexcept override | uint32_t getVersion() const noexcept override | ||||
{ | { | ||||
return 0x1000; | |||||
return d_version(1, 0, 0); | |||||
} | } | ||||
int64_t getUniqueId() const noexcept override | int64_t getUniqueId() const noexcept override | ||||
@@ -19,8 +19,6 @@ | |||||
#include "DistrhoUIMVerb.hpp" | #include "DistrhoUIMVerb.hpp" | ||||
#include "MVerb.h" | #include "MVerb.h" | ||||
#include "font/Kh-Kangrey.h" | |||||
START_NAMESPACE_DISTRHO | START_NAMESPACE_DISTRHO | ||||
namespace Art = DistrhoArtworkMVerb; | namespace Art = DistrhoArtworkMVerb; | ||||
@@ -34,7 +32,8 @@ DistrhoUIMVerb::DistrhoUIMVerb() | |||||
fImgBackground(Art::backgroundData, Art::backgroundWidth, Art::backgroundHeight, GL_BGR) | fImgBackground(Art::backgroundData, Art::backgroundWidth, Art::backgroundHeight, GL_BGR) | ||||
{ | { | ||||
// text | // text | ||||
fNanoText.createFontFromMemory("kh", (const uchar*)khkangrey_ttf, khkangrey_ttfSize, false); | |||||
fNanoText.loadSharedResources(); | |||||
fNanoFont = fNanoText.findFont(NANOVG_DEJAVU_SANS_TTF); | |||||
// knobs | // knobs | ||||
Image knobImage(Art::knobData, Art::knobWidth, Art::knobHeight); | Image knobImage(Art::knobData, Art::knobWidth, Art::knobHeight); | ||||
@@ -231,8 +230,8 @@ void DistrhoUIMVerb::onDisplay() | |||||
// text display | // text display | ||||
fNanoText.beginFrame(this); | fNanoText.beginFrame(this); | ||||
fNanoText.fontFace("kh"); | |||||
fNanoText.fontSize(20); | |||||
fNanoText.fontFaceId(fNanoFont); | |||||
fNanoText.fontSize(13); | |||||
fNanoText.textAlign(NanoVG::ALIGN_CENTER|NanoVG::ALIGN_TOP); | fNanoText.textAlign(NanoVG::ALIGN_CENTER|NanoVG::ALIGN_TOP); | ||||
fNanoText.fillColor(Color(1.0f, 1.0f, 1.0f)); | fNanoText.fillColor(Color(1.0f, 1.0f, 1.0f)); | ||||
@@ -242,7 +241,7 @@ void DistrhoUIMVerb::onDisplay() | |||||
for (std::size_t i=0; i<MVerb<float>::NUM_PARAMS; ++i) | for (std::size_t i=0; i<MVerb<float>::NUM_PARAMS; ++i) | ||||
{ | { | ||||
std::snprintf(strBuf, 32, "%i%%", int(fKnobs[i]->getValue())); | std::snprintf(strBuf, 32, "%i%%", int(fKnobs[i]->getValue())); | ||||
fNanoText.textBox(58.0f + float(fKnobs[i]->getAbsoluteX()) - 56.0f, 73.0f, 30.0f, strBuf, nullptr); | |||||
fNanoText.textBox(56.0f + float(fKnobs[i]->getAbsoluteX()) - 56.0f, 76.0f, 34.0f, strBuf, nullptr); | |||||
} | } | ||||
fNanoText.endFrame(); | fNanoText.endFrame(); | ||||
@@ -61,6 +61,7 @@ protected: | |||||
private: | private: | ||||
Image fImgBackground; | Image fImgBackground; | ||||
NanoVG fNanoText; | NanoVG fNanoText; | ||||
NanoVG::FontId fNanoFont; | |||||
std::vector<ImageKnob*> fKnobs; | std::vector<ImageKnob*> fKnobs; | ||||
DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(DistrhoUIMVerb) | DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(DistrhoUIMVerb) | ||||
@@ -1,9 +0,0 @@ | |||||
/* binary data of Kh-Kangrey.ttf */ | |||||
#ifndef BINARY_KH_KANGREY_H | |||||
#define BINARY_KH_KANGREY_H | |||||
extern const char* khkangrey_ttf; | |||||
const int khkangrey_ttfSize = 158316; | |||||
#endif |
@@ -18,8 +18,9 @@ | |||||
#ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | #ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_INFO_H_INCLUDED | #define DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_NAME "Nekobi" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/Nekobi" | |||||
#define DISTRHO_PLUGIN_BRAND "DISTRHO" | |||||
#define DISTRHO_PLUGIN_NAME "Nekobi" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/Nekobi" | |||||
#define DISTRHO_PLUGIN_HAS_UI 1 | #define DISTRHO_PLUGIN_HAS_UI 1 | ||||
#define DISTRHO_PLUGIN_IS_RT_SAFE 1 | #define DISTRHO_PLUGIN_IS_RT_SAFE 1 | ||||
@@ -163,7 +163,7 @@ void DistrhoPluginNekobi::initParameter(uint32_t index, Parameter& parameter) | |||||
switch (index) | switch (index) | ||||
{ | { | ||||
case paramWaveform: | case paramWaveform: | ||||
parameter.hints = kParameterIsAutomable|kParameterIsBoolean; | |||||
parameter.hints = kParameterIsAutomable|kParameterIsInteger; | |||||
parameter.name = "Waveform"; | parameter.name = "Waveform"; | ||||
parameter.symbol = "waveform"; | parameter.symbol = "waveform"; | ||||
parameter.ranges.def = 0.0f; | parameter.ranges.def = 0.0f; | ||||
@@ -57,11 +57,21 @@ protected: | |||||
return "Nekobi"; | return "Nekobi"; | ||||
} | } | ||||
const char* getDescription() const override | |||||
{ | |||||
return "Simple single-oscillator synth based on the Roland TB-303."; | |||||
} | |||||
const char* getMaker() const noexcept override | const char* getMaker() const noexcept override | ||||
{ | { | ||||
return "Sean Bolton, falkTX"; | return "Sean Bolton, falkTX"; | ||||
} | } | ||||
const char* getHomePage() const override | |||||
{ | |||||
return "https://github.com/DISTRHO/Nekobi"; | |||||
} | |||||
const char* getLicense() const noexcept override | const char* getLicense() const noexcept override | ||||
{ | { | ||||
return "GPL v2+"; | return "GPL v2+"; | ||||
@@ -69,7 +79,7 @@ protected: | |||||
uint32_t getVersion() const noexcept override | uint32_t getVersion() const noexcept override | ||||
{ | { | ||||
return 0x1000; | |||||
return d_version(1, 0, 0); | |||||
} | } | ||||
int64_t getUniqueId() const noexcept override | int64_t getUniqueId() const noexcept override | ||||
@@ -20,10 +20,7 @@ | |||||
#include "DistrhoUI.hpp" | #include "DistrhoUI.hpp" | ||||
#include "ImageAboutWindow.hpp" | |||||
#include "ImageButton.hpp" | |||||
#include "ImageKnob.hpp" | |||||
#include "ImageSlider.hpp" | |||||
#include "ImageWidgets.hpp" | |||||
#include "DistrhoArtworkNekobi.hpp" | #include "DistrhoArtworkNekobi.hpp" | ||||
#include "NekoWidget.hpp" | #include "NekoWidget.hpp" | ||||
@@ -17,14 +17,16 @@ | |||||
#ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | #ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_INFO_H_INCLUDED | #define DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_NAME "Ping Pong Pan" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/PingPongPan" | |||||
#define DISTRHO_PLUGIN_BRAND "DISTRHO" | |||||
#define DISTRHO_PLUGIN_NAME "Ping Pong Pan" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/PingPongPan" | |||||
#define DISTRHO_PLUGIN_HAS_UI 1 | #define DISTRHO_PLUGIN_HAS_UI 1 | ||||
#define DISTRHO_PLUGIN_IS_RT_SAFE 1 | #define DISTRHO_PLUGIN_IS_RT_SAFE 1 | ||||
#define DISTRHO_PLUGIN_NUM_INPUTS 2 | #define DISTRHO_PLUGIN_NUM_INPUTS 2 | ||||
#define DISTRHO_PLUGIN_NUM_OUTPUTS 2 | #define DISTRHO_PLUGIN_NUM_OUTPUTS 2 | ||||
#define DISTRHO_PLUGIN_WANT_PROGRAMS 1 | #define DISTRHO_PLUGIN_WANT_PROGRAMS 1 | ||||
#define DISTRHO_PLUGIN_USES_MODGUI 1 | |||||
#define DISTRHO_PLUGIN_LV2_CATEGORY "lv2:SpatialPlugin" | #define DISTRHO_PLUGIN_LV2_CATEGORY "lv2:SpatialPlugin" | ||||
@@ -54,7 +54,7 @@ void DistrhoPluginPingPongPan::initParameter(uint32_t index, Parameter& paramete | |||||
case paramWidth: | case paramWidth: | ||||
parameter.hints = kParameterIsAutomable; | parameter.hints = kParameterIsAutomable; | ||||
parameter.name = "Width"; | parameter.name = "Width"; | ||||
parameter.symbol = "with"; | |||||
parameter.symbol = "width"; | |||||
parameter.unit = "%"; | parameter.unit = "%"; | ||||
parameter.ranges.def = 75.0f; | parameter.ranges.def = 75.0f; | ||||
parameter.ranges.min = 0.0f; | parameter.ranges.min = 0.0f; | ||||
@@ -45,11 +45,21 @@ protected: | |||||
return "PingPongPan"; | return "PingPongPan"; | ||||
} | } | ||||
const char* getDescription() const override | |||||
{ | |||||
return "Ping Pong Panning."; | |||||
} | |||||
const char* getMaker() const noexcept override | const char* getMaker() const noexcept override | ||||
{ | { | ||||
return "DISTRHO"; | return "DISTRHO"; | ||||
} | } | ||||
const char* getHomePage() const override | |||||
{ | |||||
return "https://github.com/DISTRHO/Mini-Series"; | |||||
} | |||||
const char* getLicense() const noexcept override | const char* getLicense() const noexcept override | ||||
{ | { | ||||
return "LGPL"; | return "LGPL"; | ||||
@@ -57,7 +67,7 @@ protected: | |||||
uint32_t getVersion() const noexcept override | uint32_t getVersion() const noexcept override | ||||
{ | { | ||||
return 0x1000; | |||||
return d_version(1, 0, 0); | |||||
} | } | ||||
int64_t getUniqueId() const noexcept override | int64_t getUniqueId() const noexcept override | ||||
@@ -17,7 +17,8 @@ | |||||
#ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | #ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_INFO_H_INCLUDED | #define DISTRHO_PLUGIN_INFO_H_INCLUDED | ||||
#define DISTRHO_PLUGIN_NAME "ProM" | |||||
#define DISTRHO_PLUGIN_BRAND "DISTRHO" | |||||
#define DISTRHO_PLUGIN_NAME "ProM" | |||||
#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/ProM" | #define DISTRHO_PLUGIN_URI "http://distrho.sf.net/plugins/ProM" | ||||
#define DISTRHO_PLUGIN_HAS_UI 1 | #define DISTRHO_PLUGIN_HAS_UI 1 | ||||
@@ -43,11 +43,21 @@ protected: | |||||
return "ProM"; | return "ProM"; | ||||
} | } | ||||
const char* getDescription() const override | |||||
{ | |||||
return "ProjectM visualizer."; | |||||
} | |||||
const char* getMaker() const noexcept override | const char* getMaker() const noexcept override | ||||
{ | { | ||||
return "DISTRHO"; | return "DISTRHO"; | ||||
} | } | ||||
const char* getHomePage() const override | |||||
{ | |||||
return "https://github.com/DISTRHO/ProM"; | |||||
} | |||||
const char* getLicense() const noexcept override | const char* getLicense() const noexcept override | ||||
{ | { | ||||
return "LGPL"; | return "LGPL"; | ||||
@@ -55,7 +65,7 @@ protected: | |||||
uint32_t getVersion() const noexcept override | uint32_t getVersion() const noexcept override | ||||
{ | { | ||||
return 0x1000; | |||||
return d_version(1, 0, 0); | |||||
} | } | ||||
int64_t getUniqueId() const noexcept override | int64_t getUniqueId() const noexcept override | ||||