package Libconf::GUI::Gtk2::Widget; sub set_default { my $self = shift; $self->set_value($self->{default_value}); } sub set_value { my ($self, $value) = @_; $self->{value} = $value; ${$self->{ref_value}} = $value; #data mapping has to be reworked. defined $self->{data_mapping} and $value = $self->{data_mapping}->($value); $value; } sub get_value { shift->{value} } 1;