package prefs; use strict; use Config::IniFiles; our @ISA = qw( Config::IniFiles ); sub new { my $self = shift; my $class = (ref $self) || $self; print "creating $class\n"; my $fname = 'fubar.ini'; my $obj; if (-f $fname) { $obj = $self->SUPER::new( -file => $fname ); } else { $obj = $self->SUPER::new(); $obj->SetFileName( $fname ); $obj->newval('fubar', 'var1', 'default'); } return bless($obj, $class); } sub DESTROY { my $self = shift; $self->RewriteConfig(); print "destroying $self\n"; $self->SUPER::DESTROY(@_); } 1;