home *** CD-ROM | disk | FTP | other *** search
/ Delphi 4 Bible / Delphi_4_Bible_Tom_Swan_IDG_Books_1998.iso / source / TABS / OPTIONS.PAS < prev    next >
Pascal/Delphi Source File  |  1998-04-13  |  3KB  |  118 lines

  1. unit Options;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Classes, Graphics, Forms, Controls, Buttons,
  7.   StdCtrls, ExtCtrls, Spin, SysUtils, TabsUnit, Dialogs,
  8.   IniData, IniFiles;
  9.  
  10. type
  11.   TOptionsDialog = class(TForm)
  12.     OKBtn: TBitBtn;
  13.     CancelBtn: TBitBtn;
  14.     HelpBtn: TBitBtn;
  15.     Bevel1: TBevel;
  16.     MiscGroup: TGroupBox;
  17.     OperationRGroup: TRadioGroup;
  18.     BackupCheckbox: TCheckBox;
  19.     AutoSaveCheckbox: TCheckBox;
  20.     StripCheckbox: TCheckBox;
  21.     ConvertCheckbox: TCheckBox;
  22.     ConfigEdit: TEdit;
  23.     Label1: TLabel;
  24.     Label2: TLabel;
  25.     Label3: TLabel;
  26.     Label4: TLabel;
  27.     BackupExtEdit: TEdit;
  28.     InTabEdit: TSpinEdit;
  29.     OutTabEdit: TSpinEdit;
  30.     procedure FormCreate(Sender: TObject);
  31.     procedure OKBtnClick(Sender: TObject);
  32.     procedure CancelBtnClick(Sender: TObject);
  33.     procedure HelpBtnClick(Sender: TObject);
  34.   private
  35.     { Private declarations }
  36.   public
  37.     { Public declarations }
  38.     procedure InitTabOptions;
  39.     procedure SaveOptions;
  40.     procedure LoadOptions;
  41.   end;
  42.  
  43. var
  44.   OptionsDialog: TOptionsDialog;
  45.  
  46. implementation
  47.  
  48. {$R *.DFM}
  49.  
  50. {- Initialize options to default values }
  51. procedure TOptionsDialog.InitTabOptions;
  52. begin
  53.   with OptionsDialog do
  54.   begin
  55.     OperationRGroup.ItemIndex := 1;  { Select remove tabs }
  56.     BackupCheckbox.Checked := True;
  57.     AutoSaveCheckbox.Checked := True;
  58.     StripCheckbox.Checked := False;
  59.     ConvertCheckbox.Checked := False;
  60.     ConfigEdit.Text := 'Tabs.Ini';
  61.     InTabEdit.Text := '8';
  62.     OutTabEdit.Text := '8';
  63.     BackupExtEdit.Text := 'Bak';
  64.   end
  65. end;
  66.  
  67. {- Save options to a configuration file }
  68. procedure TOptionsDialog.SaveOptions;
  69. var
  70.   IniFile: TIniFile;
  71. begin
  72.   IniFile := TIniFile.Create(ConfigEdit.Text);
  73.   try
  74.     SaveDataToINI(OptionsDialog, IniFile);
  75.   finally
  76.     IniFile.Free;
  77.   end;
  78. end;
  79.  
  80. {- Load options from a configuration file }
  81. procedure TOptionsDialog.LoadOptions;
  82. var
  83.   IniFile: TIniFile;
  84. begin
  85.   IniFile := TIniFile.Create(ConfigEdit.Text);
  86.   try
  87.     LoadDataFromINI(OptionsDialog, IniFile);
  88.   finally
  89.     IniFile.Free;
  90.   end;
  91. end;
  92.  
  93. procedure TOptionsDialog.FormCreate(Sender: TObject);
  94. begin
  95.   RegisterINIDataProp('TCheckBox', 'State');
  96.   RegisterINIDataProp('TRadioGroup', 'ItemIndex');
  97.   RegisterINIDataProp('TEdit', 'Text');
  98.   RegisterINIDataProp('TSpinEdit', 'Value');
  99.   LoadOptions;
  100. end;
  101.  
  102. procedure TOptionsDialog.OKBtnClick(Sender: TObject);
  103. begin
  104.   ModalResult := mrOk;
  105. end;
  106.  
  107. procedure TOptionsDialog.CancelBtnClick(Sender: TObject);
  108. begin
  109.   ModalResult := mrCancel;
  110. end;
  111.  
  112. procedure TOptionsDialog.HelpBtnClick(Sender: TObject);
  113. begin
  114.   ShowMessage('Sorry: Not Implemented!');
  115. end;
  116.  
  117. end.
  118.