Convert remaining menuitems in database tab to use TActions (add "Alter table" and "Table properties") and prefix various neighbour actions with "act"

This commit is contained in:
Ansgar Becker
2008-06-28 20:16:20 +00:00
parent a72f5a0e0f
commit d571ce83b9
4 changed files with 85 additions and 102 deletions

View File

@ -1568,10 +1568,7 @@ object MDIChild: TMDIChild
Action = MainForm.actCreateTable
end
object menuTreeAlterTable: TMenuItem
Caption = 'Alter table ...'
Enabled = False
ImageIndex = 17
OnClick = menuAlterTableClick
Action = MainForm.actAlterTable
end
object menuTreeCreateView: TMenuItem
Action = MainForm.actCreateView
@ -1583,7 +1580,7 @@ object MDIChild: TMDIChild
Action = MainForm.actDropTablesAndViews
end
object Exporttables2: TMenuItem
Action = MainForm.ExportTables
Action = MainForm.actExportTables
end
object N5: TMenuItem
Caption = '-'
@ -1611,29 +1608,17 @@ object MDIChild: TMDIChild
Left = 72
Top = 16
object menuproperties: TMenuItem
Caption = 'Properties'
Action = MainForm.actTableProperties
Default = True
Enabled = False
ImageIndex = 44
OnClick = ListTablesDblClick
end
object menuAlterTable: TMenuItem
Caption = 'Alter table ...'
Enabled = False
ImageIndex = 17
OnClick = menuAlterTableClick
Action = MainForm.actAlterTable
end
object actView1: TMenuItem
Action = MainForm.actEditView
end
object menuviewdata: TMenuItem
Caption = 'View Data'
Enabled = False
ImageIndex = 41
OnClick = MenuViewDataClick
end
object InsertfilesintoBLOBfields1: TMenuItem
Action = MainForm.InsertFiles
Action = MainForm.actInsertFiles
end
object N2: TMenuItem
Caption = '-'
@ -1667,13 +1652,13 @@ object MDIChild: TMDIChild
Action = MainForm.actCreateView
end
object Exporttables1: TMenuItem
Action = MainForm.ExportTables
Action = MainForm.actExportTables
end
object N10: TMenuItem
Caption = '-'
end
object PrintList3: TMenuItem
Action = MainForm.PrintList
Action = MainForm.actPrintList
end
object menurefresh: TMenuItem
Tag = 28
@ -1731,7 +1716,7 @@ object MDIChild: TMDIChild
Caption = '-'
end
object PrintList2: TMenuItem
Action = MainForm.PrintList
Action = MainForm.actPrintList
end
object Refresh1: TMenuItem
Tag = 28
@ -1809,10 +1794,10 @@ object MDIChild: TMDIChild
Caption = '-'
end
object InsertfilesintoBLOBfields2: TMenuItem
Action = MainForm.InsertFiles
Action = MainForm.actInsertFiles
end
object PrintList4: TMenuItem
Action = MainForm.PrintList
Action = MainForm.actPrintList
end
object Refresh2: TMenuItem
Tag = 28
@ -2029,7 +2014,7 @@ object MDIChild: TMDIChild
Action = MainForm.HTMLview
end
object InsertfilesintoBLOBfields3: TMenuItem
Action = MainForm.InsertFiles
Action = MainForm.actInsertFiles
end
object N19: TMenuItem
Caption = '-'

View File

