mirror of
https://github.com/HeidiSQL/HeidiSQL.git
synced 2025-08-06 18:24:26 +08:00
Refresh sorting controls per timer when user presses the delete button of one sorting. Fixes issue #520
This commit is contained in:
@ -26,6 +26,9 @@ type
|
|||||||
FColumnNames: TStringList;
|
FColumnNames: TStringList;
|
||||||
FSortItems: TSortItems;
|
FSortItems: TSortItems;
|
||||||
FOldOrderClause: String;
|
FOldOrderClause: String;
|
||||||
|
FDeleteTimer: TTimer;
|
||||||
|
FDeleteButtonPressed: TButton;
|
||||||
|
procedure DeleteTimerTimer(Sender: TObject);
|
||||||
procedure comboColumnsChange(Sender: TObject);
|
procedure comboColumnsChange(Sender: TObject);
|
||||||
procedure btnOrderClick(Sender: TObject);
|
procedure btnOrderClick(Sender: TObject);
|
||||||
procedure btnDeleteClick(Sender: TObject);
|
procedure btnDeleteClick(Sender: TObject);
|
||||||
@ -57,6 +60,11 @@ begin
|
|||||||
FSortItems.Assign(MainForm.DataGridSortItems);
|
FSortItems.Assign(MainForm.DataGridSortItems);
|
||||||
FOldOrderClause := FSortItems.ComposeOrderClause(MainForm.ActiveConnection);
|
FOldOrderClause := FSortItems.ComposeOrderClause(MainForm.ActiveConnection);
|
||||||
|
|
||||||
|
FDeleteTimer := TTimer.Create(Self);
|
||||||
|
FDeleteTimer.Interval := 100;
|
||||||
|
FDeleteTimer.Enabled := False;
|
||||||
|
FDeleteTimer.OnTimer := DeleteTimerTimer;
|
||||||
|
|
||||||
// First creation of controls
|
// First creation of controls
|
||||||
DisplaySortingControls(Sender);
|
DisplaySortingControls(Sender);
|
||||||
end;
|
end;
|
||||||
@ -236,11 +244,16 @@ end;
|
|||||||
Delete order column
|
Delete order column
|
||||||
}
|
}
|
||||||
procedure TfrmDataSorting.btnDeleteClick(Sender: TObject);
|
procedure TfrmDataSorting.btnDeleteClick(Sender: TObject);
|
||||||
var
|
|
||||||
btn: TButton;
|
|
||||||
begin
|
begin
|
||||||
btn := Sender as TButton;
|
FDeleteButtonPressed := Sender as TButton;
|
||||||
FSortItems.Delete(btn.Tag-1);
|
FDeleteTimer.Enabled := True;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TfrmDataSorting.DeleteTimerTimer(Sender: TObject);
|
||||||
|
begin
|
||||||
|
FDeleteTimer.Enabled := False;
|
||||||
|
FSortItems.Delete(FDeleteButtonPressed.Tag-1);
|
||||||
// Refresh controls
|
// Refresh controls
|
||||||
DisplaySortingControls(Self);
|
DisplaySortingControls(Self);
|
||||||
// Enables OK button
|
// Enables OK button
|
||||||
|
Reference in New Issue
Block a user