1. package Preferences is 
  2.  
  3.     -- Initializes the preference system. The prefences in file 'filename' will 
  4.     -- be loaded and the auto-save task will begin. 
  5.     procedure Initialize( filename : String ); 
  6.  
  7.     -- Finalizes the preference system. All non-default preferences will be 
  8.     -- written to the filename provided at initialization, and the auto-save 
  9.     -- task will end. 
  10.     procedure Finalize; 
  11.  
  12.     ---------------------------------------------------------------------------- 
  13.  
  14.     -- These procedures return a value for the section.name preference. If the 
  15.     -- preference has never been set, a default value will be returned as 
  16.     -- available. If 'section' is not specified, "preference" will be used. 
  17.  
  18.     function Get_Pref( name : String ) return Boolean; 
  19.  
  20.     function Get_Pref( name : String ) return Float; 
  21.  
  22.     function Get_Pref( name : String ) return Integer; 
  23.  
  24.     function Get_Pref( name : String ) return String; 
  25.  
  26.     function Get_Pref( section, name : String ) return Boolean; 
  27.  
  28.     function Get_Pref( section, name : String ) return Float; 
  29.  
  30.     function Get_Pref( section, name : String ) return Integer; 
  31.  
  32.     function Get_Pref( section, name : String ) return String; 
  33.  
  34.     ---------------------------------------------------------------------------- 
  35.  
  36.     -- These procedures set the value of the section.name preference. All set 
  37.     -- values will be saved to the preference file. If 'section' is not 
  38.     -- specified, "preference" will be used. 
  39.  
  40.     procedure Set_Pref( name : String; value : Boolean ); 
  41.  
  42.     procedure Set_Pref( name : String; value : Float ); 
  43.  
  44.     procedure Set_Pref( name : String; value : Integer ); 
  45.  
  46.     procedure Set_Pref( name : String; value : String ); 
  47.  
  48.     procedure Set_Pref( section, name : String; value : Boolean ); 
  49.  
  50.     procedure Set_Pref( section, name : String; value : Float ); 
  51.  
  52.     procedure Set_Pref( section, name : String; value : Integer ); 
  53.  
  54.     procedure Set_Pref( section, name : String; value : String ); 
  55.  
  56.     ---------------------------------------------------------------------------- 
  57.  
  58.     -- These procedures set a default value for the section.name preference. 
  59.     -- Default values are not written to the preference file. If 'section' is 
  60.     -- not specified, "preference" will be used. 
  61.  
  62.     procedure Set_Default( name : String; value : Boolean ); 
  63.  
  64.     procedure Set_Default( name : String; value : Float ); 
  65.  
  66.     procedure Set_Default( name : String; value : Integer ); 
  67.  
  68.     procedure Set_Default( name : String; value : String ); 
  69.  
  70.     procedure Set_Default( section, name : String; value : Boolean ); 
  71.  
  72.     procedure Set_Default( section, name : String; value : Float ); 
  73.  
  74.     procedure Set_Default( section, name : String; value : Integer ); 
  75.  
  76.     procedure Set_Default( section, name : String; value : String ); 
  77.  
  78. end Preferences;