From 5a1ccca68baf9e8efffe3e0297730a911617693d Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 17 Oct 2010 01:11:29 +0000 Subject: Support current versions of LV2 atom, atom-port, and context extensions. Working use case in this revision: lolep.parse => lolep.print (set parse input to some string, it will be parsed, send to print as an LV2 atom, then printed to the console by print). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2631 a436a847-0d15-0410-975c-d299462d15a1 --- src/gui/Configuration.cpp | 15 +++++++++------ src/gui/Configuration.hpp | 1 + src/gui/Port.cpp | 2 -- src/gui/PropertiesWindow.hpp | 2 +- 4 files changed, 11 insertions(+), 9 deletions(-) (limited to 'src/gui') diff --git a/src/gui/Configuration.cpp b/src/gui/Configuration.cpp index f6b0ee0e..6a6c2914 100644 --- a/src/gui/Configuration.cpp +++ b/src/gui/Configuration.cpp @@ -24,6 +24,7 @@ #include "client/PortModel.hpp" #include "client/PluginModel.hpp" #include "serialisation/Parser.hpp" +#include "shared/LV2URIMap.hpp" #include "flowcanvas/Port.hpp" #include "App.hpp" #include "Port.hpp" @@ -40,11 +41,11 @@ using namespace Ingen::Client; Configuration::Configuration() // Colours from the Tango palette with modified V and alpha : _name_style(HUMAN) - , _audio_port_color( 0x244678C0) - , _control_port_color(0x4A8A0EC0) - , _event_port_color( 0x960909C0) -// , _osc_port_color( 0x5C3566C0) - , _value_port_color( 0x4A4A4AC0) + , _audio_port_color( 0x244678C0) // Blue + , _control_port_color(0x4A8A0EC0) // Green + , _event_port_color( 0x960909C0) // Red + , _string_port_color( 0x5C3566C0) // Plum + , _value_port_color( 0xBABDB6C0) // Aluminum { } @@ -88,9 +89,11 @@ uint32_t Configuration::get_port_color(const PortModel* p) { assert(p != NULL); - + const Shared::LV2URIMap& uris = App::instance().uris(); if (p->is_a(Shared::PortType::AUDIO)) { return _audio_port_color; + } else if (p->supports(uris.object_class_string)) { + return _string_port_color; } else if (App::instance().can_control(p)) { return _control_port_color; } else if (p->is_a(Shared::PortType::EVENTS) || p->is_a(Shared::PortType::MESSAGE)) { diff --git a/src/gui/Configuration.hpp b/src/gui/Configuration.hpp index 5586a3c0..be13bcc8 100644 --- a/src/gui/Configuration.hpp +++ b/src/gui/Configuration.hpp @@ -68,6 +68,7 @@ private: uint32_t _audio_port_color; uint32_t _control_port_color; uint32_t _event_port_color; + uint32_t _string_port_color; uint32_t _value_port_color; }; diff --git a/src/gui/Port.cpp b/src/gui/Port.cpp index 0dbb05cf..4102a52c 100644 --- a/src/gui/Port.cpp +++ b/src/gui/Port.cpp @@ -154,8 +154,6 @@ Port::value_changed(const Atom& value) return; else if (value.type() == Atom::FLOAT) FlowCanvas::Port::set_control(value.get_float()); - else - warn << "Unknown port value type " << (unsigned)value.type() << endl; } diff --git a/src/gui/PropertiesWindow.hpp b/src/gui/PropertiesWindow.hpp index 157a76b5..1ce4005f 100644 --- a/src/gui/PropertiesWindow.hpp +++ b/src/gui/PropertiesWindow.hpp @@ -30,7 +30,7 @@ namespace Ingen { namespace GUI { -/** Node properties window. +/** Object properties window. * * Loaded by libglade as a derived object. * -- cgit v1.2.1