diff options
author | David Robillard <d@drobilla.net> | 2012-05-01 06:46:55 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2012-05-01 06:46:55 +0000 |
commit | d76ab24976e452d02e114182b3a563eeb11e8785 (patch) | |
tree | 801e459ac10f176bcce8221d2cba17bf71a14f6c /ingen/client | |
parent | 7477318adc8de5244fc314939c296ae74605eaa5 (diff) | |
download | ingen-d76ab24976e452d02e114182b3a563eeb11e8785.tar.gz ingen-d76ab24976e452d02e114182b3a563eeb11e8785.tar.bz2 ingen-d76ab24976e452d02e114182b3a563eeb11e8785.zip |
Implement menu selector for enumeration ports (sort of address #780).
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4308 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'ingen/client')
-rw-r--r-- | ingen/client/PluginModel.hpp | 7 | ||||
-rw-r--r-- | ingen/client/PortModel.hpp | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/ingen/client/PluginModel.hpp b/ingen/client/PluginModel.hpp index e434df07..46e7b116 100644 --- a/ingen/client/PluginModel.hpp +++ b/ingen/client/PluginModel.hpp @@ -17,6 +17,9 @@ #ifndef INGEN_CLIENT_PLUGINMODEL_HPP #define INGEN_CLIENT_PLUGINMODEL_HPP +#include <list> +#include <utility> + #include "lilv/lilv.h" #include "raul/SharedPtr.hpp" #include "raul/Symbol.hpp" @@ -59,6 +62,10 @@ public: std::string human_name() const; std::string port_human_name(uint32_t index) const; + typedef std::pair<float, std::string> ScalePoint; + typedef std::list<ScalePoint> ScalePoints; + ScalePoints port_scale_points(uint32_t i) const; + static LilvWorld* lilv_world() { return _lilv_world; } const LilvPlugin* lilv_plugin() const { return _lilv_plugin; } diff --git a/ingen/client/PortModel.hpp b/ingen/client/PortModel.hpp index d9fce5e4..8065692d 100644 --- a/ingen/client/PortModel.hpp +++ b/ingen/client/PortModel.hpp @@ -54,6 +54,7 @@ public: bool port_property(const Raul::URI& uri) const; bool is_logarithmic() const { return port_property(LV2_PORT_PROPS__logarithmic); } + bool is_enumeration() const { return port_property(LV2_CORE__enumeration); } bool is_integer() const { return port_property(LV2_CORE__integer); } bool is_toggle() const { return port_property(LV2_CORE__toggled); } bool is_numeric() const { |