… | |
… | |
24 | |
24 | |
25 | use Glib::Object::Subclass |
25 | use Glib::Object::Subclass |
26 | Gtk2::Window; |
26 | Gtk2::Window; |
27 | |
27 | |
28 | use GCE::Util; |
28 | use GCE::Util; |
|
|
29 | use GCE::DragHelper; |
29 | |
30 | |
30 | use strict; |
31 | use strict; |
31 | |
32 | |
32 | # XXX: make a recursive call from save_layout to all (interesting) sub-widgets |
33 | # XXX: make a recursive call from save_layout to all (interesting) sub-widgets |
33 | sub save_layout { |
34 | sub save_layout { |
… | |
… | |
117 | } |
118 | } |
118 | |
119 | |
119 | $w->open_map ($mapfile, $mapkey); |
120 | $w->open_map ($mapfile, $mapkey); |
120 | |
121 | |
121 | ::set_pos_and_size ($w, $main::CFG->{map_window}, 500, 500, 200, 0); |
122 | ::set_pos_and_size ($w, $main::CFG->{map_window}, 500, 500, 200, 0); |
|
|
123 | |
|
|
124 | $w->set_edit_tool ($self->{sel_editaction}); |
122 | |
125 | |
123 | $w->show_all; |
126 | $w->show_all; |
124 | } |
127 | } |
125 | |
128 | |
126 | sub show_help_window { |
129 | sub show_help_window { |
… | |
… | |
428 | $vb->pack_start ($self->build_menu, 0, 1, 0); |
431 | $vb->pack_start ($self->build_menu, 0, 1, 0); |
429 | |
432 | |
430 | $vb->pack_start (my $hb = $self->{pick_view_hb} = Gtk2::HBox->new, 0, 1, 0); |
433 | $vb->pack_start (my $hb = $self->{pick_view_hb} = Gtk2::HBox->new, 0, 1, 0); |
431 | $hb->pack_start ($self->{pick_view_img} = Gtk2::Image->new, 0, 1, 0); |
434 | $hb->pack_start ($self->{pick_view_img} = Gtk2::Image->new, 0, 1, 0); |
432 | $hb->pack_start ($self->{pick_view_btn} = Gtk2::Button->new, 0, 1, 0); |
435 | $hb->pack_start ($self->{pick_view_btn} = Gtk2::Button->new, 0, 1, 0); |
433 | $self->{pick_view_btn}->drag_source_set (['button1_mask'], ['move'], |
436 | GCE::DragHelper::set_drag_source ( |
434 | { target => 'STRING', flags => [], info => 'TARGET_STRING' } |
437 | $self->{pick_view_btn}, arch => sub { { arch => $self->get_pick } } |
435 | ); |
438 | ); |
436 | $self->{pick_view_btn}->signal_connect (drag_data_get => sub { |
439 | GCE::DragHelper::set_drag_sink ( |
437 | my ($widget, $context, $data, $info, $time) = @_; |
440 | $self->{pick_view_btn}, arch => sub { $self->set_pick ($_[0]->{arch}) } |
438 | $data->set ($data->target, 8, "pick"); |
|
|
439 | }); |
441 | ); |
440 | $self->{pick_view_btn}->signal_connect (clicked => sub { |
442 | $self->{pick_view_btn}->signal_connect (clicked => sub { |
441 | $self->update_attr_editor ($self->{pick_arch}); |
443 | $self->update_attr_editor ($self->{pick_arch}); |
442 | }); |
444 | }); |
443 | $self->{pick_view_pb} = new_arch_pb (); |
445 | $self->{pick_view_pb} = new_arch_pb (); |
444 | |
446 | |