mirror of
https://github.com/HeidiSQL/HeidiSQL.git
synced 2026-03-13 09:24:25 +08:00
feat: add "Display" main menu, move some spread items there, and add two items for toggling log panel and tree filters
Refs #1891
This commit is contained in:
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: HeidiSQL\n"
|
||||
"POT-Creation-Date: 2012-11-05 21:40\n"
|
||||
"PO-Revision-Date: 2026-02-22 16:29+0100\n"
|
||||
"PO-Revision-Date: 2026-02-22 16:55+0100\n"
|
||||
"Last-Translator: Ansgar Becker <anse@heidisql.com>\n"
|
||||
"Language-Team: English (http://www.transifex.com/projects/p/heidisql/language/en/)\n"
|
||||
"Language: en\n"
|
||||
@@ -6779,3 +6779,12 @@ msgstr "Make sure sshpass is available when using a password"
|
||||
|
||||
msgid "Copy column names"
|
||||
msgstr "Copy column names"
|
||||
|
||||
msgid "Display"
|
||||
msgstr "Display"
|
||||
|
||||
msgid "Tree filters"
|
||||
msgstr "Tree filters"
|
||||
|
||||
msgid "Log panel"
|
||||
msgstr "Log panel"
|
||||
|
||||
@@ -234,7 +234,7 @@ type
|
||||
asCreateDbCollation, asRealTrailingZeros,
|
||||
asSequalSuggestWindowWidth, asSequalSuggestWindowHeight, asSequalSuggestPrompt, asSequalSuggestRecentPrompts,
|
||||
asReformatter, asReformatterNoDialog, asAlwaysGenerateFilter,
|
||||
asGenerateDataNumRows, asGenerateDataNullAmount, asWebOnceAction,
|
||||
asGenerateDataNumRows, asGenerateDataNullAmount, asWebOnceAction, asDisplayLogPanel, asDisplayTreeFilters,
|
||||
asUnused);
|
||||
TAppSetting = record
|
||||
Name: String;
|
||||
@@ -3840,6 +3840,8 @@ begin
|
||||
InitSetting(asRowBackgroundOdd, 'RowBackgroundOdd', clNone);
|
||||
InitSetting(asGroupTreeObjects, 'GroupTreeObjects', 0, False);
|
||||
InitSetting(asDisplayObjectSizeColumn, 'DisplayObjectSizeColumn', 0, True);
|
||||
InitSetting(asDisplayLogPanel, 'DisplayLogPanel', 0, True);
|
||||
InitSetting(asDisplayTreeFilters, 'DisplayTreeFilters', 0, True);
|
||||
InitSetting(asActionShortcut1, 'Shortcut1_%s', 0);
|
||||
InitSetting(asActionShortcut2, 'Shortcut2_%s', 0);
|
||||
InitSetting(asHighlighterForeground, 'SQL Attr %s Foreground', 0);
|
||||
|
||||
@@ -3677,10 +3677,35 @@ object MainForm: TMainForm
|
||||
object Inverseselection1: TMenuItem
|
||||
Action = actSelectInverse
|
||||
end
|
||||
object actFindInVT1: TMenuItem
|
||||
end
|
||||
object MainMenuDisplay: TMenuItem
|
||||
Caption = 'Display'
|
||||
object menuDisplaysizeofobjects1: TMenuItem
|
||||
Action = actDisplayObjectSize
|
||||
AutoCheck = True
|
||||
end
|
||||
object menuShowonlyfavorites1: TMenuItem
|
||||
Action = actFavoriteObjectsOnly
|
||||
AutoCheck = True
|
||||
end
|
||||
object menuFilterpanel1: TMenuItem
|
||||
Action = actFilterPanel
|
||||
AutoCheck = True
|
||||
end
|
||||
object menuDisplayLogPanel1: TMenuItem
|
||||
Action = actDisplayLogPanel
|
||||
AutoCheck = True
|
||||
end
|
||||
object menuTreefilters1: TMenuItem
|
||||
Action = actDisplayTreeFilters
|
||||
AutoCheck = True
|
||||
end
|
||||
object Separator1: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object menuResetpaneldimensions1: TMenuItem
|
||||
Action = actResetPanelDimensions
|
||||
end
|
||||
end
|
||||
object MainMenuSearch: TMenuItem
|
||||
Caption = 'Search'
|
||||
@@ -3847,9 +3872,6 @@ object MainForm: TMainForm
|
||||
object N4: TMenuItem
|
||||
Caption = '-'
|
||||
end
|
||||
object Resetpaneldimensions1: TMenuItem
|
||||
Action = actResetPanelDimensions
|
||||
end
|
||||
object menuColorScheme: TMenuItem
|
||||
Caption = 'Color scheme'
|
||||
ImageIndex = 115
|
||||
@@ -4553,7 +4575,6 @@ object MainForm: TMainForm
|
||||
AutoCheck = True
|
||||
Caption = 'Filter panel'
|
||||
Hint = 'Activates the filter panel'
|
||||
ImageIndex = 30
|
||||
ShortCut = 49222
|
||||
OnExecute = actFilterPanelExecute
|
||||
end
|
||||
@@ -5066,6 +5087,24 @@ object MainForm: TMainForm
|
||||
Caption = 'SQL editor preferences'
|
||||
DisableIfNoHandler = False
|
||||
end
|
||||
object actDisplayObjectSize: TAction
|
||||
Category = 'Various'
|
||||
AutoCheck = True
|
||||
Caption = 'Display size of objects'
|
||||
OnExecute = actDisplayObjectSizeExecute
|
||||
end
|
||||
object actDisplayLogPanel: TAction
|
||||
Category = 'Various'
|
||||
AutoCheck = True
|
||||
Caption = 'Log panel'
|
||||
OnExecute = actDisplayLogPanelExecute
|
||||
end
|
||||
object actDisplayTreeFilters: TAction
|
||||
Category = 'Various'
|
||||
AutoCheck = True
|
||||
Caption = 'Tree filters'
|
||||
OnExecute = actDisplayTreeFiltersExecute
|
||||
end
|
||||
end
|
||||
object ImageListMain: TImageList
|
||||
Scaled = True
|
||||
@@ -20475,9 +20514,8 @@ object MainForm: TMainForm
|
||||
AutoCheck = True
|
||||
end
|
||||
object menuShowSizeColumn: TMenuItem
|
||||
Action = actDisplayObjectSize
|
||||
AutoCheck = True
|
||||
Caption = 'Display size of objects'
|
||||
OnClick = menuShowSizeColumnClick
|
||||
end
|
||||
object menuAutoExpand: TMenuItem
|
||||
Caption = 'Auto expand on click'
|
||||
|
||||
@@ -524,7 +524,6 @@ type
|
||||
pnlRight: TPanel;
|
||||
btnCloseFilterPanel: TSpeedButton;
|
||||
actFilterPanel: TAction;
|
||||
actFindInVT1: TMenuItem;
|
||||
TimerFilterVT: TTimer;
|
||||
actFindTextOnServer: TAction;
|
||||
actFindTextOnServer1: TMenuItem;
|
||||
@@ -806,7 +805,6 @@ type
|
||||
btnDonate: TToolButton;
|
||||
ToolButton2: TToolButton;
|
||||
actResetPanelDimensions: TAction;
|
||||
Resetpaneldimensions1: TMenuItem;
|
||||
popupApplyFilter: TPopupMenu;
|
||||
menuAlwaysGenerateFilter: TMenuItem;
|
||||
actGenerateData: TAction;
|
||||
@@ -816,6 +814,17 @@ type
|
||||
actCopyGridNodes1: TMenuItem;
|
||||
actQueryTable: TAction;
|
||||
Selecttop1000rows1: TMenuItem;
|
||||
MainMenuDisplay: TMenuItem;
|
||||
actDisplayObjectSize: TAction;
|
||||
menuDisplaysizeofobjects1: TMenuItem;
|
||||
menuShowonlyfavorites1: TMenuItem;
|
||||
menuFilterpanel1: TMenuItem;
|
||||
menuResetpaneldimensions1: TMenuItem;
|
||||
actDisplayLogPanel: TAction;
|
||||
actDisplayTreeFilters: TAction;
|
||||
menuDisplayLogPanel1: TMenuItem;
|
||||
menuTreefilters1: TMenuItem;
|
||||
Separator1: TMenuItem;
|
||||
procedure actCreateDBObjectExecute(Sender: TObject);
|
||||
procedure actNextTabExecute(Sender: TObject);
|
||||
procedure actPreviousTabExecute(Sender: TObject);
|
||||
@@ -981,7 +990,7 @@ type
|
||||
procedure AnyGridAfterCellPaint(Sender: TBaseVirtualTree;
|
||||
TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex;
|
||||
CellRect: TRect);
|
||||
procedure menuShowSizeColumnClick(Sender: TObject);
|
||||
procedure actDisplayObjectSizeExecute(Sender: TObject);
|
||||
procedure AnyGridBeforeCellPaint(Sender: TBaseVirtualTree;
|
||||
TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex;
|
||||
CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect);
|
||||
@@ -1217,6 +1226,8 @@ type
|
||||
procedure actCopyGridNodesExecute(Sender: TObject);
|
||||
procedure ApplicationException(Sender: TObject; E: Exception);
|
||||
procedure actQueryTableExecute(Sender: TObject);
|
||||
procedure actDisplayLogPanelExecute(Sender: TObject);
|
||||
procedure actDisplayTreeFiltersExecute(Sender: TObject);
|
||||
private
|
||||
// Executable file details
|
||||
FAppVerMajor: Integer;
|
||||
@@ -1993,10 +2004,14 @@ begin
|
||||
DataGridTable := nil;
|
||||
FActiveDbObj := nil;
|
||||
|
||||
// Database tree options
|
||||
// Display options, and database tree options
|
||||
actGroupObjects.Checked := AppSettings.ReadBool(asGroupTreeObjects);
|
||||
if AppSettings.ReadBool(asDisplayObjectSizeColumn) then
|
||||
menuShowSizeColumn.Click;
|
||||
actDisplayObjectSize.Checked := AppSettings.ReadBool(asDisplayObjectSizeColumn);
|
||||
actDisplayObjectSizeExecute(nil);
|
||||
actDisplayLogPanel.Checked := AppSettings.ReadBool(asDisplayLogPanel);
|
||||
actDisplayLogPanelExecute(nil);
|
||||
actDisplayTreeFilters.Checked := AppSettings.ReadBool(asDisplayTreeFilters);
|
||||
actDisplayTreeFiltersExecute(nil);
|
||||
if AppSettings.ReadBool(asAutoExpand) then
|
||||
menuAutoExpand.Click;
|
||||
if AppSettings.ReadBool(asDoubleClickInsertsNodeText) then
|
||||
@@ -10883,20 +10898,43 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
procedure TMainForm.menuShowSizeColumnClick(Sender: TObject);
|
||||
var
|
||||
Item: TMenuItem;
|
||||
procedure TMainForm.actDisplayLogPanelExecute(Sender: TObject);
|
||||
begin
|
||||
if coVisible in DBtree.Header.Columns[1].Options then
|
||||
DBtree.Header.Columns[1].Options := DBtree.Header.Columns[1].Options - [coVisible]
|
||||
else
|
||||
DBtree.Header.Columns[1].Options := DBtree.Header.Columns[1].Options + [coVisible];
|
||||
Item := Sender as TMenuItem;
|
||||
Item.Checked := coVisible in DBtree.Header.Columns[1].Options;
|
||||
if actDisplayLogPanel.Checked then begin
|
||||
SynMemoSQLLog.Visible := True;
|
||||
spltTopBottom.Visible := True;
|
||||
// ensure z-order: top panel, splitter, memo
|
||||
spltTopBottom.BringToFront;
|
||||
SynMemoSQLLog.BringToFront;
|
||||
end
|
||||
else begin
|
||||
spltTopBottom.Visible := False;
|
||||
SynMemoSQLLog.Visible := False;
|
||||
end;
|
||||
AppSettings.ResetPath;
|
||||
AppSettings.WriteBool(asDisplayObjectSizeColumn, Item.Checked);
|
||||
AppSettings.WriteBool(asDisplayLogPanel, actDisplayLogPanel.Checked);
|
||||
end;
|
||||
|
||||
procedure TMainForm.actDisplayObjectSizeExecute(Sender: TObject);
|
||||
var
|
||||
ColOptions: TVTColumnOptions;
|
||||
begin
|
||||
ColOptions := DBtree.Header.Columns[1].Options;
|
||||
if actDisplayObjectSize.Checked then
|
||||
ColOptions := ColOptions + [coVisible]
|
||||
else
|
||||
ColOptions := ColOptions - [coVisible];
|
||||
DBtree.Header.Columns[1].Options := ColOptions;
|
||||
AppSettings.ResetPath;
|
||||
AppSettings.WriteBool(asDisplayObjectSizeColumn, actDisplayObjectSize.Checked);
|
||||
end;
|
||||
|
||||
procedure TMainForm.actDisplayTreeFiltersExecute(Sender: TObject);
|
||||
begin
|
||||
ToolBarTree.Visible := actDisplayTreeFilters.Checked;
|
||||
AppSettings.ResetPath;
|
||||
AppSettings.WriteBool(asDisplayTreeFilters, actDisplayTreeFilters.Checked);
|
||||
end;
|
||||
|
||||
procedure TMainForm.menuAlwaysGenerateFilterClick(Sender: TObject);
|
||||
begin
|
||||
@@ -12540,10 +12578,7 @@ begin
|
||||
// Click on "tree favorites" main button
|
||||
// Note: a TSpeedButton connected to an auto-checked TAction needs AllowAllUp + GroupIndex>0
|
||||
editDatabaseTableFilterChange(Sender);
|
||||
if actFavoriteObjectsOnly.Checked then
|
||||
actFavoriteObjectsOnly.ImageIndex := 112
|
||||
else
|
||||
actFavoriteObjectsOnly.ImageIndex := 113;
|
||||
actFavoriteObjectsOnly.ImageIndex := IfThen(actFavoriteObjectsOnly.Checked, 112, 113);
|
||||
end;
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user