diff --git a/source/childwin.pas b/source/childwin.pas index edae1a98..4412bb72 100644 --- a/source/childwin.pas +++ b/source/childwin.pas @@ -5544,8 +5544,9 @@ begin frm.Top := btn.ClientOrigin.Y + btn.Height; frm.Left := btn.ClientOrigin.X; - // Display form - frm.ShowModal; + // Display form and refresh data if needed + if frm.ShowModal = mrOK then + ViewData(self); btn.Down := False; end; diff --git a/source/column_selection.dfm b/source/column_selection.dfm index 1b24774e..dec83f0d 100644 --- a/source/column_selection.dfm +++ b/source/column_selection.dfm @@ -12,7 +12,6 @@ object ColumnSelectionForm: TColumnSelectionForm Font.Name = 'Tahoma' Font.Style = [] OldCreateOrder = False - OnClose = FormClose OnShow = FormShow PixelsPerInch = 96 TextHeight = 13 @@ -31,8 +30,8 @@ object ColumnSelectionForm: TColumnSelectionForm Height = 25 Cancel = True Caption = 'Cancel' + ModalResult = 2 TabOrder = 3 - OnClick = btnCancelClick end object btnOK: TButton Left = 4 diff --git a/source/column_selection.pas b/source/column_selection.pas index f522ac1c..286158f0 100644 --- a/source/column_selection.pas +++ b/source/column_selection.pas @@ -16,9 +16,7 @@ type procedure FormShow(Sender: TObject); procedure chklistColumnsClickCheck(Sender: TObject); procedure chkSelectAllClick(Sender: TObject); - procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure btnOKClick(Sender: TObject); - procedure btnCancelClick(Sender: TObject); private { Private declarations } public @@ -76,15 +74,6 @@ begin end; -{** - Cancel clicked -} -procedure TColumnSelectionForm.btnCancelClick(Sender: TObject); -begin - ModalResult := mrCancel; -end; - - {** OK clicked } @@ -138,27 +127,15 @@ begin reg.WriteString( reg_name, reg_newvalue ); end; - try - // Reload grid-data if column selection has changed - if reg_oldvalue <> reg_newvalue then - Mainform.Childwin.viewdata( Sender ); - finally - ModalResult := mrOk; - end; + // Signalizes childwin to refresh grid-data + if reg_oldvalue <> reg_newvalue then + ModalResult := mrOk + else + ModalResult := mrCancel; end; -{** - Form is closing -} -procedure TColumnSelectionForm.FormClose(Sender: TObject; - var Action: TCloseAction); -begin - Mainform.Childwin.btnColumnSelection.Down := False; -end; - - {** Select / Deselect all } diff --git a/source/data_sorting.pas b/source/data_sorting.pas index 493c4715..892a60d6 100644 --- a/source/data_sorting.pas +++ b/source/data_sorting.pas @@ -341,9 +341,6 @@ begin reg_name := 'ORDERCLAUSE_' + Mainform.Childwin.ActualDatabase + '.' + Mainform.Childwin.ActualTable; reg.WriteString( reg_name, reg_value ); reg.CloseKey; - - // Refresh data - Mainform.Childwin.viewdata(self); end;