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.6 by elmex, Sat Feb 11 01:23:07 2006 UTC vs.
Revision 1.7 by elmex, Mon Feb 20 13:30:28 2006 UTC

75 } else { 75 } else {
76 76
77 delete $arch->{$key}; 77 delete $arch->{$key};
78 } 78 }
79 79
80 $self->{change_cb}->($arch)
81 if defined $self->{change_cb};
82
80 # XXX: maybe update a little bit more intelligent... 83 # XXX: maybe update a little bit more intelligent...
81 $self->set_arch ($arch); 84 $self->set_arch ($arch, $self->{change_cb});
82} 85}
83 86
84sub set_attr { 87sub set_attr {
85 my ($self, $key, $value) = @_; 88 my ($self, $key, $value) = @_;
86 89
91 $self->update_arch ($self->{arch}, $key, $value); 94 $self->update_arch ($self->{arch}, $key, $value);
92 } 95 }
93} 96}
94 97
95sub set_arch { 98sub set_arch {
96 my ($self, $arch, $ro) = @_; 99 my ($self, $arch, $change_cb) = @_;
100
101 $self->{change_cb} = $change_cb;
97 102
98 $self->{arch} = $arch; 103 $self->{arch} = $arch;
99 104
100 if ($ro) { 105 if (not defined $change_cb) {
101 106
102 $self->{al}->set (editable => 0); 107 $self->{al}->set (editable => 0);
103 $self->{raw_al}->set (editable => 0); 108 $self->{raw_al}->set (editable => 0);
104 $self->{msg_view}->set (editable => 0); 109 $self->{msg_view}->set (editable => 0);
105 $self->{lore_view}->set (editable => 0); 110 $self->{lore_view}->set (editable => 0);
123 128
124 $self->{arch_name_lbl}->set_text ( 129 $self->{arch_name_lbl}->set_text (
125 $arch->{_name} . ($arch->{name} ? " - $arch->{name}" : "") 130 $arch->{_name} . ($arch->{name} ? " - $arch->{name}" : "")
126 ); 131 );
127 132
128 my $al_arch = $Crossfire::ARCH->{$arch->{_name}}; 133 my $al_arch = $Crossfire::ARCH{$arch->{_name}};
129 134
130 if ($al_arch) { 135 if ($al_arch) {
131 136
132 $self->{al_arch}->set_arch ($al_arch); 137 $self->{al_arch}->set_arch ($al_arch);
133 138
134 } else { 139 } else {
140 print "NOARCH FOR: $arch->{_name}\n";
135 141
136 $self->{al_arch}->set_arch ({ noarch => 'noarch' }); 142 $self->{al_arch}->set_arch ({ noarch => 'noarch' });
137 } 143 }
138} 144}
139 145

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines