summaryrefslogtreecommitdiffstats
path: root/src/libs/gui/PatchCanvas.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-10-26 03:13:49 +0000
committerDavid Robillard <d@drobilla.net>2007-10-26 03:13:49 +0000
commit9e8425f0d5f9e2d8a7db45a29a3bb93b824a11c4 (patch)
treee1b356a54fb54d7258eae8662825aa9098bc95ea /src/libs/gui/PatchCanvas.cpp
parent203d851e116d4590897eceab582f735fb30c4e26 (diff)
downloadingen-9e8425f0d5f9e2d8a7db45a29a3bb93b824a11c4.tar.gz
ingen-9e8425f0d5f9e2d8a7db45a29a3bb93b824a11c4.tar.bz2
ingen-9e8425f0d5f9e2d8a7db45a29a3bb93b824a11c4.zip
Apply module icons patch from larsl (with formatting/visual tweaks).
git-svn-id: http://svn.drobilla.net/lad/ingen@901 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/gui/PatchCanvas.cpp')
-rw-r--r--src/libs/gui/PatchCanvas.cpp18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/libs/gui/PatchCanvas.cpp b/src/libs/gui/PatchCanvas.cpp
index 0b136014..657617dd 100644
--- a/src/libs/gui/PatchCanvas.cpp
+++ b/src/libs/gui/PatchCanvas.cpp
@@ -159,15 +159,16 @@ PatchCanvas::build_plugin_class_menu(Gtk::Menu* menu,
SLV2Plugin p = i->second->slv2_plugin();
if (p && slv2_plugin_get_class(p) == plugin_class) {
- Glib::RefPtr<Gdk::Pixbuf> icon = App::instance().icon_from_path(PluginModel::get_lv2_icon_path(p));
+ Glib::RefPtr<Gdk::Pixbuf> icon
+ = App::instance().icon_from_path(PluginModel::get_lv2_icon_path(p), 16);
if (icon) {
Gtk::Image* image = new Gtk::Image(icon);
menu->items().push_back(Gtk::Menu_Helpers::ImageMenuElem(i->second->name(),
- *image,
- sigc::bind(sigc::mem_fun(this, &PatchCanvas::load_plugin), i->second)));
+ *image,
+ sigc::bind(sigc::mem_fun(this, &PatchCanvas::load_plugin), i->second)));
} else {
menu->items().push_back(Gtk::Menu_Helpers::MenuElem(i->second->name(),
- sigc::bind(sigc::mem_fun(this, &PatchCanvas::load_plugin), i->second)));
+ sigc::bind(sigc::mem_fun(this, &PatchCanvas::load_plugin), i->second)));
++num_items;
}
}
@@ -245,9 +246,14 @@ PatchCanvas::add_node(SharedPtr<NodeModel> nm)
SharedPtr<NodeModule> module;
if (pm)
module = SubpatchModule::create(shared_this, pm);
- else
+ else {
module = NodeModule::create(shared_this, nm);
-
+ const PluginModel* plugm =
+ dynamic_cast<const PluginModel*>(nm->plugin());
+ if (plugm)
+ module->set_icon(App::instance().icon_from_path(plugm->icon_path(), 100));
+ }
+
add_item(module);
module->show();
_views.insert(std::make_pair(nm, module));