From bc487d089cbe765bb8ac67205d9430d8013c1c6f Mon Sep 17 00:00:00 2001 From: Ansgar Becker Date: Tue, 2 Mar 2010 23:23:02 +0000 Subject: [PATCH] Avoid AVs when index lists are in editing mode and user clicks "Remove" or "Clear" button. Fixes issue #1733. --- source/table_editor.pas | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/source/table_editor.pas b/source/table_editor.pas index 3580824f..e5601777 100644 --- a/source/table_editor.pas +++ b/source/table_editor.pas @@ -1381,6 +1381,8 @@ var NewSelectNode: PVirtualNode; begin // Remove index or part + if treeIndexes.IsEditing then + treeIndexes.CancelEditNode; case treeIndexes.GetNodeLevel(treeIndexes.FocusedNode) of 0: begin idx := treeIndexes.FocusedNode.Index; @@ -1952,6 +1954,8 @@ var Key: TForeignKey; begin // Remove a foreign key + if listForeignKeys.IsEditing then + listForeignKeys.CancelEditNode; Key := FForeignKeys[listForeignKeys.FocusedNode.Index]; if not Key.Added then DeletedForeignKeys.Add(Key.KeyName); @@ -1966,6 +1970,8 @@ var i: Integer; begin // Clear all foreign keys + if listForeignKeys.IsEditing then + listForeignKeys.CancelEditNode; for i:=FForeignKeys.Count-1 downto 0 do begin if not FForeignKeys[i].Added then DeletedForeignKeys.Add(FForeignKeys[i].KeyName);