ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/gde/GCE/AttrEdit.pm
(Generate patch)

Comparing deliantra/gde/GCE/AttrEdit.pm (file contents):
Revision 1.19 by elmex, Thu Mar 16 11:59:34 2006 UTC vs.
Revision 1.20 by elmex, Thu Mar 16 14:00:24 2006 UTC

105 for my $key (qw/lore msg/) { 105 for my $key (qw/lore msg/) {
106 $self->{ntbook}->append_page (my $v = Gtk2::VBox->new, $key); 106 $self->{ntbook}->append_page (my $v = Gtk2::VBox->new, $key);
107 $v->pack_start (my $sw = Gtk2::ScrolledWindow->new, 1, 1, 0); 107 $v->pack_start (my $sw = Gtk2::ScrolledWindow->new, 1, 1, 0);
108 $sw->set_policy ('automatic', 'automatic'); 108 $sw->set_policy ('automatic', 'automatic');
109 $sw->add (my $tb = $self->{"${key}_txt"} = Gtk2::TextView->new); 109 $sw->add (my $tb = $self->{"${key}_txt"} = Gtk2::TextView->new);
110 my $buf = $tb->get_buffer->set_text ($arch->{$key});
111
112 $v->pack_start (my $b = Gtk2::Button->new_with_label ("save"), 0, 1, 0);
113 $b->signal_connect (clicked => sub {
114 my $buf = $tb->get_buffer; 110 my $buf = $tb->get_buffer;
111 $buf->set_text ($arch->{$key});
112 $buf->signal_connect (changed => sub {
113 my ($buf) = @_;
115 $self->update_arch ($arch, $key, 114 $self->update_arch ($arch, $key,
116 $buf->get_text ($buf->get_start_iter, $buf->get_end_iter, 0) 115 $buf->get_text ($buf->get_start_iter, $buf->get_end_iter, 0)
116 );
117 ); 117 });
118 });
119 } 118 }
120 119
121 $self->{ntbook}->append_page (my $inv = GCE::InventoryEditor->new, 'inventory'); 120 $self->{ntbook}->append_page (my $inv = GCE::InventoryEditor->new, 'inventory');
122 $inv->set_arch ($arch, $change_cb); 121 $inv->set_arch ($arch, $change_cb);
123 122
269 268
270 } elsif ($type eq 'fixed') { 269 } elsif ($type eq 'fixed') {
271 return Gtk2::Label->new ("$edspec->{name} = $edspec->{value}"); 270 return Gtk2::Label->new ("$edspec->{name} = $edspec->{value}");
272 271
273 } elsif ($type eq 'text') { 272 } elsif ($type eq 'text') {
274 my $b = $arch->{$key};
275 $b =~ s/\n\r?//gs;
276 if (length $b > 20) {
277 $b = (substr $b, 0, 20) . "...";
278 }
279 return Gtk2::Label->new ($b); 273 return Gtk2::Label->new ("<see $key tab>");
280
281 274
282 } else { 275 } else {
283 return Gtk2::Label->new ("$key => $edspec->{name} ($type)"); 276 return Gtk2::Label->new ("$key => $edspec->{name} ($type)");
284 277
285 } 278 }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines