diff options
author | David Robillard <d@drobilla.net> | 2007-10-26 03:13:49 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-10-26 03:13:49 +0000 |
commit | 9e8425f0d5f9e2d8a7db45a29a3bb93b824a11c4 (patch) | |
tree | e1b356a54fb54d7258eae8662825aa9098bc95ea /src/libs/gui/PatchCanvas.cpp | |
parent | 203d851e116d4590897eceab582f735fb30c4e26 (diff) | |
download | ingen-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.cpp | 18 |
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)); |