@ -49,7 +49,6 @@ type
menuRefreshDBTree: TMenuItem;
tabTable: TTabSheet;
popupDbGrid: TPopupMenu;
menuviewdata: TMenuItem;
menuproperties: TMenuItem;
menudroptable: TMenuItem;
menuemptytable: TMenuItem;
@ -361,7 +360,6 @@ type
procedure ShowTableData(table: string);
procedure viewdata(Sender: TObject);
procedure RefreshFieldListClick(Sender: TObject);
procedure MenuViewDataClick(Sender: TObject);
procedure MenuRefreshClick(Sender: TObject);
procedure DropDB(Sender: TObject);
procedure LogSQL(msg: WideString = ''; comment: Boolean = true );
@ -378,7 +376,6 @@ type
procedure FormDeactivate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure UpdateField(Sender: TObject);
procedure menuAlterTableClick(Sender: TObject);
procedure ListTablesNewText(Sender: TBaseVirtualTree; Node: PVirtualNode;
Column: TColumnIndex; NewText: WideString);
procedure MenuRenameTableClick(Sender: TObject);
@ -553,7 +550,6 @@ type
CachedTableLists : TStringList;
QueryHelpersSelectedItems : Array[0..3] of Array of Integer;
CreateDatabaseForm : TCreateDatabaseForm;
TablePropertiesForm : Ttbl_properties_form;
EditVariableForm : TfrmEditVariable;
FileNameSessionLog : String;
FileHandleSessionLog : Textfile;
@ -611,6 +607,7 @@ type
prefLogToFile,
prefPreferShowTables : Boolean;
CreateTableForm : TCreateTableForm;
TablePropertiesForm : Ttbl_properties_form;
procedure Init(AConn : POpenConnProf; AMysqlConn : TMysqlConn);
@ -2169,10 +2166,9 @@ begin
ViewSelected := NodeData.NodeType = NODETYPE_VIEW;
end;
menuproperties.Enabled := NodeSelected;
menuviewdata.Enabled := NodeSelected;
Mainform.actTableProperties.Enabled := NodeSelected;
Mainform.actEmptyTables.Enabled := tableSelected;
menuAlterTable.Enabled := tableSelected;
Mainform.actAlterTable.Enabled := tableSelected;
MenuRenameTable.Enabled := NodeSelected;
Mainform.actCopyTable.Enabled := NodeSelected;
Mainform.actEditView.Enabled := ViewSelected and (mysql_version >= 50001);
@ -2187,10 +2183,9 @@ begin
with MainForm do
begin
ButtonRefresh.Enabled := FrmIsFocussed;
ExportTables.Enabled := FrmIsFocussed;
actExportTables.Enabled := FrmIsFocussed;
ButtonCreateDatabase.Enabled := FrmIsFocussed;
MenuRefresh.Enabled := FrmIsFocussed;
MenuExport.Enabled := FrmIsFocussed;
MenuCreateDatabase.Enabled := FrmIsFocussed;
MenuDropDatabase.Enabled := FrmIsFocussed;
LoadSQL.Enabled := FrmIsFocussed;
@ -2202,7 +2197,7 @@ begin
MenuFlushStatus.Enabled := FrmIsFocussed;
UserManager.Enabled := FrmIsFocussed;
actMaintenance.Enabled := FrmIsFocussed;
InsertFiles.Enabled := FrmIsFocussed;
actInsertFiles.Enabled := FrmIsFocussed;
{***
Activate export-options if we're on Data- or Query-tab
PrintList should only be active if we're focussing one of the ListViews,
@ -2210,7 +2205,7 @@ begin
@see Issue 1686582
}
inDataOrQueryTab := FrmIsFocussed and ((PageControlMain.ActivePage = tabData) or (PageControlMain.ActivePage = tabQuery));
PrintList.Enabled := (not inDataOrQueryTab) and FrmIsFocussed;
actPrintList.Enabled := (not inDataOrQueryTab) and FrmIsFocussed;
// Both the Query and the Data grid may have a nil DataSet reference,
// either in case the relevant grid has not been used yet, or when
// an error has occurred.
@ -2267,19 +2262,6 @@ begin
end;
procedure TMDIChild.MenuViewDataClick(Sender: TObject);
var
NodeData: PVTreeData;
begin
if Assigned(ListTables.FocusedNode) then begin
NodeData := ListTables.GetNodeData(ListTables.FocusedNode);
SelectedTable := NodeData.Captions[0];
ShowTable(SelectedTable);
ShowTableData(SelectedTable);
end;
end;
procedure TMDIChild.DropDB(Sender: TObject);
var
tndb_ : PVirtualNode;
@ -3098,30 +3080,6 @@ begin
end;
{**
"Alter table ..."
called by popupTreeView or popupDbGrid
}
procedure TMDIChild.menuAlterTableClick(Sender: TObject);
var
NodeData: PVTreeData;
caller : TPopupMenu;
begin
if TablePropertiesForm = nil then
TablePropertiesForm := Ttbl_properties_form.Create(Self);
caller := TPopupMenu( TMenuItem( Sender ).GetParentMenu );
if caller = popupTreeView then
TablePropertiesForm.TableName := SelectedTable
else begin
NodeData := ListTables.GetNodeData( ListTables.FocusedNode );
TablePropertiesForm.TableName := NodeData.Captions[0];
end;
TablePropertiesForm.ShowModal;
end;
{***
Rename table after checking the new name for invalid characters
}
@ -3237,15 +3195,8 @@ begin
end;
procedure TMDIChild.ListTablesDblClick(Sender: TObject);
var
NodeData : PVTreeData;
begin
// table-doubleclick
if Assigned(ListTables.FocusedNode) then begin
NodeData := ListTables.GetNodeData(ListTables.FocusedNode);
SelectedTable := NodeData.Captions[0];
PageControlMain.ActivePage := tabTable;
end;
Mainform.actTableProperties.Execute;
end;
@ -3995,7 +3946,7 @@ begin
menuAlterDatabase.Hint := STR_NOTSUPPORTED
else
menuAlterDatabase.Hint := 'Rename and/or modify character set of database';
menuTreeAlterTable.Enabled := (L = 2) and (GetSelectedNodeType = NODETYPE_TABLE);
Mainform.actAlterTable.Enabled := (L = 2) and (GetSelectedNodeType = NODETYPE_TABLE);
Mainform.actEditView.Enabled := (L = 2) and (GetSelectedNodeType = NODETYPE_VIEW);
MainForm.actDropTablesAndViews.Enabled := (L = 2);
end;

View File

@ -112,7 +112,7 @@ object MainForm: TMainForm
object ToolButton12: TToolButton
Left = 142
Top = 0
Action = PrintList
Action = actPrintList
end
object tlbSep2: TToolButton
Left = 165
@ -188,7 +188,7 @@ object MainForm: TMainForm
Left = 304
Top = 0
Hint = 'Export tables'
Action = ExportTables
Action = actExportTables
AutoSize = True
end
object tlbSep6: TToolButton
@ -587,7 +587,7 @@ object MainForm: TMainForm
Action = LoadSQL
end
object InsertfilesintoBLOBfields1: TMenuItem
Action = InsertFiles
Action = actInsertFiles
end
end
object ImExport1: TMenuItem
@ -595,7 +595,7 @@ object MainForm: TMainForm
Caption = 'E&xport'
object MenuExport: TMenuItem
Tag = 45
Action = ExportTables
Action = actExportTables
end
object N11: TMenuItem
Caption = '-'
@ -777,14 +777,14 @@ object MainForm: TMainForm
ImageIndex = 20
OnExecute = ExportDataExecute
end
object PrintList: TAction
object actPrintList: TAction
Tag = 61
Caption = 'Print...'
Enabled = False
Hint = 'Print List or Data'
ImageIndex = 34
ShortCut = 16464
OnExecute = PrintListExecute
OnExecute = actPrintListExecute
end
object actCopyTable: TAction
Tag = 62
@ -830,17 +830,17 @@ object MainForm: TMainForm
ImageIndex = 32
OnExecute = HTMLviewExecute
end
object InsertFiles: TAction
object actInsertFiles: TAction
Caption = 'Insert files into BLOB-fields...'
Enabled = False
ImageIndex = 47
OnExecute = InsertFilesExecute
OnExecute = actInsertFilesExecute
end
object ExportTables: TAction
object actExportTables: TAction
Caption = 'Export tables as SQL'
Enabled = False
ImageIndex = 20
OnExecute = ExportTablesExecute
OnExecute = actExportTablesExecute
end
object LoadSQL: TAction
Caption = 'Load SQL-file ...'
@ -917,8 +917,20 @@ object MainForm: TMainForm
Caption = 'Empty table(s) ...'
Hint = 'Delete all rows in selected table(s)'
ImageIndex = 46
ShortCut = 8238
OnExecute = actEmptyTablesExecute
end
object actTableProperties: TAction
Caption = 'Table properties'
ImageIndex = 44
OnExecute = actTablePropertiesExecute
end
object actAlterTable: TAction
Caption = 'Alter table ...'
Hint = 'Edit table engine, charset, auto increment etc.'
ImageIndex = 17
OnExecute = actAlterTableExecute
end
end
object SaveDialog2: TSaveDialog
DefaultExt = 'reg'

View File

@ -76,7 +76,7 @@ type
menuWebsite: TMenuItem;
N9: TMenuItem;
N11: TMenuItem;
PrintList: TAction;
actPrintList: TAction;
actCopyTable: TAction;
ControlBar1: TControlBar;
ToolBarStandard: TToolBar;
@ -117,9 +117,9 @@ type
CopyasXMLdata1: TMenuItem;
ExecuteLine: TAction;
HTMLview: TAction;
InsertFiles: TAction;
actInsertFiles: TAction;
InsertfilesintoBLOBfields1: TMenuItem;
ExportTables: TAction;
actExportTables: TAction;
DataSearch: TAction;
actDropTablesAndViews: TAction;
LoadSQL: TAction;
@ -165,6 +165,9 @@ type
btnTableManageIndexes: TToolButton;
actCreateTable: TAction;
actEmptyTables: TAction;
actTableProperties: TAction;
actAlterTable: TAction;
procedure actAlterTableExecute(Sender: TObject);
procedure actCreateTableExecute(Sender: TObject);
procedure actCreateViewExecute(Sender: TObject);
procedure btnSQLHelpClick(Sender: TObject);
@ -191,7 +194,7 @@ type
procedure actEditViewExecute(Sender: TObject);
procedure CopyHTMLtableExecute(Sender: TObject);
procedure Copy2CSVExecute(Sender: TObject);
procedure PrintListExecute(Sender: TObject);
procedure actPrintListExecute(Sender: TObject);
procedure actCopyTableExecute(Sender: TObject);
procedure showstatus(msg: string=''; panel: Integer=4);
procedure ButtonOKClick(Sender: TObject);
@ -207,14 +210,15 @@ type
procedure ExportDataExecute(Sender: TObject);
procedure ExecuteLineExecute(Sender: TObject);
procedure HTMLviewExecute(Sender: TObject);
procedure InsertFilesExecute(Sender: TObject);
procedure ExportTablesExecute(Sender: TObject);
procedure actInsertFilesExecute(Sender: TObject);
procedure actExportTablesExecute(Sender: TObject);
procedure DataSearchExecute(Sender: TObject);
procedure actDataSetDeleteExecute(Sender: TObject);
procedure btnTableAddFieldClick(Sender: TObject);
procedure btnTableEditFieldClick(Sender: TObject);
procedure actDropTablesAndViewsExecute(Sender: TObject);
procedure actEmptyTablesExecute(Sender: TObject);
procedure actTablePropertiesExecute(Sender: TObject);
procedure LoadSQLExecute(Sender: TObject);
procedure EnsureConnected;
function ExecuteRemoteQuery(sender: THandle; query: string): TDataSet;
@ -831,7 +835,7 @@ begin
end;
procedure TMainForm.PrintListExecute(Sender: TObject);
procedure TMainForm.actPrintListExecute(Sender: TObject);
var
page : TTabSheet;
begin
@ -1078,12 +1082,12 @@ begin
ShellExec( filename );
end;
procedure TMainForm.InsertFilesExecute(Sender: TObject);
procedure TMainForm.actInsertFilesExecute(Sender: TObject);
begin
InsertFilesWindow(Self);
end;
procedure TMainForm.ExportTablesExecute(Sender: TObject);
procedure TMainForm.actExportTablesExecute(Sender: TObject);
begin
// Export SQL
ExportTablesWindow (Self);
@ -1428,4 +1432,35 @@ begin
Screen.Cursor := crDefault;
end;
procedure TMainForm.actTablePropertiesExecute(Sender: TObject);
var
NodeData: PVTreeData;
begin
// table-doubleclick
if Assigned(Childwin.ListTables.FocusedNode) then begin
NodeData := Childwin.ListTables.GetNodeData(Childwin.ListTables.FocusedNode);
Childwin.SelectedTable := NodeData.Captions[0];
Childwin.PageControlMain.ActivePage := Childwin.tabTable;
end;
end;
procedure TMainForm.actAlterTableExecute(Sender: TObject);
var
NodeData: PVTreeData;
caller: TComponent;
begin
if Childwin.TablePropertiesForm = nil then
Childwin.TablePropertiesForm := Ttbl_properties_form.Create(Self);
caller := TAction(Sender).ActionComponent;
if caller = Childwin.menuTreeAlterTable then
Childwin.TablePropertiesForm.TableName := Childwin.SelectedTable
else begin
NodeData := Childwin.ListTables.GetNodeData( Childwin.ListTables.FocusedNode );
Childwin.TablePropertiesForm.TableName := NodeData.Captions[0];
end;
Childwin.TablePropertiesForm.ShowModal;
end;
end.