home *** CD-ROM | disk | FTP | other *** search
- unit Sugdlg32;
-
- interface
-
- uses
- SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
- Forms, Dialogs, StdCtrls;
-
- type
- TSugDialog = class(TForm)
- NotWord: TEdit;
- SuggestList: TListBox;
- BtnChange: TButton;
- BtnIgnore: TButton;
- BtnAdd: TButton;
- BtnSuggest: TButton;
- BtnCancel: TButton;
- WordEdit: TEdit;
- Label1: TLabel;
- Label2: TLabel;
- BtnIgnoreAll: TButton;
- BtnChangeAll: TButton;
- BtnPhoneme: TButton;
- procedure BtnSuggestClick(Sender: TObject);
- procedure BtnPhonemeClick(Sender: TObject);
- procedure BtnChangeClick(Sender: TObject);
- procedure BtnIgnoreClick(Sender: TObject);
- procedure BtnAddClick(Sender: TObject);
- procedure BtnCancelClick(Sender: TObject);
- procedure SuggestListClick(Sender: TObject);
- procedure SuggestListDblClick(Sender: TObject);
- procedure BtnIgnoreAllClick(Sender: TObject);
- procedure BtnChangeAllClick(Sender: TObject);
- procedure WordEditKeyPress(Sender: TObject; var Key: Char);
- private
- { Private declarations }
- public
- { Public declarations }
- DictDataPtr : pointer; { Pointer to internal dictionary data }
- MaxSuggest : byte; { Maximum number of suggestions }
- TheResult : byte; { Result of button press }
- procedure DisableButtons; { Disable all but the Cancel button }
- procedure EnableButtons; { Enable all buttons/edits/Listboxs }
- end;
-
- var
- SugDialog: TSugDialog;
-
- implementation
-
- {$R *.DFM}
-
- uses BsASpl32;
-
- procedure TSugDialog.DisableButtons;
- { Disable all but the Cancel button }
- begin
- BtnIgnore.Enabled := false;
- BtnIgnoreAll.Enabled := false;
- BtnChange.Enabled := false;
- BtnChangeAll.Enabled := false;
- BtnAdd.Enabled := false;
- BtnSuggest.Enabled := false;
- BtnPhoneme.Enabled := false;
- NotWord.Enabled := false;
- WordEdit.Enabled := false;
- SuggestList.Enabled := false;
- end;
-
- procedure TSugDialog.EnableButtons;
- { Enable all buttons/edits/Listboxs }
- begin
- BtnIgnore.Enabled := true;
- BtnIgnoreAll.Enabled := true;
- BtnChange.Enabled := true;
- BtnChangeAll.Enabled := true;
- BtnAdd.Enabled := true;
- BtnSuggest.Enabled := true;
- BtnPhoneme.Enabled := true;
- NotWord.Enabled := true;
- WordEdit.Enabled := true;
- SuggestList.Enabled := true;
- end;
-
- procedure TSugDialog.BtnSuggestClick(Sender: TObject);
- begin
- { Build a new list of suggestions using the CloseMatch routine }
- SuggestList.Items := BsASpl32.SuggestCloseMatch(DictDataPtr, WordEdit.Text, MaxSuggest);
- end;
-
- procedure TSugDialog.BtnPhonemeClick(Sender: TObject);
- begin
- { Build a new list of suggestions using the Phoneme routine }
- SuggestList.Items := BsASpl32.SuggestPhoneme(DictDataPtr, WordEdit.Text, MaxSuggest);
- end;
-
-
- procedure TSugDialog.BtnChangeClick(Sender: TObject);
- begin
- TheResult := 101; { Close dialog and return value }
- end;
-
- procedure TSugDialog.BtnIgnoreClick(Sender: TObject);
- begin
- TheResult := 103; { Close dialog and return value }
- end;
-
- procedure TSugDialog.BtnAddClick(Sender: TObject);
- begin
- TheResult := 102; { Close dialog and return value }
- end;
-
- procedure TSugDialog.BtnCancelClick(Sender: TObject);
- begin
- TheResult := 100; { Close dialog and return value }
- end;
-
- procedure TSugDialog.SuggestListClick(Sender: TObject);
- begin
- { Make the word clicked in the listbox the selected word }
- WordEdit.Text := SuggestList.Items.Strings[SuggestList.ItemIndex];
- end;
-
- procedure TSugDialog.SuggestListDblClick(Sender: TObject);
- begin
- { Get the double clicked word }
- WordEdit.Text := SuggestList.Items.Strings[SuggestList.ItemIndex];
- TheResult := 101; { Close dialog and return Replace's code }
- end;
-
- procedure TSugDialog.BtnIgnoreAllClick(Sender: TObject);
- begin
- TheResult := 104; { Close dialog and return value }
- end;
-
- procedure TSugDialog.BtnChangeAllClick(Sender: TObject);
- begin
- TheResult := 105; { Close dialog and return value }
- end;
-
- procedure TSugDialog.WordEditKeyPress(Sender: TObject; var Key: Char);
- begin
- if key = #13 then
- TheResult := 101; { Treat ENTER in WordEdit as pressing the Change button }
- end;
-
- end.
-