summaryrefslogtreecommitdiffstats
path: root/src/ui/widget/iconrenderer.cpp
diff options
context:
space:
mode:
authorMartin Owens <doctormo@gmail.com>2018-09-27 15:45:08 +0000
committerMartin Owens <doctormo@gmail.com>2018-09-27 15:45:08 +0000
commitd0254626dcd2d7a9384977137fa3cfe48ce13cd0 (patch)
treed762467b1c3e4ec60ba9e731e18ee7cbe34608ce /src/ui/widget/iconrenderer.cpp
parentAdd preference for default global snapping and make it false (diff)
downloadinkscape-d0254626dcd2d7a9384977137fa3cfe48ce13cd0.tar.gz
inkscape-d0254626dcd2d7a9384977137fa3cfe48ce13cd0.zip
Propagate IconRenderer's activate signal so we don't have to guess where the row/column is.
Diffstat (limited to 'src/ui/widget/iconrenderer.cpp')
-rw-r--r--src/ui/widget/iconrenderer.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/ui/widget/iconrenderer.cpp b/src/ui/widget/iconrenderer.cpp
index 9826d0bd3..4db870454 100644
--- a/src/ui/widget/iconrenderer.cpp
+++ b/src/ui/widget/iconrenderer.cpp
@@ -33,6 +33,14 @@ IconRenderer::IconRenderer() :
set_pixbuf();
}
+/*
+ * Called when an icon is clicked.
+ */
+IconRenderer::type_signal_activated IconRenderer::signal_activated()
+{
+ return m_signal_activated;
+}
+
void IconRenderer::get_preferred_height_vfunc(Gtk::Widget& widget,
int& min_h,
int& nat_h) const
@@ -76,12 +84,13 @@ void IconRenderer::render_vfunc( const Cairo::RefPtr<Cairo::Context>& cr,
bool IconRenderer::activate_vfunc(GdkEvent* /*event*/,
Gtk::Widget& /*widget*/,
- const Glib::ustring& /*path*/,
+ const Glib::ustring& path,
const Gdk::Rectangle& /*background_area*/,
const Gdk::Rectangle& /*cell_area*/,
Gtk::CellRendererState /*flags*/)
{
- return false;
+ m_signal_activated.emit(path);
+ return true;
}
void IconRenderer::add_icon(Glib::ustring name)