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.24 by elmex, Sat Apr 1 18:45:05 2006 UTC vs.
Revision 1.25 by elmex, Sun Apr 2 09:54:18 2006 UTC

69} 69}
70 70
71sub update_arch { 71sub update_arch {
72 my ($self, $arch, $key, $value) = @_; 72 my ($self, $arch, $key, $value) = @_;
73 73
74# took this out because of a bug when defaults from achetypes came back
74 if ($value ne '') { 75# if ($value ne '') {
75 76
76 my $al_arch = $Crossfire::ARCH{$arch->{_name}}; 77 my $al_arch = $Crossfire::ARCH{$arch->{_name}};
77 if (ref $value) { 78 if (ref $value) {
79 $arch->{$key} = $value;
80
81 } else {
82 if (not defined $al_arch->{$key}) {
83 if (not defined $value) {
84 # try to normalize
85 delete $arch->{$key};
86 } else {
87 # try to normalize
78 $arch->{$key} = $value; 88 $arch->{$key} = $value;
79 89 }
80 } else { 90 } else {
81 if (not defined $al_arch->{$key}) { 91 if ($al_arch->{$key} ne $value) {
82 if (not $value) {
83 # try to normalize
84 delete $arch->{$key};
85 } else {
86 # try to normalize
87 $arch->{$key} = $value; 92 $arch->{$key} = $value;
88 }
89 } else { 93 } else {
90 if ($al_arch->{$key} ne $value) {
91 $arch->{$key} = $value;
92 } else {
93 # try to normalize 94 # try to normalize
94 delete $arch->{$key}; 95 delete $arch->{$key};
95 }
96 } 96 }
97 } 97 }
98 }
98 99
99 } else { 100# } else {
100
101 delete $arch->{$key}; 101# delete $arch->{$key};
102 } 102# }
103 103
104 $self->{change_cb}->($arch) 104 $self->{change_cb}->($arch)
105 if defined $self->{change_cb}; 105 if defined $self->{change_cb};
106} 106}
107 107
157 $buf->get_text ($buf->get_start_iter, $buf->get_end_iter, 0) 157 $buf->get_text ($buf->get_start_iter, $buf->get_end_iter, 0)
158 ); 158 );
159 }); 159 });
160 } 160 }
161 161
162 $self->{ntbook}->append_page (my $v = Gtk2::VBox->new, 'doc');
163 $v->pack_start (my $sw = Gtk2::ScrolledWindow->new, 1, 1, 0);
164 $sw->set_policy ('automatic', 'automatic');
165 $sw->add (my $tb = $self->{"doc_txt"} = Gtk2::TextView->new);
166 my $buf = $tb->get_buffer;
167 my $desc = pseudohtml2txt $ar->{desc};
168 my $use = pseudohtml2txt $ar->{use};
169 $buf->set_text ("Description:\n\n$desc\n\nUse:\n\n$use");
170 $tb->set_editable (0);
171 $tb->set_wrap_mode ('word');
172
162 $self->{ttip}->enable; 173 $self->{ttip}->enable;
163 174
164 $self->show_all; 175 $self->show_all;
165} 176}
166 177

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines