kikuchiyo has asked for the wisdom of the Perl Monks concerning the following question:
################################################ #!/usr/bin/perl use strict; use warnings; use Gtk2 -init; use Gtk2::Ex::Simple::List; use Glib ':constants'; my %activity_list = ( O => '<span color="#7f7f00"><b>One</b></span>', M => '<span color="#7f007f"><b>Two</b></span>', U => '<span color="#007f7f"><b>Five</b></span>', E => '<span color="#00cf00"><b>Three, Sir, Three!</b></span>', A => '<span color="#ff0000"><b>BOOM</b></span>' ); my %activity_order = ('O' => 'M', 'M' => 'U', 'U' => 'E', 'E' => 'A', +'A' => 'O'); my %activities_rev = reverse %activity_list; my $win = Gtk2::Window->new; $win->set_border_width (6); $win->signal_connect (delete_event => sub { Gtk2->main_quit; }); my $tslist = Gtk2::Ex::Simple::List->new ( "Special column" => 'markup', "Normal column" => 'text' ); $win->add ($tslist); $tslist->get_selection->set_mode ('single'); $tslist->set_reorderable(FALSE); $tslist->set_column_editable (0, FALSE); $tslist->set_column_editable (1, TRUE); my $dtslist = $tslist->{data}; push @$dtslist, [ $activity_list{M}, "text" ], [ $activity_list{O}, "t +ext2" ]; my @columns = $tslist->get_columns; $tslist->signal_connect('button-release-event' => sub { my ($self, $event) = @_; my ($path, $column, $cell_x, $cell_y) = $tslist->get_path_a +t_pos ($event->x, $event->y ); # <------- !!!!! if ($path) { if ($column == $columns[0]) { my $row = $path->to_string; my $value = $dtslist->[$row][0]; $dtslist->[$row][0] = $activity_list{$activity_order{$ +activities_rev{$value}}}; } } }); $win->show_all; Gtk2->main; ################################################
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Gtk2::TreeView get_path_at_pos doesn't return array on Windows
by kikuchiyo (Hermit) on Jul 15, 2009 at 07:12 UTC | |
|
Re: Gtk2::TreeView get_path_at_pos doesn't return array on Windows
by zentara (Cardinal) on Jul 15, 2009 at 17:17 UTC | |
by kikuchiyo (Hermit) on Jul 15, 2009 at 18:44 UTC | |
by zentara (Cardinal) on Jul 16, 2009 at 14:41 UTC |