anchor.diff:      _:R -> ?log([{error,R},{stack,erlang:get_stacktrace()}])
     end.
   
  -glade_file() -> filename:join([code:priv_dir(eper),"glade","gperf.glade"]).
  +glade_file() -> 
  +  filename:join([code:priv_dir(eper),"glade","gperf.glade"]).
   
   loop(LD) ->
     receive
  -    quit                                        -> die(LD);
  -    {gperf_gtk,{signal,{window,'delete-event'}}}-> die(LD);
  -
  +    %% 2 ways to quit
  +    quit                                         -> die(LD);
  +    {gperf_gtk,{signal,{window,'delete-event'}}} -> die(LD);
  +
  +    %% the conf dialog
       {gperf_gtk,{signal,{conf_cancel,_}}} -> hide_cf(),?LP(LD);
       {gperf_gtk,{signal,{conf_ok,_}}}     -> hide_cf(),?LP(conf(LD));
   
  
positive.code: -record(conf, {widget, val, type}).
  -record(ld, {conf=conf(),minute,x=?XHALF,dAreas=[],state=disc,stat_ctxt}).
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  start() -> spawn(fun()-> init() end).
  stop() -> catch (gperf ! quit),quit.
  
  init() ->
  
negative.code:   foreach(F,zip(record_info(fields,ld),tl(tuple_to_list(LD)))),
    LD.
  
  %% initialize the conf dialog
  -spec conf() -> confs().
  conf() ->
    from_list([{anode, #conf{widget=conf_node,  val='',  type=atom}}, 
  	     {cookie,#conf{widget=conf_cookie,val='',  type=atom}}, 
  