{*******************************************************} { } { Responsive Software http://www.responsive.co.nz } { } { Copyright (c) 2003-2006 Responsive Software Limited } { } {*******************************************************} unit PromptAccountType; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Base, Grids, StdCtrls, Buttons, DatabaseObjects; type TPromptAccountTypeForm = class(TBaseForm) CancelBitBtn: TBitBtn; AssetButton: TButton; LiabilityButton: TButton; EquityButton: TButton; IncomeButton: TButton; ExpenseButton: TButton; procedure FormShow(Sender: TObject); procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure AssetButtonClick(Sender: TObject); procedure LiabilityButtonClick(Sender: TObject); procedure EquityButtonClick(Sender: TObject); procedure IncomeButtonClick(Sender: TObject); procedure ExpenseButtonClick(Sender: TObject); private { Private declarations } public { Public declarations } AccountType : TAccountType; function Prompt : boolean; end; var PromptAccountTypeForm: TPromptAccountTypeForm; implementation {$R *.dfm} function TPromptAccountTypeForm.Prompt : boolean; begin Result := (ShowModal = mrOk); end; procedure TPromptAccountTypeForm.FormShow(Sender: TObject); begin AccountType := atAsset; AssetButton.SetFocus; end; procedure TPromptAccountTypeForm.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if Key = VK_ESCAPE then begin Close; Key := 0; end; end; procedure TPromptAccountTypeForm.AssetButtonClick(Sender: TObject); begin AccountType := atAsset; ModalResult := mrOk; end; procedure TPromptAccountTypeForm.LiabilityButtonClick(Sender: TObject); begin AccountType := atLiability; ModalResult := mrOk; end; procedure TPromptAccountTypeForm.EquityButtonClick(Sender: TObject); begin AccountType := atEquity; ModalResult := mrOk; end; procedure TPromptAccountTypeForm.IncomeButtonClick(Sender: TObject); begin AccountType := atIncome; ModalResult := mrOk; end; procedure TPromptAccountTypeForm.ExpenseButtonClick(Sender: TObject); begin AccountType := atExpense; ModalResult := mrOk; end; end.