Re: Single and double clicks on a row in treeview (gtkmm 2)



On Wed, Jul 6, 2016 at 11:16 PM, Phil Wolff <adiabat centurylink net> wrote:
As you already know, calling TreeView::set_activate_on_single_click( false )
and connecting to TreeView::signal_row_activated() allows you to intercept a
double click. To intercept a single click, get the TreeSelection object
associated with the TreeView using TreeView::get_selection() and connect to
TreeSelection::signal_changed(). Be aware that a single click on a row
that's already selected will not emit signal_changed(). Also, there's a
warning somewhere in the documentation that says you may occasionally
receive signal_changed() when in fact there has NOT been a change in the
selection.

Thank you for your reply. I am using the former approach.

I also want to keep a track of which column of the row is clicked. For
the slot connected to TreeView::signal_row_activated() which had
arguments (const Gtk::TreeModel::Path& path, Gtk::TreeViewColumn*
col), I was able to get the column clicked using 'col' here.

Taking TreeSelection::signal_changed(), since the associated slot does
not take any arguments, what can be the method to get the column of
the selected row on which mouse was clicked?

-- 
Kamalpreet Kaur Grewal
Blog: http://kamalpreetgrewal.com/


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]