From 0eeb6c3e6d1a9d072b59ecc3f7742d090e3339bd Mon Sep 17 00:00:00 2001 From: graemeg Date: Tue, 18 Sep 2007 08:45:36 +0000 Subject: * Minor fix for the Save button state in the File Save dialog --- src/gui/gui_dialogs.pas | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/gui/gui_dialogs.pas b/src/gui/gui_dialogs.pas index 715685d4..49303f17 100644 --- a/src/gui/gui_dialogs.pas +++ b/src/gui/gui_dialogs.pas @@ -130,6 +130,8 @@ type procedure FilterChange(Sender: TObject); procedure DirChange(Sender: TObject); procedure UpDirClick(Sender: TObject); + procedure edFilenameChanged(Sender: TObject); + procedure UpdateButtonState; protected procedure HandleKeyPress(var keycode: word; var shiftstate: TShiftState; var consumed: boolean); override; procedure btnOKClick(Sender: TObject); override; @@ -717,10 +719,7 @@ begin if grid.CurrentEntry.EntryType <> etDir then edFileName.Text := grid.CurrentEntry.Name; - if FOpenMode then - btnOK.Enabled := grid.CurrentEntry.EntryType = etFile - else - btnOK.Enabled := edFileName.Text <> ''; + UpdateButtonState; lbFileInfo.Text := s; end; @@ -840,6 +839,7 @@ begin Anchors := [anLeft, anRight, anBottom]; Text := ''; FontDesc := '#Edit1'; + OnChange := @edFilenameChanged; end; { Filter section } @@ -913,7 +913,7 @@ begin inherited Create(AOwner); WindowTitle := 'File Selection'; Width := 640; - Height := 410; // 460; + Height := 410; WindowPosition := wpScreenCenter; FSpacing := 10; @@ -949,6 +949,19 @@ begin SetCurrentDirectory('..'); end; +procedure TfpgFileDialog.edFilenameChanged(Sender: TObject); +begin + UpdateButtonState; +end; + +procedure TfpgFileDialog.UpdateButtonState; +begin + if FOpenMode then + btnOK.Enabled := grid.CurrentEntry.EntryType = etFile + else + btnOK.Enabled := edFileName.Text <> ''; +end; + procedure TfpgFileDialog.SetCurrentDirectory(const ADir: string); var ds: string; -- cgit v1.2.3-70-g09d2