… | |
… | |
99 | &$method; |
99 | &$method; |
100 | } |
100 | } |
101 | |
101 | |
102 | sub destroy { |
102 | sub destroy { |
103 | my ($self) = @_; |
103 | my ($self) = @_; |
|
|
104 | |
104 | for (keys %$self) { |
105 | for (keys %$self) { |
105 | (delete $self->{$_})->destroy |
106 | (delete $self->{$_})->destroy |
106 | if UNIVERSAL::isa ($self->{$_}, Glib::Object) && $self->{$_}->can("destroy"); |
107 | if (UNIVERSAL::isa ($self->{$_}, Glib::Object) |
|
|
108 | && UNIVERSAL::isa ($self->{$_}, gtk::widget)) |
|
|
109 | && $self->{$_}->can("destroy"); |
107 | } |
110 | } |
108 | } |
111 | } |
109 | |
112 | |
110 | sub DESTROY { |
113 | sub DESTROY { |
111 | my ($self) = @_; |
114 | my ($self) = @_; |