mirror of
https://github.com/HeidiSQL/HeidiSQL.git
synced 2025-08-06 18:24:26 +08:00
Issue #1482: set anchor siblings on remaining forms
This commit is contained in:
@ -12,28 +12,35 @@ object AboutBox: TAboutBox
|
||||
FormStyle = fsStayOnTop
|
||||
OnShow = FormShow
|
||||
Position = poOwnerFormCenter
|
||||
LCLVersion = '3.8.0.0'
|
||||
object lblAppName: TLabel
|
||||
Left = 146
|
||||
Height = 20
|
||||
Top = 10
|
||||
Width = 85
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'lblAppName'
|
||||
PopupMenu = popupLabels
|
||||
end
|
||||
object lblAppVersion: TLabel
|
||||
AnchorSideTop.Control = lblAppName
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 146
|
||||
Height = 20
|
||||
Top = 54
|
||||
Top = 42
|
||||
Width = 93
|
||||
BorderSpacing.Top = 6
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'lblAppVersion'
|
||||
PopupMenu = popupLabels
|
||||
end
|
||||
object lblAppCompiled: TLabel
|
||||
AnchorSideTop.Control = lblAppVersion
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 146
|
||||
Height = 20
|
||||
Top = 79
|
||||
Top = 68
|
||||
Width = 110
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'lblAppCompiled'
|
||||
PopupMenu = popupLabels
|
||||
end
|
||||
@ -44,6 +51,7 @@ object AboutBox: TAboutBox
|
||||
Top = 10
|
||||
Width = 90
|
||||
AutoSize = True
|
||||
BorderSpacing.Around = 6
|
||||
OnClick = OpenURL
|
||||
Picture.Data = {
|
||||
1754506F727461626C654E6574776F726B477261706869637B19000089504E47
|
||||
@ -255,102 +263,134 @@ object AboutBox: TAboutBox
|
||||
Transparent = True
|
||||
end
|
||||
object lblDonated: TLabel
|
||||
AnchorSideTop.Control = lnklblCredits
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 146
|
||||
Height = 20
|
||||
Top = 214
|
||||
Top = 178
|
||||
Width = 291
|
||||
BorderSpacing.Top = 6
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'I have donated per following email address:'
|
||||
end
|
||||
object lblEnvironment: TLabel
|
||||
AnchorSideTop.Control = lblAppCompiled
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 146
|
||||
Height = 20
|
||||
Top = 104
|
||||
Top = 94
|
||||
Width = 100
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'lblEnvironment'
|
||||
PopupMenu = popupLabels
|
||||
end
|
||||
object lnklblWebpage: TLabel
|
||||
AnchorSideTop.Control = lblEnvironment
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Cursor = crHandPoint
|
||||
Left = 146
|
||||
Height = 20
|
||||
Top = 129
|
||||
Top = 120
|
||||
Width = 100
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'lnklblWebpage'
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
OnClick = lnklblWebpageClick
|
||||
end
|
||||
object lnklblCredits: TLabel
|
||||
AnchorSideTop.Control = lnklblWebpage
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Cursor = crHandPoint
|
||||
Left = 146
|
||||
Height = 20
|
||||
Top = 154
|
||||
Top = 146
|
||||
Width = 46
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Credits'
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
OnClick = lnklblCreditsClick
|
||||
end
|
||||
object btnClose: TButton
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 437
|
||||
Height = 31
|
||||
Top = 345
|
||||
Width = 128
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Close'
|
||||
ModalResult = 1
|
||||
TabOrder = 0
|
||||
end
|
||||
object btnUpdateCheck: TButton
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 146
|
||||
Height = 31
|
||||
Top = 345
|
||||
Width = 286
|
||||
Action = MainForm.actUpdateCheck
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 1
|
||||
end
|
||||
object editDonated: TEdit
|
||||
AnchorSideTop.Control = lblDonated
|
||||
AnchorSideTop.Side = asrBottom
|
||||
AnchorSideRight.Control = btnDonatedOK
|
||||
Left = 146
|
||||
Height = 28
|
||||
Top = 238
|
||||
Width = 286
|
||||
Top = 204
|
||||
Width = 285
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 2
|
||||
TextHint = 'Email address'
|
||||
OnEnter = editDonatedEnter
|
||||
OnExit = editDonatedExit
|
||||
end
|
||||
object btnDonatedOK: TButton
|
||||
AnchorSideTop.Control = lblDonated
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 437
|
||||
Height = 31
|
||||
Top = 238
|
||||
Top = 204
|
||||
Width = 128
|
||||
Anchors = [akTop, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'OK'
|
||||
TabOrder = 3
|
||||
OnClick = btnDonatedOKClick
|
||||
end
|
||||
object btnDonate: TButton
|
||||
AnchorSideTop.Control = editDonated
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 146
|
||||
Height = 30
|
||||
Hint = 'Send an arbitrary amount as donation to the author - per PayPal (also supports credit cards)'
|
||||
Top = 272
|
||||
Top = 238
|
||||
Width = 419
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoSize = True
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Donate'
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
TabOrder = 4
|
||||
end
|
||||
object lnklblCompiler: TLabel
|
||||
AnchorSideLeft.Control = lblAppCompiled
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = lblAppVersion
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Cursor = crHandPoint
|
||||
Left = 308
|
||||
Left = 262
|
||||
Height = 20
|
||||
Top = 79
|
||||
Top = 68
|
||||
Width = 97
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'lnklblCompiler'
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
|
@ -120,9 +120,7 @@ begin
|
||||
Caption := f_('About %s', [APPNAME]);
|
||||
lblAppName.Caption := APPNAME;
|
||||
lblAppVersion.Caption := _('Version') + ' ' + Mainform.AppVersion;
|
||||
lblAppCompiled.Caption := _('Compiled on:') + ' ' + {DateTimeToStr(GetImageLinkTimeStamp(Application.ExeName)) +} ' with';
|
||||
lnklblCompiler.Top := lblAppCompiled.Top;
|
||||
lnklblCompiler.Left := lblAppCompiled.Left + lblAppCompiled.Width + Canvas.TextWidth(' ');
|
||||
lblAppCompiled.Caption := _('Compiled on:') + ' ?' + {DateTimeToStr(GetImageLinkTimeStamp(Application.ExeName)) +} ' with';
|
||||
lnklblCompiler.Caption := GetCompilerVersion;
|
||||
lnklblCompiler.Hint := 'https://www.lazarus-ide.org/?utm_source='+APPNAME;
|
||||
lnklblWebpage.Caption := APPDOMAIN;
|
||||
@ -133,11 +131,7 @@ begin
|
||||
lnklblCredits.Font.Style := lnklblCredits.Font.Style + [fsUnderline];
|
||||
|
||||
ImageHeidisql.Hint := APPDOMAIN+'?place='+EncodeURLParam(ImageHeidisql.Name);
|
||||
lblEnvironment.Caption := _('Environment:') + ' ' +
|
||||
{$IFDEF WINDOWS}'Windows'{$EndIf}
|
||||
{$IFDEF LINUX}'Linux'{$EndIf}
|
||||
{$IFDEF MACOS}'MacOS'{$EndIf}
|
||||
;
|
||||
lblEnvironment.Caption := _('Environment:') + ' ' + GetOS;
|
||||
|
||||
Screen.Cursor := crDefault;
|
||||
btnClose.TrySetFocus;
|
||||
|
@ -1,11 +1,11 @@
|
||||
object frmPasswordChange: TfrmPasswordChange
|
||||
Left = 0
|
||||
Height = 234
|
||||
Height = 231
|
||||
Top = 0
|
||||
Width = 570
|
||||
BorderStyle = bsDialog
|
||||
Caption = 'Change expired password'
|
||||
ClientHeight = 234
|
||||
ClientHeight = 231
|
||||
ClientWidth = 570
|
||||
Color = clBtnFace
|
||||
Constraints.MaxHeight = 375
|
||||
@ -16,47 +16,57 @@ object frmPasswordChange: TfrmPasswordChange
|
||||
OnCreate = FormCreate
|
||||
OnShow = FormShow
|
||||
Position = poMainFormCenter
|
||||
LCLVersion = '3.8.0.0'
|
||||
object lblHeading: TLabel
|
||||
Left = 10
|
||||
Height = 17
|
||||
Top = 20
|
||||
Width = 436
|
||||
Left = 6
|
||||
Height = 60
|
||||
Top = 6
|
||||
Width = 558
|
||||
Align = alTop
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
AutoSize = False
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'lblHeading'
|
||||
WordWrap = True
|
||||
end
|
||||
object lblPassword: TLabel
|
||||
Left = 10
|
||||
Height = 13
|
||||
Top = 52
|
||||
Width = 74
|
||||
Anchors = [akLeft, akBottom]
|
||||
AnchorSideTop.Control = lblHeading
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 20
|
||||
Top = 72
|
||||
Width = 100
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'New password:'
|
||||
end
|
||||
object lblRepeatPassword: TLabel
|
||||
Left = 10
|
||||
Height = 13
|
||||
Top = 85
|
||||
Width = 111
|
||||
Anchors = [akLeft, akBottom]
|
||||
AnchorSideTop.Control = editPassword
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 20
|
||||
Top = 106
|
||||
Width = 148
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Repeat new password:'
|
||||
end
|
||||
object lblStatus: TLabel
|
||||
Left = 10
|
||||
Height = 13
|
||||
Top = 122
|
||||
Width = 41
|
||||
Anchors = [akLeft, akBottom]
|
||||
AnchorSideTop.Control = editRepeatPassword
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 6
|
||||
Height = 20
|
||||
Top = 140
|
||||
Width = 57
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'lblStatus'
|
||||
end
|
||||
object editPassword: TEdit
|
||||
Left = 182
|
||||
Height = 21
|
||||
Top = 50
|
||||
Width = 264
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
AnchorSideTop.Control = lblHeading
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 226
|
||||
Height = 28
|
||||
Top = 72
|
||||
Width = 333
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 0
|
||||
TextHint = 'Type new password or select a suggestion'
|
||||
OnChange = editPasswordChange
|
||||
@ -64,11 +74,14 @@ object frmPasswordChange: TfrmPasswordChange
|
||||
OnKeyDown = editPasswordKeyDown
|
||||
end
|
||||
object editRepeatPassword: TEdit
|
||||
Left = 182
|
||||
Height = 21
|
||||
Top = 84
|
||||
Width = 264
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
AnchorSideTop.Control = editPassword
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 226
|
||||
Height = 28
|
||||
Top = 106
|
||||
Width = 333
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
EchoMode = emPassword
|
||||
PasswordChar = '*'
|
||||
TabOrder = 1
|
||||
@ -78,10 +91,10 @@ object frmPasswordChange: TfrmPasswordChange
|
||||
OnKeyDown = editPasswordKeyDown
|
||||
end
|
||||
object btnCancel: TButton
|
||||
Left = 251
|
||||
Left = 313
|
||||
Height = 31
|
||||
Top = 146
|
||||
Width = 94
|
||||
Top = 189
|
||||
Width = 120
|
||||
Anchors = [akRight, akBottom]
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
@ -89,10 +102,10 @@ object frmPasswordChange: TfrmPasswordChange
|
||||
TabOrder = 2
|
||||
end
|
||||
object btnOK: TButton
|
||||
Left = 152
|
||||
Left = 187
|
||||
Height = 31
|
||||
Top = 146
|
||||
Width = 94
|
||||
Top = 189
|
||||
Width = 120
|
||||
Anchors = [akRight, akBottom]
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
@ -100,25 +113,29 @@ object frmPasswordChange: TfrmPasswordChange
|
||||
TabOrder = 3
|
||||
end
|
||||
object btnCopyToClipboard: TButton
|
||||
Left = 352
|
||||
Left = 443
|
||||
Height = 31
|
||||
Top = 146
|
||||
Width = 94
|
||||
Top = 189
|
||||
Width = 120
|
||||
Anchors = [akRight, akBottom]
|
||||
Caption = 'Copy'
|
||||
TabOrder = 4
|
||||
OnClick = btnCopyToClipboardClick
|
||||
end
|
||||
object progressbarPasswordStrength: TProgressBar
|
||||
Left = 182
|
||||
AnchorSideTop.Control = editRepeatPassword
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 226
|
||||
Height = 21
|
||||
Top = 164
|
||||
Width = 378
|
||||
Top = 140
|
||||
Width = 333
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 5
|
||||
end
|
||||
object popupPassword: TPopupMenu
|
||||
Left = 430
|
||||
Top = 10
|
||||
Left = 8
|
||||
Top = 168
|
||||
object N6characters1: TMenuItem
|
||||
Caption = '6 characters'
|
||||
OnClick = menuPasswordClick
|
||||
|
@ -15,13 +15,13 @@ object frmColumnSelection: TfrmColumnSelection
|
||||
OnCreate = FormCreate
|
||||
OnDeactivate = FormDeactivate
|
||||
OnShow = FormShow
|
||||
LCLVersion = '3.8.0.0'
|
||||
object btnCancel: TButton
|
||||
Left = 146
|
||||
Height = 31
|
||||
Top = 264
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
@ -34,47 +34,58 @@ object frmColumnSelection: TfrmColumnSelection
|
||||
Top = 264
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
TabOrder = 1
|
||||
OnClick = btnOKClick
|
||||
end
|
||||
object chkSort: TCheckBox
|
||||
AnchorSideTop.Control = chklistColumns
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 22
|
||||
Top = 200
|
||||
Height = 24
|
||||
Top = 198
|
||||
Width = 230
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Sort alphabetically'
|
||||
TabOrder = 2
|
||||
OnClick = PopulateList
|
||||
end
|
||||
object chkSelectAll: TCheckBox
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 10
|
||||
Height = 22
|
||||
Height = 24
|
||||
Hint = 'Select / Deselect all'
|
||||
Top = 8
|
||||
Width = 34
|
||||
Top = 6
|
||||
Width = 39
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'All'
|
||||
TabOrder = 3
|
||||
OnClick = chkSelectAllClick
|
||||
end
|
||||
object chklistColumns: TCheckListBox
|
||||
AnchorSideTop.Control = editFilter
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 153
|
||||
Top = 39
|
||||
Height = 152
|
||||
Top = 40
|
||||
Width = 230
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
ItemHeight = 21
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 0
|
||||
TabOrder = 4
|
||||
OnClickCheck = chklistColumnsClickCheck
|
||||
end
|
||||
object editFilter: TEditButton
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 79
|
||||
Height = 26
|
||||
Top = 5
|
||||
Height = 28
|
||||
Top = 6
|
||||
Width = 161
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonWidth = 29
|
||||
Images = MainForm.ImageListIcons8
|
||||
ImageIndex = 146
|
||||
@ -87,11 +98,14 @@ object frmColumnSelection: TfrmColumnSelection
|
||||
TextHint = 'Filter'
|
||||
end
|
||||
object chkShowRowId: TCheckBox
|
||||
AnchorSideTop.Control = chkSort
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 22
|
||||
Top = 229
|
||||
Height = 24
|
||||
Top = 227
|
||||
Width = 230
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Show static row id column'
|
||||
TabOrder = 6
|
||||
end
|
||||
|
@ -14,32 +14,43 @@ object CopyTableForm: TCopyTableForm
|
||||
OnShow = FormShow
|
||||
Position = poMainFormCenter
|
||||
object lblNewTablename: TLabel
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 10
|
||||
Height = 18
|
||||
Top = 10
|
||||
Width = 183
|
||||
Height = 20
|
||||
Top = 6
|
||||
Width = 179
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Copy "%s" to new db.table:'
|
||||
end
|
||||
object lblItems: TLabel
|
||||
AnchorSideTop.Control = editNewTablename
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 18
|
||||
Top = 64
|
||||
Width = 210
|
||||
Height = 20
|
||||
Top = 66
|
||||
Width = 211
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Elements to create in new table:'
|
||||
end
|
||||
object lblWhere: TLabel
|
||||
AnchorSideTop.Side = asrBottom
|
||||
AnchorSideBottom.Control = MemoFilter
|
||||
Left = 10
|
||||
Height = 18
|
||||
Top = 207
|
||||
Width = 210
|
||||
Height = 20
|
||||
Top = 216
|
||||
Width = 212
|
||||
Anchors = [akLeft, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'WHERE clause for data copying:'
|
||||
end
|
||||
object editNewTablename: TEdit
|
||||
AnchorSideTop.Control = lblNewTablename
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 199
|
||||
Height = 26
|
||||
Top = 30
|
||||
Height = 28
|
||||
Top = 32
|
||||
Width = 246
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 1
|
||||
OnChange = editNewTablenameChange
|
||||
end
|
||||
@ -55,11 +66,14 @@ object CopyTableForm: TCopyTableForm
|
||||
TabOrder = 5
|
||||
end
|
||||
object comboDatabase: TComboBox
|
||||
AnchorSideTop.Control = lblNewTablename
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 26
|
||||
Top = 30
|
||||
Height = 28
|
||||
Top = 32
|
||||
Width = 181
|
||||
ItemHeight = 18
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Style = csDropDownList
|
||||
TabOrder = 0
|
||||
end
|
||||
@ -76,11 +90,14 @@ object CopyTableForm: TCopyTableForm
|
||||
OnClick = btnOKClick
|
||||
end
|
||||
object TreeElements: TLazVirtualStringTree
|
||||
AnchorSideTop.Control = lblItems
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 110
|
||||
Top = 88
|
||||
Height = 106
|
||||
Top = 92
|
||||
Width = 435
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Header.AutoSizeIndex = 0
|
||||
Header.Columns = <>
|
||||
Header.MainColumn = -1
|
||||
@ -96,10 +113,12 @@ object CopyTableForm: TCopyTableForm
|
||||
OnInitNode = TreeElementsInitNode
|
||||
end
|
||||
inline MemoFilter: TSynEdit
|
||||
AnchorSideBottom.Control = btnOK
|
||||
Left = 10
|
||||
Height = 91
|
||||
Top = 240
|
||||
Top = 242
|
||||
Width = 435
|
||||
BorderSpacing.Around = 6
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
Font.Color = clGrayText
|
||||
Font.Height = -16
|
||||
@ -177,11 +196,14 @@ object CopyTableForm: TCopyTableForm
|
||||
end
|
||||
end
|
||||
object btnRecentFilters: TSpeedButton
|
||||
AnchorSideTop.Side = asrBottom
|
||||
AnchorSideBottom.Control = MemoFilter
|
||||
Left = 310
|
||||
Height = 28
|
||||
Top = 204
|
||||
Top = 208
|
||||
Width = 135
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Recent filters'
|
||||
Images = MainForm.ImageListIcons8
|
||||
ImageIndex = 108
|
||||
|
@ -14,87 +14,112 @@ object CreateDatabaseForm: TCreateDatabaseForm
|
||||
OnShow = FormShow
|
||||
Position = poOwnerFormCenter
|
||||
object lblDBName: TLabel
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 10
|
||||
Height = 18
|
||||
Top = 24
|
||||
Width = 44
|
||||
Height = 20
|
||||
Top = 6
|
||||
Width = 43
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Name:'
|
||||
FocusControl = editDBName
|
||||
end
|
||||
object lblCollation: TLabel
|
||||
AnchorSideTop.Control = editDBName
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 18
|
||||
Top = 56
|
||||
Width = 57
|
||||
Height = 20
|
||||
Top = 40
|
||||
Width = 63
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'C&ollation:'
|
||||
FocusControl = comboCollation
|
||||
end
|
||||
object lblCreateCode: TLabel
|
||||
AnchorSideTop.Control = btnOK
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 18
|
||||
Top = 166
|
||||
Height = 20
|
||||
Top = 137
|
||||
Width = 81
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'CREATE code'
|
||||
end
|
||||
object lblServerDefaultCollation: TLabel
|
||||
AnchorSideTop.Control = comboCollation
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 120
|
||||
Height = 18
|
||||
Top = 86
|
||||
Height = 20
|
||||
Top = 74
|
||||
Width = 103
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Servers default:'
|
||||
end
|
||||
object editDBName: TEdit
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 120
|
||||
Height = 26
|
||||
Top = 20
|
||||
Height = 28
|
||||
Top = 6
|
||||
Width = 266
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 0
|
||||
TextHint = 'Enter database name'
|
||||
OnChange = Modified
|
||||
end
|
||||
object btnOK: TButton
|
||||
AnchorSideTop.Control = lblServerDefaultCollation
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 191
|
||||
Height = 31
|
||||
Top = 116
|
||||
Top = 100
|
||||
Width = 94
|
||||
Anchors = [akTop, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
TabOrder = 2
|
||||
OnClick = btnOKClick
|
||||
end
|
||||
object btnCancel: TButton
|
||||
AnchorSideTop.Control = lblServerDefaultCollation
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 292
|
||||
Height = 31
|
||||
Top = 116
|
||||
Top = 100
|
||||
Width = 94
|
||||
Anchors = [akTop, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
TabOrder = 3
|
||||
end
|
||||
object comboCollation: TComboBox
|
||||
AnchorSideTop.Control = editDBName
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 120
|
||||
Height = 26
|
||||
Top = 52
|
||||
Height = 28
|
||||
Top = 40
|
||||
Width = 266
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
DropDownCount = 16
|
||||
ItemHeight = 18
|
||||
ItemHeight = 20
|
||||
Sorted = True
|
||||
Style = csDropDownList
|
||||
TabOrder = 1
|
||||
OnChange = Modified
|
||||
end
|
||||
inline SynMemoCreateCode: TSynEdit
|
||||
AnchorSideTop.Control = lblCreateCode
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 84
|
||||
Top = 190
|
||||
Height = 111
|
||||
Top = 163
|
||||
Width = 376
|
||||
BorderSpacing.Around = 6
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
Font.Color = clWindowText
|
||||
Font.Height = -16
|
||||
|
@ -12,18 +12,23 @@ object frmCsvDetector: TfrmCsvDetector
|
||||
OnShow = FormShow
|
||||
Position = poOwnerFormCenter
|
||||
object btnScan: TSpeedButton
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 10
|
||||
Height = 31
|
||||
Top = 10
|
||||
Top = 6
|
||||
Width = 141
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Scan file...'
|
||||
OnClick = btnScanClick
|
||||
end
|
||||
inline SynMemoCreateTable: TSynEdit
|
||||
AnchorSideTop.Control = btnScan
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 301
|
||||
Top = 49
|
||||
Height = 307
|
||||
Top = 43
|
||||
Width = 657
|
||||
BorderSpacing.Around = 6
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
Font.Color = clWindowText
|
||||
Font.Height = -16
|
||||
@ -32,7 +37,7 @@ object frmCsvDetector: TfrmCsvDetector
|
||||
Font.Quality = fqNonAntialiased
|
||||
ParentColor = False
|
||||
ParentFont = False
|
||||
TabOrder = 1
|
||||
TabOrder = 0
|
||||
Gutter.Width = 72
|
||||
Gutter.MouseActions = <>
|
||||
RightGutter.Width = 0
|
||||
@ -103,6 +108,7 @@ object frmCsvDetector: TfrmCsvDetector
|
||||
Top = 358
|
||||
Width = 152
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
@ -114,10 +120,10 @@ object frmCsvDetector: TfrmCsvDetector
|
||||
Top = 358
|
||||
Width = 152
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Ok, create table'
|
||||
Default = True
|
||||
ModalResult = 1
|
||||
TabOrder = 3
|
||||
TabOrder = 1
|
||||
OnClick = btnSaveClick
|
||||
end
|
||||
object TimerStartScan: TTimer
|
||||
|
@ -160,7 +160,7 @@ begin
|
||||
ProgressCharsPerStep := ContentLen div FLoadDataFrm.ProgressBarSteps;
|
||||
ProgressChars := 0;
|
||||
MainForm.EnableProgress(FLoadDataFrm.ProgressBarSteps);
|
||||
IgnoreLines := FLoadDataFrm.updownIgnoreLines.Position;
|
||||
IgnoreLines := StrToIntDef(FLoadDataFrm.editIgnoreLines.Text, 0);
|
||||
NextChar;
|
||||
|
||||
while P <= ContentLen do begin
|
||||
|
@ -17,31 +17,42 @@ object frmCustomizeHighlighter: TfrmCustomizeHighlighter
|
||||
OnShow = FormShow
|
||||
Position = poOwnerFormCenter
|
||||
object lblBackground: TLabel
|
||||
AnchorSideTop.Control = comboHighlighter
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 199
|
||||
Height = 20
|
||||
Top = 46
|
||||
Top = 40
|
||||
Width = 82
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Background:'
|
||||
end
|
||||
object lblForeground: TLabel
|
||||
AnchorSideTop.Control = editBackground
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 199
|
||||
Height = 20
|
||||
Top = 81
|
||||
Top = 74
|
||||
Width = 80
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Foreground:'
|
||||
end
|
||||
object lblStyle: TLabel
|
||||
AnchorSideTop.Control = editForeground
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 199
|
||||
Height = 20
|
||||
Top = 112
|
||||
Top = 108
|
||||
Width = 35
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Style:'
|
||||
end
|
||||
object comboHighlighter: TComboBox
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 10
|
||||
Height = 28
|
||||
Top = 10
|
||||
Top = 6
|
||||
Width = 181
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Sorted = True
|
||||
Style = csDropDownList
|
||||
@ -49,30 +60,39 @@ object frmCustomizeHighlighter: TfrmCustomizeHighlighter
|
||||
OnSelect = comboHighlighterSelect
|
||||
end
|
||||
object listboxAttributes: TListBox
|
||||
AnchorSideTop.Control = comboHighlighter
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 216
|
||||
Top = 46
|
||||
Top = 40
|
||||
Width = 181
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 0
|
||||
TabOrder = 1
|
||||
OnClick = listboxAttributesClick
|
||||
end
|
||||
object chkBold: TCheckBox
|
||||
AnchorSideTop.Control = editForeground
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 346
|
||||
Height = 24
|
||||
Top = 112
|
||||
Top = 108
|
||||
Width = 195
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Bold'
|
||||
TabOrder = 4
|
||||
OnClick = Modified
|
||||
end
|
||||
object chkItalic: TCheckBox
|
||||
AnchorSideTop.Control = chkBold
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 346
|
||||
Height = 24
|
||||
Top = 141
|
||||
Top = 138
|
||||
Width = 195
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Italic'
|
||||
TabOrder = 5
|
||||
OnClick = Modified
|
||||
@ -83,6 +103,7 @@ object frmCustomizeHighlighter: TfrmCustomizeHighlighter
|
||||
Top = 270
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
@ -94,6 +115,7 @@ object frmCustomizeHighlighter: TfrmCustomizeHighlighter
|
||||
Top = 270
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
ModalResult = 1
|
||||
@ -101,11 +123,14 @@ object frmCustomizeHighlighter: TfrmCustomizeHighlighter
|
||||
OnClick = SaveSettings
|
||||
end
|
||||
object editBackground: TEditButton
|
||||
AnchorSideTop.Control = comboHighlighter
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 346
|
||||
Height = 28
|
||||
Top = 42
|
||||
Top = 40
|
||||
Width = 195
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonHint = 'Color picker'
|
||||
ButtonWidth = 29
|
||||
Images = MainForm.ImageListIcons8
|
||||
@ -118,11 +143,14 @@ object frmCustomizeHighlighter: TfrmCustomizeHighlighter
|
||||
TabOrder = 2
|
||||
end
|
||||
object editForeground: TEditButton
|
||||
AnchorSideTop.Control = editBackground
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 346
|
||||
Height = 28
|
||||
Top = 78
|
||||
Top = 74
|
||||
Width = 195
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonHint = 'Color picker'
|
||||
ButtonWidth = 29
|
||||
Images = MainForm.ImageListIcons8
|
||||
@ -140,6 +168,7 @@ object frmCustomizeHighlighter: TfrmCustomizeHighlighter
|
||||
Top = 270
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Apply'
|
||||
TabOrder = 8
|
||||
OnClick = SaveSettings
|
||||
|
@ -20,6 +20,7 @@ object frmEditVariable: TfrmEditVariable
|
||||
Top = 237
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
ModalResult = 1
|
||||
@ -32,133 +33,151 @@ object frmEditVariable: TfrmEditVariable
|
||||
Top = 237
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
TabOrder = 1
|
||||
end
|
||||
object grpScope: TGroupBox
|
||||
AnchorSideTop.Control = gbValue
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 51
|
||||
Top = 178
|
||||
Width = 344
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Scope'
|
||||
ClientHeight = 28
|
||||
ClientHeight = 26
|
||||
ClientWidth = 340
|
||||
ParentBackground = False
|
||||
TabOrder = 2
|
||||
object radioScopeSession: TRadioButton
|
||||
Left = 8
|
||||
Height = 22
|
||||
Height = 24
|
||||
Top = 0
|
||||
Width = 100
|
||||
Width = 98
|
||||
Caption = 'This session'
|
||||
TabOrder = 0
|
||||
end
|
||||
object radioScopeGlobal: TRadioButton
|
||||
Left = 140
|
||||
Height = 22
|
||||
Height = 24
|
||||
Top = 0
|
||||
Width = 59
|
||||
Width = 65
|
||||
Caption = 'Global'
|
||||
TabOrder = 1
|
||||
end
|
||||
end
|
||||
object gbValue: TGroupBox
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 10
|
||||
Height = 160
|
||||
Top = 10
|
||||
Height = 164
|
||||
Top = 6
|
||||
Width = 344
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'name of variable'
|
||||
ClientHeight = 137
|
||||
ClientHeight = 139
|
||||
ClientWidth = 340
|
||||
ParentBackground = False
|
||||
TabOrder = 3
|
||||
object lblString: TLabel
|
||||
Left = 10
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 8
|
||||
Width = 41
|
||||
Width = 42
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'String:'
|
||||
end
|
||||
object lblNumber: TLabel
|
||||
AnchorSideTop.Control = editString
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 18
|
||||
Top = 42
|
||||
Height = 20
|
||||
Top = 39
|
||||
Width = 57
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Number:'
|
||||
end
|
||||
object lblEnum: TLabel
|
||||
AnchorSideTop.Control = editNumber
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 18
|
||||
Top = 76
|
||||
Width = 86
|
||||
Height = 20
|
||||
Top = 73
|
||||
Width = 87
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Enumeration:'
|
||||
end
|
||||
object lblBoolean: TLabel
|
||||
AnchorSideTop.Control = comboEnum
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 107
|
||||
Width = 56
|
||||
Width = 58
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Boolean:'
|
||||
end
|
||||
object radioBooleanOn: TRadioButton
|
||||
AnchorSideTop.Control = comboEnum
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 110
|
||||
Height = 22
|
||||
Top = 106
|
||||
Height = 24
|
||||
Top = 107
|
||||
Width = 40
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'On'
|
||||
TabOrder = 0
|
||||
end
|
||||
object radioBooleanOff: TRadioButton
|
||||
AnchorSideTop.Control = comboEnum
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 220
|
||||
Height = 22
|
||||
Top = 106
|
||||
Height = 24
|
||||
Top = 107
|
||||
Width = 110
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Off'
|
||||
TabOrder = 1
|
||||
end
|
||||
object comboEnum: TComboBox
|
||||
AnchorSideTop.Control = editNumber
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 110
|
||||
Height = 26
|
||||
Top = 72
|
||||
Height = 28
|
||||
Top = 73
|
||||
Width = 221
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
ItemHeight = 18
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Style = csDropDownList
|
||||
TabOrder = 2
|
||||
end
|
||||
object editNumber: TEdit
|
||||
AnchorSideTop.Control = editString
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 110
|
||||
Height = 26
|
||||
Top = 38
|
||||
Width = 200
|
||||
Height = 28
|
||||
Top = 39
|
||||
Width = 221
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
NumbersOnly = True
|
||||
TabOrder = 3
|
||||
Text = '0'
|
||||
end
|
||||
object UpDownNumber: TUpDown
|
||||
Left = 310
|
||||
Height = 26
|
||||
Top = 38
|
||||
Width = 20
|
||||
Anchors = [akTop, akRight]
|
||||
Associate = editNumber
|
||||
Max = 32767
|
||||
Min = -32768
|
||||
Position = 0
|
||||
TabOrder = 4
|
||||
end
|
||||
object editString: TEdit
|
||||
Left = 110
|
||||
Height = 26
|
||||
Height = 28
|
||||
Top = 5
|
||||
Width = 221
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
TabOrder = 5
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 4
|
||||
end
|
||||
end
|
||||
object btnHelp: TButton
|
||||
@ -167,6 +186,7 @@ object frmEditVariable: TfrmEditVariable
|
||||
Top = 237
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Help'
|
||||
TabOrder = 4
|
||||
OnClick = btnHelpClick
|
||||
|
@ -23,7 +23,6 @@ type
|
||||
radioBooleanOff: TRadioButton;
|
||||
comboEnum: TComboBox;
|
||||
editNumber: TEdit;
|
||||
UpDownNumber: TUpDown;
|
||||
editString: TEdit;
|
||||
lblString: TLabel;
|
||||
lblNumber: TLabel;
|
||||
@ -110,7 +109,6 @@ begin
|
||||
editString.Enabled := FVarType = vtString;
|
||||
lblNumber.Enabled := FVarType = vtNumeric;
|
||||
editNumber.Enabled := FVarType = vtNumeric;
|
||||
UpDownNumber.Enabled := FVarType = vtNumeric;
|
||||
lblEnum.Enabled := FVarType = vtEnum;
|
||||
comboEnum.Enabled := FVarType = vtEnum;
|
||||
lblBoolean.Enabled := FVarType = vtBoolean;
|
||||
@ -124,7 +122,7 @@ begin
|
||||
editString.SetFocus;
|
||||
end;
|
||||
vtNumeric: begin
|
||||
UpDownNumber.Position := MakeInt(FVarValue);
|
||||
editNumber.Text := FVarValue;
|
||||
editNumber.SelectAll;
|
||||
editNumber.SetFocus;
|
||||
end;
|
||||
@ -173,7 +171,7 @@ begin
|
||||
Conn := MainForm.ActiveConnection;
|
||||
|
||||
case FVarType of
|
||||
vtNumeric: val := IntToStr(UpDownNumber.Position);
|
||||
vtNumeric: val := editNumber.Text;
|
||||
vtString: begin
|
||||
// Various variables are int64 or float, for which we have no specific
|
||||
// editor other than the string editor. Do not quote these to avoid
|
||||
|
@ -15,13 +15,13 @@ object frmExportGrid: TfrmExportGrid
|
||||
OnCreate = FormCreate
|
||||
OnShow = FormShow
|
||||
Position = poMainFormCenter
|
||||
LCLVersion = '3.8.0.0'
|
||||
object btnOK: TButton
|
||||
Left = 425
|
||||
Height = 31
|
||||
Top = 474
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
ModalResult = 1
|
||||
@ -34,18 +34,22 @@ object frmExportGrid: TfrmExportGrid
|
||||
Top = 474
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
TabOrder = 4
|
||||
end
|
||||
object grpSelection: TRadioGroup
|
||||
AnchorSideTop.Control = grpFormat
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 82
|
||||
Top = 210
|
||||
Top = 202
|
||||
Width = 610
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoFill = True
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Row selection'
|
||||
ChildSizing.LeftRightSpacing = 6
|
||||
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
|
||||
@ -54,7 +58,7 @@ object frmExportGrid: TfrmExportGrid
|
||||
ChildSizing.ShrinkVertical = crsScaleChilds
|
||||
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
||||
ChildSizing.ControlsPerLine = 1
|
||||
ClientHeight = 59
|
||||
ClientHeight = 57
|
||||
ClientWidth = 606
|
||||
ItemIndex = 1
|
||||
Items.Strings = (
|
||||
@ -65,29 +69,35 @@ object frmExportGrid: TfrmExportGrid
|
||||
TabOrder = 2
|
||||
end
|
||||
object grpOutput: TGroupBox
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 10
|
||||
Height = 122
|
||||
Top = 10
|
||||
Top = 6
|
||||
Width = 610
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Output target'
|
||||
ClientHeight = 99
|
||||
ClientHeight = 97
|
||||
ClientWidth = 606
|
||||
ParentBackground = False
|
||||
TabOrder = 0
|
||||
object lblEncoding: TLabel
|
||||
AnchorSideTop.Control = editFilename
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 18
|
||||
Top = 70
|
||||
Width = 62
|
||||
Height = 20
|
||||
Top = 66
|
||||
Width = 65
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Encoding:'
|
||||
end
|
||||
object radioOutputCopyToClipboard: TRadioButton
|
||||
Left = 10
|
||||
Height = 22
|
||||
Height = 24
|
||||
Top = 2
|
||||
Width = 584
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Copy to clipboard'
|
||||
Checked = True
|
||||
TabOrder = 0
|
||||
@ -95,20 +105,26 @@ object frmExportGrid: TfrmExportGrid
|
||||
OnClick = ValidateControls
|
||||
end
|
||||
object radioOutputFile: TRadioButton
|
||||
AnchorSideTop.Control = radioOutputCopyToClipboard
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 22
|
||||
Top = 34
|
||||
Width = 41
|
||||
Height = 24
|
||||
Top = 32
|
||||
Width = 44
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'File'
|
||||
TabOrder = 1
|
||||
OnClick = ValidateControls
|
||||
end
|
||||
object editFilename: TEditButton
|
||||
AnchorSideTop.Control = radioOutputCopyToClipboard
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 99
|
||||
Height = 26
|
||||
Height = 28
|
||||
Top = 32
|
||||
Width = 495
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonWidth = 29
|
||||
Images = MainForm.ImageListIcons8
|
||||
ImageIndex = 51
|
||||
@ -122,60 +138,77 @@ object frmExportGrid: TfrmExportGrid
|
||||
TextHint = 'Doubleclick to select file'
|
||||
end
|
||||
object comboEncoding: TComboBox
|
||||
AnchorSideTop.Control = editFilename
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 99
|
||||
Height = 26
|
||||
Height = 28
|
||||
Top = 66
|
||||
Width = 495
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
ItemHeight = 18
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Style = csDropDownList
|
||||
TabOrder = 3
|
||||
end
|
||||
end
|
||||
object grpOptions: TGroupBox
|
||||
AnchorSideTop.Control = grpSelection
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 166
|
||||
Top = 300
|
||||
Height = 176
|
||||
Top = 290
|
||||
Width = 610
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Options'
|
||||
ClientHeight = 143
|
||||
ClientHeight = 151
|
||||
ClientWidth = 606
|
||||
ParentBackground = False
|
||||
TabOrder = 3
|
||||
object lblSeparator: TLabel
|
||||
Left = 349
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 9
|
||||
Width = 100
|
||||
Width = 102
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Field separator:'
|
||||
end
|
||||
object lblEncloser: TLabel
|
||||
AnchorSideTop.Control = editSeparator
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 349
|
||||
Height = 18
|
||||
Top = 42
|
||||
Height = 20
|
||||
Top = 40
|
||||
Width = 58
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Encloser:'
|
||||
end
|
||||
object lblTerminator: TLabel
|
||||
AnchorSideTop.Control = editEncloser
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 349
|
||||
Height = 18
|
||||
Top = 76
|
||||
Width = 102
|
||||
Height = 20
|
||||
Top = 74
|
||||
Width = 104
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Line terminator:'
|
||||
end
|
||||
object lblNull: TLabel
|
||||
AnchorSideTop.Control = editTerminator
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 349
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 108
|
||||
Width = 78
|
||||
Width = 77
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'NULL value:'
|
||||
end
|
||||
object chkIncludeColumnNames: TCheckBox
|
||||
Left = 10
|
||||
Height = 22
|
||||
Height = 24
|
||||
Top = 9
|
||||
Width = 168
|
||||
Width = 169
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Include column names'
|
||||
Checked = True
|
||||
State = cbChecked
|
||||
@ -183,10 +216,11 @@ object frmExportGrid: TfrmExportGrid
|
||||
end
|
||||
object editSeparator: TEditButton
|
||||
Left = 500
|
||||
Height = 26
|
||||
Height = 28
|
||||
Top = 6
|
||||
Width = 94
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonWidth = 29
|
||||
Images = MainForm.ImageListIcons8
|
||||
ImageIndex = 108
|
||||
@ -199,11 +233,14 @@ object frmExportGrid: TfrmExportGrid
|
||||
Text = ';'
|
||||
end
|
||||
object editEncloser: TEditButton
|
||||
AnchorSideTop.Control = editSeparator
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 500
|
||||
Height = 26
|
||||
Top = 38
|
||||
Height = 28
|
||||
Top = 40
|
||||
Width = 94
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonWidth = 29
|
||||
Images = MainForm.ImageListIcons8
|
||||
ImageIndex = 108
|
||||
@ -215,11 +252,14 @@ object frmExportGrid: TfrmExportGrid
|
||||
TabOrder = 5
|
||||
end
|
||||
object editTerminator: TEditButton
|
||||
AnchorSideTop.Control = editEncloser
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 500
|
||||
Height = 26
|
||||
Top = 72
|
||||
Height = 28
|
||||
Top = 74
|
||||
Width = 94
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonWidth = 29
|
||||
Images = MainForm.ImageListIcons8
|
||||
ImageIndex = 108
|
||||
@ -232,27 +272,36 @@ object frmExportGrid: TfrmExportGrid
|
||||
Text = '\r\n'
|
||||
end
|
||||
object chkIncludeAutoIncrement: TCheckBox
|
||||
AnchorSideTop.Control = editSeparator
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 22
|
||||
Top = 38
|
||||
Width = 222
|
||||
Height = 24
|
||||
Top = 40
|
||||
Width = 226
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Include auto increment column'
|
||||
TabOrder = 1
|
||||
end
|
||||
object chkIncludeQuery: TCheckBox
|
||||
AnchorSideTop.Control = editEncloser
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 22
|
||||
Top = 67
|
||||
Width = 141
|
||||
Height = 24
|
||||
Top = 74
|
||||
Width = 140
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Include SQL query'
|
||||
TabOrder = 2
|
||||
end
|
||||
object editNull: TEditButton
|
||||
AnchorSideTop.Control = editTerminator
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 500
|
||||
Height = 26
|
||||
Top = 105
|
||||
Height = 28
|
||||
Top = 108
|
||||
Width = 94
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonWidth = 29
|
||||
Images = MainForm.ImageListIcons8
|
||||
ImageIndex = 108
|
||||
@ -264,10 +313,13 @@ object frmExportGrid: TfrmExportGrid
|
||||
TabOrder = 7
|
||||
end
|
||||
object chkRemoveLinebreaks: TCheckBox
|
||||
AnchorSideTop.Control = editTerminator
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 22
|
||||
Top = 96
|
||||
Width = 240
|
||||
Height = 24
|
||||
Top = 108
|
||||
Width = 242
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Remove linebreaks from contents'
|
||||
TabOrder = 3
|
||||
end
|
||||
@ -278,25 +330,29 @@ object frmExportGrid: TfrmExportGrid
|
||||
Top = 474
|
||||
Width = 191
|
||||
Anchors = [akLeft, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Save clipboard settings'
|
||||
Images = MainForm.ImageListIcons8
|
||||
ImageIndex = 4
|
||||
OnClick = btnSetClipboardDefaultsClick
|
||||
end
|
||||
object grpFormat: TGroupBox
|
||||
AnchorSideTop.Control = grpOutput
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 62
|
||||
Top = 140
|
||||
Top = 134
|
||||
Width = 610
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Output format'
|
||||
ClientHeight = 39
|
||||
ClientHeight = 37
|
||||
ClientWidth = 606
|
||||
ParentBackground = False
|
||||
TabOrder = 1
|
||||
object comboFormat: TComboBoxEx
|
||||
Left = 10
|
||||
Height = 28
|
||||
Height = 26
|
||||
Top = 3
|
||||
Width = 584
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
|
@ -21,6 +21,7 @@ object frmInsertFiles: TfrmInsertFiles
|
||||
Top = 573
|
||||
Width = 162
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Import files'
|
||||
Default = True
|
||||
Enabled = False
|
||||
@ -34,6 +35,7 @@ object frmInsertFiles: TfrmInsertFiles
|
||||
Top = 573
|
||||
Width = 119
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
@ -45,6 +47,7 @@ object frmInsertFiles: TfrmInsertFiles
|
||||
Top = 10
|
||||
Width = 619
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Target table and columns'
|
||||
ClientHeight = 267
|
||||
ClientWidth = 615
|
||||
@ -55,13 +58,17 @@ object frmInsertFiles: TfrmInsertFiles
|
||||
Height = 20
|
||||
Top = 8
|
||||
Width = 107
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Database, table:'
|
||||
end
|
||||
object lblFilecontents: TLabel
|
||||
AnchorSideTop.Control = comboDBs
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 20
|
||||
Top = 42
|
||||
Top = 39
|
||||
Width = 515
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Column values (Hint: Assign "%filecontent%" value to a BLOB or TEXT column)'
|
||||
end
|
||||
object comboDBs: TComboBox
|
||||
@ -69,6 +76,7 @@ object frmInsertFiles: TfrmInsertFiles
|
||||
Height = 28
|
||||
Top = 5
|
||||
Width = 189
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Style = csDropDownList
|
||||
TabOrder = 0
|
||||
@ -80,17 +88,21 @@ object frmInsertFiles: TfrmInsertFiles
|
||||
Top = 5
|
||||
Width = 195
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Style = csDropDownList
|
||||
TabOrder = 1
|
||||
OnChange = comboTablesChange
|
||||
end
|
||||
object ListColumns: TLazVirtualStringTree
|
||||
AnchorSideTop.Control = lblFilecontents
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 189
|
||||
Top = 66
|
||||
Top = 65
|
||||
Width = 592
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
EditDelay = 0
|
||||
Header.AutoSizeIndex = 2
|
||||
Header.Columns = <
|
||||
@ -135,6 +147,7 @@ object frmInsertFiles: TfrmInsertFiles
|
||||
Top = 310
|
||||
Width = 619
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Files to import'
|
||||
ClientHeight = 230
|
||||
ClientWidth = 615
|
||||
@ -147,23 +160,31 @@ object frmInsertFiles: TfrmInsertFiles
|
||||
Width = 290
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoSize = False
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Hint: You can drop files from your Windows Explorer onto the list.'
|
||||
Layout = tlCenter
|
||||
end
|
||||
object lblFileCount: TLabel
|
||||
AnchorSideTop.Control = ListFiles
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 20
|
||||
Top = 195
|
||||
Width = 39
|
||||
Anchors = [akLeft, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '0 files'
|
||||
end
|
||||
object ListFiles: TLazVirtualStringTree
|
||||
AnchorSideTop.Control = ToolBar1
|
||||
AnchorSideTop.Side = asrBottom
|
||||
AnchorSideBottom.Control = lblFileCount
|
||||
Left = 12
|
||||
Height = 135
|
||||
Height = 138
|
||||
Top = 51
|
||||
Width = 592
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Header.AutoSizeIndex = 0
|
||||
Header.Columns = <
|
||||
item
|
||||
@ -213,6 +234,7 @@ object frmInsertFiles: TfrmInsertFiles
|
||||
Top = 17
|
||||
Width = 290
|
||||
Align = alNone
|
||||
BorderSpacing.Around = 6
|
||||
ButtonHeight = 35
|
||||
ButtonWidth = 82
|
||||
Caption = 'ToolBarFiles'
|
||||
|
@ -45,32 +45,38 @@ object loaddataform: Tloaddataform
|
||||
Top = 10
|
||||
Width = 632
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Input file'
|
||||
ClientHeight = 74
|
||||
ClientHeight = 72
|
||||
ClientWidth = 628
|
||||
ParentBackground = False
|
||||
TabOrder = 0
|
||||
object lblFilename: TLabel
|
||||
Left = 12
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 4
|
||||
Width = 62
|
||||
Width = 63
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Filename:'
|
||||
FocusControl = editFilename
|
||||
end
|
||||
object lblEncoding: TLabel
|
||||
AnchorSideTop.Control = editFilename
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 18
|
||||
Top = 38
|
||||
Width = 62
|
||||
Height = 20
|
||||
Top = 34
|
||||
Width = 65
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Encoding:'
|
||||
end
|
||||
object editFilename: TEditButton
|
||||
Left = 110
|
||||
Height = 26
|
||||
Height = 28
|
||||
Top = 0
|
||||
Width = 506
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonWidth = 29
|
||||
Images = MainForm.ImageListIcons8
|
||||
ImageIndex = 51
|
||||
@ -84,13 +90,16 @@ object loaddataform: Tloaddataform
|
||||
Text = 'editFilename'
|
||||
end
|
||||
object comboEncoding: TComboBox
|
||||
AnchorSideTop.Control = editFilename
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 110
|
||||
Height = 26
|
||||
Height = 28
|
||||
Top = 34
|
||||
Width = 506
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
DropDownCount = 16
|
||||
ItemHeight = 18
|
||||
ItemHeight = 20
|
||||
Sorted = True
|
||||
Style = csDropDownList
|
||||
TabOrder = 1
|
||||
@ -102,79 +111,103 @@ object loaddataform: Tloaddataform
|
||||
Top = 122
|
||||
Width = 364
|
||||
Anchors = [akTop, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Control characters'
|
||||
ClientHeight = 146
|
||||
ClientHeight = 144
|
||||
ClientWidth = 360
|
||||
ParentBackground = False
|
||||
TabOrder = 2
|
||||
object lblFieldTerminater: TLabel
|
||||
Left = 12
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 15
|
||||
Width = 131
|
||||
Width = 135
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Fields terminated by'
|
||||
end
|
||||
object lblFieldEncloser: TLabel
|
||||
AnchorSideTop.Control = editFieldTerminator
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 18
|
||||
Top = 47
|
||||
Width = 117
|
||||
Height = 20
|
||||
Top = 46
|
||||
Width = 121
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Fields enclosed by'
|
||||
end
|
||||
object lblFieldEscaper: TLabel
|
||||
AnchorSideTop.Control = editFieldEncloser
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 18
|
||||
Top = 77
|
||||
Width = 115
|
||||
Height = 20
|
||||
Top = 80
|
||||
Width = 117
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Fields escaped by'
|
||||
end
|
||||
object lblLineTerminator: TLabel
|
||||
AnchorSideTop.Control = editFieldEscaper
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 18
|
||||
Top = 108
|
||||
Width = 128
|
||||
Height = 20
|
||||
Top = 114
|
||||
Width = 130
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Lines terminated by'
|
||||
end
|
||||
object editFieldEscaper: TEdit
|
||||
AnchorSideTop.Control = editFieldEncloser
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 181
|
||||
Height = 26
|
||||
Top = 73
|
||||
Height = 28
|
||||
Top = 80
|
||||
Width = 61
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 3
|
||||
Text = '"'
|
||||
end
|
||||
object editFieldEncloser: TEdit
|
||||
AnchorSideTop.Control = editFieldTerminator
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 181
|
||||
Height = 26
|
||||
Top = 43
|
||||
Height = 28
|
||||
Top = 46
|
||||
Width = 61
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 1
|
||||
Text = '"'
|
||||
end
|
||||
object editFieldTerminator: TEdit
|
||||
Left = 181
|
||||
Height = 26
|
||||
Height = 28
|
||||
Top = 12
|
||||
Width = 61
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 0
|
||||
Text = ';'
|
||||
end
|
||||
object chkFieldsEnclosedOptionally: TCheckBox
|
||||
AnchorSideTop.Control = editFieldTerminator
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 250
|
||||
Height = 22
|
||||
Top = 45
|
||||
Height = 24
|
||||
Top = 46
|
||||
Width = 106
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'optionally'
|
||||
Checked = True
|
||||
State = cbChecked
|
||||
TabOrder = 2
|
||||
end
|
||||
object editLineTerminator: TEdit
|
||||
AnchorSideTop.Control = editFieldEscaper
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 181
|
||||
Height = 26
|
||||
Top = 104
|
||||
Height = 28
|
||||
Top = 114
|
||||
Width = 61
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 4
|
||||
Text = '\r\n'
|
||||
end
|
||||
@ -185,81 +218,87 @@ object loaddataform: Tloaddataform
|
||||
Top = 122
|
||||
Width = 261
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Options'
|
||||
ClientHeight = 196
|
||||
ClientHeight = 194
|
||||
ClientWidth = 257
|
||||
ParentBackground = False
|
||||
TabOrder = 1
|
||||
object lblIgnoreLinesCount: TLabel
|
||||
Left = 179
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 12
|
||||
Width = 27
|
||||
Width = 30
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'lines'
|
||||
end
|
||||
object lblIgnoreLines: TLabel
|
||||
Left = 12
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 12
|
||||
Width = 72
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Ignore first'
|
||||
end
|
||||
object updownIgnoreLines: TUpDown
|
||||
Left = 151
|
||||
Height = 26
|
||||
Top = 9
|
||||
Width = 20
|
||||
Associate = editIgnoreLines
|
||||
Max = 32767
|
||||
Min = 0
|
||||
Position = 1
|
||||
TabOrder = 1
|
||||
end
|
||||
object editIgnoreLines: TEdit
|
||||
Left = 110
|
||||
Height = 26
|
||||
Height = 28
|
||||
Top = 9
|
||||
Width = 41
|
||||
Width = 58
|
||||
BorderSpacing.Around = 6
|
||||
NumbersOnly = True
|
||||
TabOrder = 0
|
||||
Text = '1'
|
||||
end
|
||||
object chkLowPriority: TCheckBox
|
||||
AnchorSideTop.Control = editIgnoreLines
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 22
|
||||
Top = 44
|
||||
Height = 24
|
||||
Top = 43
|
||||
Width = 241
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Low priority, avoid high server load'
|
||||
Checked = True
|
||||
State = cbChecked
|
||||
TabOrder = 2
|
||||
TabOrder = 1
|
||||
end
|
||||
object chkLocalNumbers: TCheckBox
|
||||
AnchorSideTop.Control = chkLowPriority
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 22
|
||||
Top = 68
|
||||
Height = 24
|
||||
Top = 73
|
||||
Width = 241
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Input file contains local formatted numbers, e.g. 1.234,56 in Germany'
|
||||
TabOrder = 3
|
||||
TabOrder = 2
|
||||
end
|
||||
object chkTruncateTable: TCheckBox
|
||||
AnchorSideTop.Control = chkLocalNumbers
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 22
|
||||
Top = 115
|
||||
Height = 24
|
||||
Top = 103
|
||||
Width = 241
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Truncate destination table before import'
|
||||
TabOrder = 4
|
||||
TabOrder = 3
|
||||
end
|
||||
object chkKeepDialogOpen: TCheckBox
|
||||
AnchorSideTop.Control = chkTruncateTable
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 22
|
||||
Top = 152
|
||||
Height = 24
|
||||
Top = 133
|
||||
Width = 241
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Keep dialog open after import'
|
||||
TabOrder = 5
|
||||
TabOrder = 4
|
||||
end
|
||||
end
|
||||
object grpDuplicates: TRadioGroup
|
||||
@ -269,6 +308,7 @@ object loaddataform: Tloaddataform
|
||||
Width = 261
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoFill = True
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Handling of duplicate rows'
|
||||
ChildSizing.LeftRightSpacing = 6
|
||||
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
|
||||
@ -277,7 +317,7 @@ object loaddataform: Tloaddataform
|
||||
ChildSizing.ShrinkVertical = crsScaleChilds
|
||||
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
||||
ChildSizing.ControlsPerLine = 1
|
||||
ClientHeight = 131
|
||||
ClientHeight = 129
|
||||
ClientWidth = 257
|
||||
ItemIndex = 2
|
||||
Items.Strings = (
|
||||
@ -295,6 +335,7 @@ object loaddataform: Tloaddataform
|
||||
Width = 261
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
AutoFill = True
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Method'
|
||||
ChildSizing.LeftRightSpacing = 6
|
||||
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
|
||||
@ -303,7 +344,7 @@ object loaddataform: Tloaddataform
|
||||
ChildSizing.ShrinkVertical = crsScaleChilds
|
||||
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
||||
ChildSizing.ControlsPerLine = 1
|
||||
ClientHeight = 104
|
||||
ClientHeight = 102
|
||||
ClientWidth = 257
|
||||
ItemIndex = 0
|
||||
Items.Strings = (
|
||||
@ -320,70 +361,88 @@ object loaddataform: Tloaddataform
|
||||
Top = 299
|
||||
Width = 364
|
||||
Anchors = [akTop, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Destination'
|
||||
ClientHeight = 315
|
||||
ClientHeight = 313
|
||||
ClientWidth = 360
|
||||
ParentBackground = False
|
||||
TabOrder = 5
|
||||
object lblDatabase: TLabel
|
||||
Left = 12
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 11
|
||||
Width = 67
|
||||
Width = 66
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Database:'
|
||||
end
|
||||
object lblTable: TLabel
|
||||
AnchorSideTop.Control = comboDatabase
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 41
|
||||
Width = 41
|
||||
Width = 38
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Table:'
|
||||
end
|
||||
object lblColumns: TLabel
|
||||
AnchorSideTop.Control = comboTable
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 18
|
||||
Top = 71
|
||||
Height = 20
|
||||
Top = 75
|
||||
Width = 60
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Columns:'
|
||||
end
|
||||
object comboDatabase: TComboBox
|
||||
Left = 140
|
||||
Height = 26
|
||||
Height = 28
|
||||
Top = 7
|
||||
Width = 208
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
ItemHeight = 18
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Style = csDropDownList
|
||||
TabOrder = 0
|
||||
OnChange = comboDatabaseChange
|
||||
end
|
||||
object comboTable: TComboBox
|
||||
AnchorSideTop.Control = comboDatabase
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 140
|
||||
Height = 26
|
||||
Top = 37
|
||||
Height = 28
|
||||
Top = 41
|
||||
Width = 208
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
ItemHeight = 18
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Style = csDropDownList
|
||||
TabOrder = 1
|
||||
OnChange = comboTableChange
|
||||
end
|
||||
object chklistColumns: TCheckListBox
|
||||
AnchorSideTop.Control = comboTable
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 140
|
||||
Height = 233
|
||||
Top = 71
|
||||
Height = 227
|
||||
Top = 75
|
||||
Width = 204
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 0
|
||||
TabOrder = 2
|
||||
OnClick = chklistColumnsClick
|
||||
end
|
||||
object ToolBarColMove: TToolBar
|
||||
AnchorSideTop.Control = lblColumns
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 12
|
||||
Height = 82
|
||||
Top = 95
|
||||
Top = 101
|
||||
Width = 109
|
||||
Align = alNone
|
||||
BorderSpacing.Around = 6
|
||||
ButtonHeight = 35
|
||||
ButtonWidth = 74
|
||||
Caption = 'ToolBarColMove'
|
||||
|
@ -40,7 +40,6 @@ type
|
||||
chkFieldsEnclosedOptionally: TCheckBox;
|
||||
grpOptions: TGroupBox;
|
||||
lblIgnoreLinesCount: TLabel;
|
||||
updownIgnoreLines: TUpDown;
|
||||
editIgnoreLines: TEdit;
|
||||
editLineTerminator: TEdit;
|
||||
lblLineTerminator: TLabel;
|
||||
@ -104,7 +103,7 @@ begin
|
||||
editLineTerminator.Text := AppSettings.ReadString(asCSVImportTerminator);
|
||||
chkFieldsEnclosedOptionally.Checked := AppSettings.ReadBool(asCSVImportFieldsEnclosedOptionally);
|
||||
editFieldEscaper.Text := AppSettings.ReadString(asCSVImportFieldEscaper);
|
||||
updownIgnoreLines.Position := AppSettings.ReadInt(asCSVImportIgnoreLines);
|
||||
editIgnoreLines.Text := AppSettings.ReadInt(asCSVImportIgnoreLines).ToString;
|
||||
chkLowPriority.Checked := AppSettings.ReadBool(asCSVImportLowPriority);
|
||||
chkLocalNumbers.Checked := AppSettings.ReadBool(asCSVImportLocalNumbers);
|
||||
chkKeepDialogOpen.Checked := AppSettings.ReadBool(asCSVKeepDialogOpen);
|
||||
@ -173,7 +172,7 @@ begin
|
||||
AppSettings.WriteString(asCSVImportTerminator, editLineTerminator.Text);
|
||||
AppSettings.WriteBool(asCSVImportFieldsEnclosedOptionally, chkFieldsEnclosedOptionally.Checked);
|
||||
AppSettings.WriteString(asCSVImportFieldEscaper, editFieldEscaper.Text);
|
||||
AppSettings.WriteInt(asCSVImportIgnoreLines, updownIgnoreLines.Position);
|
||||
AppSettings.WriteInt(asCSVImportIgnoreLines, StrToIntDef(editIgnoreLines.Text, 0));
|
||||
AppSettings.WriteBool(asCSVImportLowPriority, chkLowPriority.Checked);
|
||||
AppSettings.WriteBool(asCSVImportLocalNumbers, chkLocalNumbers.Checked);
|
||||
AppSettings.WriteBool(asCSVKeepDialogOpen, chkKeepDialogOpen.Checked);
|
||||
@ -425,8 +424,8 @@ begin
|
||||
// Lines:
|
||||
if FLineTerm <> '' then
|
||||
SQL := SQL + 'LINES TERMINATED BY ' + FConnection.EscapeString(FLineTerm) + ' ';
|
||||
if updownIgnoreLines.Position > 0 then
|
||||
SQL := SQL + 'IGNORE ' + inttostr(updownIgnoreLines.Position) + ' LINES ';
|
||||
if editIgnoreLines.Text <> '' then
|
||||
SQL := SQL + 'IGNORE ' + editIgnoreLines.Text + ' LINES ';
|
||||
|
||||
// Column listing
|
||||
SQL := SQL + '(';
|
||||
@ -613,7 +612,7 @@ begin
|
||||
FRowCount := 0;
|
||||
LineNum := 0;
|
||||
RowCountInChunk := 0;
|
||||
IgnoreLines := UpDownIgnoreLines.Position;
|
||||
IgnoreLines := StrToIntDef(editIgnoreLines.Text, 0);
|
||||
ValueCount := 0;
|
||||
PacketSize := SIZE_MB div 2;
|
||||
NextChar;
|
||||
|
@ -14,6 +14,7 @@ object MainForm: TMainForm
|
||||
OnMouseWheel = FormMouseWheel
|
||||
OnShow = FormShow
|
||||
Position = poMainFormCenter
|
||||
LCLVersion = '3.8.0.0'
|
||||
object StatusBar: TStatusBar
|
||||
Left = 0
|
||||
Height = 29
|
||||
@ -73,7 +74,7 @@ object MainForm: TMainForm
|
||||
end
|
||||
object tlbSep1: TToolButton
|
||||
Left = 74
|
||||
Height = 28
|
||||
Height = 8
|
||||
Top = 2
|
||||
Caption = 'tlbSep1'
|
||||
ImageIndex = 2
|
||||
@ -104,7 +105,7 @@ object MainForm: TMainForm
|
||||
end
|
||||
object tlbSep2: TToolButton
|
||||
Left = 198
|
||||
Height = 28
|
||||
Height = 8
|
||||
Top = 2
|
||||
Caption = 'tlbSep2'
|
||||
ImageIndex = 3
|
||||
@ -138,7 +139,7 @@ object MainForm: TMainForm
|
||||
end
|
||||
object tlbSep6: TToolButton
|
||||
Left = 337
|
||||
Height = 28
|
||||
Height = 8
|
||||
Top = 2
|
||||
Caption = 'tlbSep6'
|
||||
ImageIndex = 97
|
||||
@ -252,7 +253,7 @@ object MainForm: TMainForm
|
||||
end
|
||||
object ToolButton2: TToolButton
|
||||
Left = 955
|
||||
Height = 28
|
||||
Height = 5
|
||||
Top = 2
|
||||
Caption = 'ToolButton2'
|
||||
Style = tbsDivider
|
||||
@ -917,7 +918,7 @@ object MainForm: TMainForm
|
||||
item
|
||||
Position = 0
|
||||
Text = 'Name'
|
||||
Width = 145
|
||||
Width = 149
|
||||
end
|
||||
item
|
||||
Alignment = taRightJustify
|
||||
@ -1168,7 +1169,7 @@ object MainForm: TMainForm
|
||||
item
|
||||
Position = 0
|
||||
Text = 'Variable'
|
||||
Width = 248
|
||||
Width = 252
|
||||
end
|
||||
item
|
||||
Position = 1
|
||||
@ -1225,7 +1226,7 @@ object MainForm: TMainForm
|
||||
item
|
||||
Position = 0
|
||||
Text = 'Variable'
|
||||
Width = 248
|
||||
Width = 252
|
||||
end
|
||||
item
|
||||
Alignment = taRightJustify
|
||||
@ -1828,7 +1829,7 @@ object MainForm: TMainForm
|
||||
item
|
||||
Position = 7
|
||||
Text = 'Info'
|
||||
Width = 244
|
||||
Width = 248
|
||||
end>
|
||||
Header.Height = 20
|
||||
Header.Options = [hoAutoResize, hoColumnResize, hoDblClickResize, hoDrag, hoHotTrack, hoShowSortGlyphs, hoVisible, hoDisableAnimatedResize]
|
||||
@ -1899,7 +1900,7 @@ object MainForm: TMainForm
|
||||
item
|
||||
Position = 4
|
||||
Text = 'Percentage'
|
||||
Width = 340
|
||||
Width = 344
|
||||
end>
|
||||
Header.Options = [hoAutoResize, hoColumnResize, hoDblClickResize, hoDrag, hoHotTrack, hoShowSortGlyphs, hoVisible, hoDisableAnimatedResize]
|
||||
Header.PopupMenu = popupListHeader
|
||||
@ -2822,7 +2823,7 @@ object MainForm: TMainForm
|
||||
item
|
||||
Position = 0
|
||||
Text = 'Main column'
|
||||
Width = 88
|
||||
Width = 113
|
||||
end
|
||||
item
|
||||
Position = 1
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -44,15 +44,12 @@ type
|
||||
lblDataFont: TLabel;
|
||||
comboDataFontName: TComboBox;
|
||||
editDataFontSize: TEdit;
|
||||
updownDataFontSize: TUpDown;
|
||||
lblDataFontHint: TLabel;
|
||||
lblMaxColWidth: TLabel;
|
||||
editMaxColWidth: TEdit;
|
||||
updownMaxColWidth: TUpDown;
|
||||
chkRestoreLastDB: TCheckBox;
|
||||
chkUpdatecheck: TCheckBox;
|
||||
editUpdatecheckInterval: TEdit;
|
||||
updownUpdatecheckInterval: TUpDown;
|
||||
chkUpdateCheckBuilds: TCheckBox;
|
||||
SynSQLSynSQLSample: TSynSQLSyn;
|
||||
btnRestoreDefaults: TButton;
|
||||
@ -68,10 +65,8 @@ type
|
||||
tabLogging: TTabSheet;
|
||||
Label4: TLabel;
|
||||
editLogLines: TEdit;
|
||||
updownLogLines: TUpDown;
|
||||
lblLogLinesHint: TLabel;
|
||||
lblLogSnipHint: TLabel;
|
||||
updownLogSnip: TUpDown;
|
||||
editLogSnip: TEdit;
|
||||
lblLogSnip: TLabel;
|
||||
chkLogToFile: TCheckBox;
|
||||
@ -85,21 +80,17 @@ type
|
||||
editGridRowCountStep: TEdit;
|
||||
lblGridRowsLinecount: TLabel;
|
||||
editGridRowsLineCount: TEdit;
|
||||
updownGridRowsLineCount: TUpDown;
|
||||
chkColorBars: TCheckBox;
|
||||
comboSQLFontName: TComboBox;
|
||||
lblFont: TLabel;
|
||||
editSQLFontSize: TEdit;
|
||||
updownSQLFontSize: TUpDown;
|
||||
lblSQLFontSizeUnit: TLabel;
|
||||
chkCompletionProposal: TCheckBox;
|
||||
chkTabsToSpaces: TCheckBox;
|
||||
editSQLTabWidth: TEdit;
|
||||
updownSQLTabWidth: TUpDown;
|
||||
Label1: TLabel;
|
||||
lblMaxQueryResults: TLabel;
|
||||
editMaxQueryResults: TEdit;
|
||||
updownMaxQueryResults: TUpDown;
|
||||
lblGridTextColors: TLabel;
|
||||
comboGridTextColors: TComboBox;
|
||||
colorBoxGridTextColors: TColorBox;
|
||||
@ -139,11 +130,9 @@ type
|
||||
lblGUIFont: TLabel;
|
||||
comboGUIFont: TComboBox;
|
||||
editGUIFontSize: TEdit;
|
||||
updownGUIFontSize: TUpDown;
|
||||
lblGUIFontSize: TLabel;
|
||||
chkHorizontalScrollbar: TCheckBox;
|
||||
editQueryHistoryKeepDays: TEdit;
|
||||
updownQueryHistoryKeepDays: TUpDown;
|
||||
lblQueryHistoryKeepDays: TLabel;
|
||||
Label3: TLabel;
|
||||
cboxRowHighlightSameText: TColorBox;
|
||||
@ -170,17 +159,14 @@ type
|
||||
chkCompletionProposalSearchOnMid: TCheckBox;
|
||||
lblLongSortRowNum: TLabel;
|
||||
editLongSortRowNum: TEdit;
|
||||
updownLongSortRowNum: TUpDown;
|
||||
chkLowercaseHex: TCheckBox;
|
||||
chkTabCloseOnDoubleClick: TCheckBox;
|
||||
lblRealTrailingZeros: TLabel;
|
||||
editRealTrailingZeros: TEdit;
|
||||
updownRealTrailingZeros: TUpDown;
|
||||
lblRealTrailingZerosHint: TLabel;
|
||||
chkLogTimestamp: TCheckBox;
|
||||
lblCompletionProposal: TLabel;
|
||||
editCompletionProposalInterval: TEdit;
|
||||
updownCompletionProposalInterval: TUpDown;
|
||||
lblCompletionProposalIntervalUnit: TLabel;
|
||||
chkColumnHeaderClick: TCheckBox;
|
||||
chkIncrementalSearch: TCheckBox;
|
||||
@ -313,10 +299,10 @@ begin
|
||||
AppSettings.WriteBool(asAllowMultipleInstances, chkAllowMultiInstances.Checked);
|
||||
AppSettings.WriteBool(asRestoreLastUsedDB, chkRestoreLastDB.Checked);
|
||||
AppSettings.WriteString(asFontName, comboSQLFontName.Text);
|
||||
AppSettings.WriteInt(asFontSize, updownSQLFontSize.Position);
|
||||
AppSettings.WriteInt(asTabWidth, updownSQLTabWidth.Position);
|
||||
AppSettings.WriteInt(asLogsqlnum, updownLogLines.Position);
|
||||
AppSettings.WriteInt(asLogsqlwidth, updownLogSnip.Position);
|
||||
AppSettings.WriteInt(asFontSize, MakeInt(editSQLFontSize.Text));
|
||||
AppSettings.WriteInt(asTabWidth, MakeInt(editSQLTabWidth.Text));
|
||||
AppSettings.WriteInt(asLogsqlnum, MakeInt(editLogLines.Text));
|
||||
AppSettings.WriteInt(asLogsqlwidth, MakeInt(editLogSnip.Text));
|
||||
AppSettings.WriteString(asSessionLogsDirectory, editLogDir.Text);
|
||||
AppSettings.WriteBool(asLogErrors, chkLogEventErrors.Checked);
|
||||
AppSettings.WriteBool(asLogUserSQL, chkLogEventUserGeneratedSQL.Checked);
|
||||
@ -325,7 +311,7 @@ begin
|
||||
AppSettings.WriteBool(asLogInfos, chkLogEventInfo.Checked);
|
||||
AppSettings.WriteBool(asLogDebug, chkLogEventDebug.Checked);
|
||||
AppSettings.WriteBool(asQueryHistoryEnabled, chkQueryHistory.Checked);
|
||||
AppSettings.WriteInt(asQueryHistoryKeepDays, updownQueryHistoryKeepDays.Position);
|
||||
AppSettings.WriteInt(asQueryHistoryKeepDays, MakeInt(editQueryHistoryKeepDays.Text));
|
||||
AppSettings.WriteBool(asLogHorizontalScrollbar, chkHorizontalScrollbar.Checked);
|
||||
AppSettings.WriteBool(asLogTimestamp, chkLogTimestamp.Checked);
|
||||
for i:=0 to SynSQLSynSQLSample.AttrCount - 1 do begin
|
||||
@ -338,16 +324,16 @@ begin
|
||||
AppSettings.WriteString(asSQLColMatchingBraceForeground, ColorToString(MainForm.MatchingBraceForegroundColor));
|
||||
AppSettings.WriteString(asSQLColMatchingBraceBackground, ColorToString(MainForm.MatchingBraceBackgroundColor));
|
||||
|
||||
AppSettings.WriteInt(asMaxColWidth, updownMaxColWidth.Position);
|
||||
AppSettings.WriteInt(asMaxColWidth, MakeInt(editMaxColWidth.Text));
|
||||
AppSettings.WriteInt(asDatagridRowsPerStep, StrToIntDef(editGridRowCountStep.Text, -1));
|
||||
AppSettings.WriteInt(asDatagridMaximumRows, StrToIntDef(editGridRowCountMax.Text, -1));
|
||||
AppSettings.WriteInt(asGridRowLineCount, updownGridRowsLineCount.Position);
|
||||
AppSettings.WriteInt(asGridRowLineCount, MakeInt(editGridRowsLineCount.Text));
|
||||
AppSettings.WriteString(asDataFontName, comboDataFontName.Text);
|
||||
AppSettings.WriteInt(asDataFontSize, updownDataFontSize.Position);
|
||||
AppSettings.WriteInt(asDataFontSize, MakeInt(editDataFontSize.Text));
|
||||
AppSettings.WriteBool(asLogToFile, chkLogToFile.Checked);
|
||||
AppSettings.WriteBool(asUpdatecheck, chkUpdatecheck.Checked);
|
||||
AppSettings.WriteBool(asUpdatecheckBuilds, chkUpdatecheckBuilds.Checked);
|
||||
AppSettings.WriteInt(asUpdatecheckInterval, updownUpdatecheckInterval.Position);
|
||||
AppSettings.WriteInt(asUpdatecheckInterval, MakeInt(editUpdatecheckInterval.Text));
|
||||
AppSettings.WriteBool(asDoUsageStatistics, chkDoStatistics.Checked);
|
||||
AppSettings.WriteBool(asWheelZoom, chkWheelZoom.Checked);
|
||||
AppSettings.WriteBool(asDisplayBars, chkColorBars.Checked);
|
||||
@ -366,12 +352,12 @@ begin
|
||||
AppSettings.WriteString(asGUIFontName, '')
|
||||
else
|
||||
AppSettings.WriteString(asGUIFontName, comboGUIFont.Text);
|
||||
AppSettings.WriteInt(asGUIFontSize, updownGUIFontSize.Position);
|
||||
AppSettings.WriteInt(asGUIFontSize, MakeInt(editGUIFontSize.Text));
|
||||
AppSettings.WriteString(asTheme, comboTheme.Text);
|
||||
AppSettings.WriteString(asIconPack, comboIconPack.Text);
|
||||
AppSettings.WriteString(asWebSearchBaseUrl, comboWebSearchBaseUrl.Text);
|
||||
|
||||
AppSettings.WriteInt(asMaxQueryResults, updownMaxQueryResults.Position);
|
||||
AppSettings.WriteInt(asMaxQueryResults, MakeInt(editMaxQueryResults.Text));
|
||||
// Save color settings
|
||||
AppSettings.WriteInt(asFieldColorNumeric, FGridTextColors[dtcInteger]);
|
||||
AppSettings.WriteInt(asFieldColorReal, FGridTextColors[dtcReal]);
|
||||
@ -384,8 +370,8 @@ begin
|
||||
AppSettings.WriteInt(asRowBackgroundEven, cboxRowBackgroundEven.Selected);
|
||||
AppSettings.WriteInt(asRowBackgroundOdd, cboxRowBackgroundOdd.Selected);
|
||||
AppSettings.WriteInt(asHightlightSameTextBackground, cboxRowHighlightSameText.Selected);
|
||||
AppSettings.WriteInt(asRealTrailingZeros, updownRealTrailingZeros.Position);
|
||||
AppSettings.WriteInt(asQueryGridLongSortRowNum, updownLongSortRowNum.Position);
|
||||
AppSettings.WriteInt(asRealTrailingZeros, MakeInt(editRealTrailingZeros.Text));
|
||||
AppSettings.WriteInt(asQueryGridLongSortRowNum, MakeInt(editLongSortRowNum.Text));
|
||||
AppSettings.WriteBool(asDataLocalNumberFormat, chkLocalNumberFormat.Checked);
|
||||
AppSettings.WriteBool(asLowercaseHex, chkLowercaseHex.Checked);
|
||||
AppSettings.WriteBool(asHintsOnResultTabs, chkHintsOnResultTabs.Checked);
|
||||
@ -408,7 +394,7 @@ begin
|
||||
end;
|
||||
|
||||
AppSettings.WriteBool(asCompletionProposal, chkCompletionProposal.Checked);
|
||||
AppSettings.WriteInt(asCompletionProposalInterval, updownCompletionProposalInterval.Position);
|
||||
AppSettings.WriteInt(asCompletionProposalInterval, MakeInt(editCompletionProposalInterval.Text));
|
||||
AppSettings.WriteBool(asCompletionProposalSearchOnMid, chkCompletionProposalSearchOnMid.Checked);
|
||||
AppSettings.WriteBool(asAutoUppercase, chkAutoUppercase.Checked);
|
||||
AppSettings.WriteBool(asTabsToSpaces, chkTabsToSpaces.Checked);
|
||||
@ -561,8 +547,6 @@ begin
|
||||
//EnumFontFamilies(Canvas.Handle, nil, @EnumFixedProc, LPARAM(Pointer(comboSQLFontName.Items)));
|
||||
comboSQLFontName.Items.Assign(Screen.Fonts);
|
||||
comboSQLFontName.Sorted := True;
|
||||
updownCompletionProposalInterval.Min := 0;
|
||||
updownCompletionProposalInterval.Max := MaxInt;
|
||||
SynMemoSQLSample.Text := 'SELECT DATE_SUB(NOW(), INTERVAL 1 DAY),' + sLineBreak +
|
||||
CodeIndent + '''String literal'' AS lit' + sLineBreak +
|
||||
'FROM tableA AS ta' + sLineBreak +
|
||||
@ -702,7 +686,7 @@ begin
|
||||
chkRestoreLastDB.Checked := AppSettings.ReadBool(asRestoreLastUsedDB);
|
||||
chkUpdatecheck.Checked := AppSettings.ReadBool(asUpdatecheck);
|
||||
chkUpdatecheckBuilds.Checked := AppSettings.ReadBool(asUpdatecheckBuilds);
|
||||
updownUpdatecheckInterval.Position := AppSettings.ReadInt(asUpdatecheckInterval);
|
||||
editUpdatecheckInterval.Text := AppSettings.ReadInt(asUpdatecheckInterval).ToString;
|
||||
chkUpdatecheckClick(Sender);
|
||||
chkDoStatistics.Checked := AppSettings.ReadBool(asDoUsageStatistics);
|
||||
chkWheelZoom.Checked := AppSettings.ReadBool(asWheelZoom);
|
||||
@ -723,15 +707,15 @@ begin
|
||||
comboGUIFont.ItemIndex := 0
|
||||
else
|
||||
comboGUIFont.ItemIndex := comboGUIFont.Items.IndexOf(GUIFont);
|
||||
updownGUIFontSize.Position := AppSettings.ReadInt(asGUIFontSize);
|
||||
editGUIFontSize.Text := AppSettings.ReadInt(asGUIFontSize).ToString;
|
||||
comboGUIFont.OnChange(comboGUIFont);
|
||||
comboTheme.ItemIndex := comboTheme.Items.IndexOf(AppSettings.ReadString(asTheme));
|
||||
comboIconPack.ItemIndex := comboIconPack.Items.IndexOf(AppSettings.ReadString(asIconPack));
|
||||
comboWebSearchBaseUrl.Text := AppSettings.ReadString(asWebSearchBaseUrl);
|
||||
|
||||
// Logging
|
||||
updownLogLines.Position := AppSettings.ReadInt(asLogsqlnum);
|
||||
updownLogSnip.Position := AppSettings.ReadInt(asLogsqlwidth);
|
||||
editLogLines.Text := AppSettings.ReadInt(asLogsqlnum).ToString;
|
||||
editLogSnip.Text := AppSettings.ReadInt(asLogsqlwidth).ToString;
|
||||
chkLogToFile.Checked := AppSettings.ReadBool(asLogToFile);
|
||||
editLogDir.Text := AppSettings.ReadString(asSessionLogsDirectory);
|
||||
chkLogEventErrors.Checked := AppSettings.ReadBool(asLogErrors);
|
||||
@ -741,23 +725,23 @@ begin
|
||||
chkLogEventInfo.Checked := AppSettings.ReadBool(asLogInfos);
|
||||
chkLogEventDebug.Checked := AppSettings.ReadBool(asLogDebug);
|
||||
chkQueryHistory.Checked := AppSettings.ReadBool(asQueryHistoryEnabled);
|
||||
updownQueryHistoryKeepDays.Position := AppSettings.ReadInt(asQueryHistoryKeepDays);
|
||||
editQueryHistoryKeepDays.Text := AppSettings.ReadInt(asQueryHistoryKeepDays).ToString;
|
||||
chkHorizontalScrollbar.Checked := AppSettings.ReadBool(asLogHorizontalScrollbar);
|
||||
chkLogTimestamp.Checked := AppSettings.ReadBool(asLogTimestamp);
|
||||
|
||||
// Default column width in grids:
|
||||
updownMaxColWidth.Position := AppSettings.ReadInt(asMaxColWidth);
|
||||
editMaxColWidth.Text := AppSettings.ReadInt(asMaxColWidth).ToString;
|
||||
editGridRowCountStep.Text := IntToStr(AppSettings.ReadInt(asDatagridRowsPerStep));
|
||||
editGridRowCountMax.Text := IntToStr(AppSettings.ReadInt(asDatagridMaximumRows));
|
||||
updownGridRowsLineCount.Position := AppSettings.ReadInt(asGridRowLineCount);
|
||||
editGridRowsLineCount.Text := AppSettings.ReadInt(asGridRowLineCount).ToString;
|
||||
|
||||
// SQL:
|
||||
Mainform.SetupSynEditor(SynMemoSQLSample);
|
||||
comboSQLFontName.ItemIndex := comboSQLFontName.Items.IndexOf(SynMemoSQLSample.Font.Name);
|
||||
updownSQLFontSize.Position := SynMemoSQLSample.Font.Size;
|
||||
updownSQLTabWidth.Position := SynMemoSQLSample.TabWidth;
|
||||
editSQLFontSize.Text := SynMemoSQLSample.Font.Size.ToString;
|
||||
editSQLTabWidth.Text := SynMemoSQLSample.TabWidth.ToString;
|
||||
chkCompletionProposal.Checked := AppSettings.ReadBool(asCompletionProposal);
|
||||
updownCompletionProposalInterval.Position := AppSettings.ReadInt(asCompletionProposalInterval);
|
||||
editCompletionProposalInterval.Text := AppSettings.ReadInt(asCompletionProposalInterval).ToString;
|
||||
chkCompletionProposalSearchOnMid.Checked := AppSettings.ReadBool(asCompletionProposalSearchOnMid);
|
||||
chkAutoUppercase.Checked := AppSettings.ReadBool(asAutoUppercase);
|
||||
chkTabsToSpaces.Checked := AppSettings.ReadBool(asTabsToSpaces);
|
||||
@ -766,8 +750,8 @@ begin
|
||||
// Grid formatting:
|
||||
comboDataFontName.Items := Screen.Fonts;
|
||||
comboDataFontName.ItemIndex := comboDataFontName.Items.IndexOf(AppSettings.ReadString(asDataFontName));
|
||||
updownDataFontSize.Position := AppSettings.ReadInt(asDataFontSize);
|
||||
updownMaxQueryResults.Position := AppSettings.ReadINt(asMaxQueryResults);
|
||||
editDataFontSize.Text := AppSettings.ReadInt(asDataFontSize).ToString;
|
||||
editMaxQueryResults.Text := AppSettings.ReadINt(asMaxQueryResults).ToString;
|
||||
// Load color settings
|
||||
FGridTextColors[dtcInteger] := AppSettings.ReadInt(asFieldColorNumeric);
|
||||
FGridTextColors[dtcReal] := AppSettings.ReadInt(asFieldColorReal);
|
||||
@ -783,8 +767,8 @@ begin
|
||||
cboxRowBackgroundEven.Selected := AppSettings.ReadInt(asRowBackgroundEven);
|
||||
cboxRowBackgroundOdd.Selected := AppSettings.ReadInt(asRowBackgroundOdd);
|
||||
cboxRowHighlightSameText.Selected := AppSettings.ReadInt(asHightlightSameTextBackground);
|
||||
updownRealTrailingZeros.Position := AppSettings.ReadInt(asRealTrailingZeros);
|
||||
updownLongSortRowNum.Position := AppSettings.ReadInt(asQueryGridLongSortRowNum);
|
||||
editRealTrailingZeros.Text := AppSettings.ReadInt(asRealTrailingZeros).ToString;
|
||||
editLongSortRowNum.Text := AppSettings.ReadInt(asQueryGridLongSortRowNum).ToString;
|
||||
chkLocalNumberFormat.Checked := AppSettings.ReadBool(asDataLocalNumberFormat);
|
||||
chkLowercaseHex.Checked := AppSettings.ReadBool(asLowercaseHex);
|
||||
chkHintsOnResultTabs.Checked := AppSettings.ReadBool(asHintsOnResultTabs);
|
||||
@ -836,9 +820,10 @@ var
|
||||
Attri: TSynHighlighterAttributes;
|
||||
Foreground, Background: TColor;
|
||||
begin
|
||||
SynMemoSQLSample.Font.Name := comboSQLFontName.Items[comboSQLFontName.ItemIndex];
|
||||
SynMemoSQLSample.Font.Size := updownSQLFontSize.Position;
|
||||
SynMemoSQLSample.TabWidth := updownSQLTabWidth.Position;
|
||||
if comboSQLFontName.ItemIndex > -1 then
|
||||
SynMemoSQLSample.Font.Name := comboSQLFontName.Items[comboSQLFontName.ItemIndex];
|
||||
SynMemoSQLSample.Font.Size := MakeInt(editSQLFontSize.Text);
|
||||
SynMemoSQLSample.TabWidth := MakeInt(editSQLTabWidth.Text);
|
||||
AttriIdx := comboSQLColElement.ItemIndex;
|
||||
Foreground := cboxSQLColForeground.Selected;
|
||||
Background := cboxSQLColBackground.Selected;
|
||||
@ -931,7 +916,6 @@ end;
|
||||
}
|
||||
procedure TfrmPreferences.chkUpdatecheckClick(Sender: TObject);
|
||||
begin
|
||||
updownUpdatecheckInterval.Enabled := chkUpdatecheck.Checked;
|
||||
editUpdatecheckInterval.Enabled := chkUpdatecheck.Checked;
|
||||
chkUpdatecheckBuilds.Enabled := chkUpdatecheck.Checked;
|
||||
Modified(Sender);
|
||||
@ -944,7 +928,6 @@ var
|
||||
begin
|
||||
Enable := TCheckBox(Sender).Checked;
|
||||
editCompletionProposalInterval.Enabled := Enable;
|
||||
updownCompletionProposalInterval.Enabled := Enable;
|
||||
lblCompletionProposalIntervalUnit.Enabled := Enable;
|
||||
chkCompletionProposalSearchOnMid.Enabled := Enable;
|
||||
Modified(Sender);
|
||||
@ -960,7 +943,6 @@ end;
|
||||
procedure TfrmPreferences.chkQueryHistoryClick(Sender: TObject);
|
||||
begin
|
||||
editQueryHistoryKeepDays.Enabled := chkQueryHistory.Checked;
|
||||
updownQueryHistoryKeepDays.Enabled := chkQueryHistory.Checked;
|
||||
lblQueryHistoryKeepDays.Enabled := chkQueryHistory.Checked;
|
||||
Modified(Sender);
|
||||
end;
|
||||
@ -1047,7 +1029,6 @@ begin
|
||||
// System font selected
|
||||
UseCustomFont := comboGUIFont.ItemIndex > 0;
|
||||
editGUIFontSize.Enabled := UseCustomFont;
|
||||
updownGUIFontSize.Enabled := UseCustomFont;
|
||||
lblGUIFontSize.Enabled := UseCustomFont;
|
||||
Modified(Sender);
|
||||
end;
|
||||
|
@ -13,18 +13,20 @@ object printlistForm: TprintlistForm
|
||||
Position = poMainFormCenter
|
||||
object lblSelect: TLabel
|
||||
Left = 10
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 14
|
||||
Width = 89
|
||||
Width = 91
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Select printer:'
|
||||
FocusControl = comboPrinters
|
||||
end
|
||||
object comboPrinters: TComboBox
|
||||
Left = 102
|
||||
Height = 26
|
||||
Height = 28
|
||||
Top = 10
|
||||
Width = 258
|
||||
ItemHeight = 18
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Style = csDropDownList
|
||||
TabOrder = 0
|
||||
OnChange = comboPrintersChange
|
||||
@ -34,6 +36,7 @@ object printlistForm: TprintlistForm
|
||||
Height = 31
|
||||
Top = 10
|
||||
Width = 94
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Configure'
|
||||
TabOrder = 1
|
||||
OnClick = btnConfigureClick
|
||||
@ -44,6 +47,7 @@ object printlistForm: TprintlistForm
|
||||
Top = 74
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
@ -55,6 +59,7 @@ object printlistForm: TprintlistForm
|
||||
Top = 74
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Print'
|
||||
Default = True
|
||||
ModalResult = 1
|
||||
@ -62,11 +67,14 @@ object printlistForm: TprintlistForm
|
||||
OnClick = btnPrintClick
|
||||
end
|
||||
object chkPrintHeader: TCheckBox
|
||||
AnchorSideTop.Control = comboPrinters
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 102
|
||||
Height = 22
|
||||
Top = 45
|
||||
Height = 24
|
||||
Top = 44
|
||||
Width = 258
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Print column headers'
|
||||
Checked = True
|
||||
State = cbChecked
|
||||
|
@ -45,6 +45,7 @@ object frmReformatter: TfrmReformatter
|
||||
Top = 230
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
@ -63,6 +64,8 @@ object frmReformatter: TfrmReformatter
|
||||
OnClick = btnOkClick
|
||||
end
|
||||
object lblFormatProviderLink: TLabel
|
||||
AnchorSideTop.Control = grpReformatter
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Cursor = crHandPoint
|
||||
Left = 10
|
||||
Height = 20
|
||||
|
@ -17,27 +17,35 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
OnShow = FormShow
|
||||
Position = poOwnerFormCenter
|
||||
object lblSearch: TLabel
|
||||
AnchorSideTop.Control = comboSearchIn
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 20
|
||||
Top = 50
|
||||
Top = 40
|
||||
Width = 78
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Text to find:'
|
||||
FocusControl = comboSearch
|
||||
end
|
||||
object lblReplaceHint: TLabel
|
||||
AnchorSideTop.Control = comboReplace
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 112
|
||||
Height = 20
|
||||
Top = 109
|
||||
Top = 108
|
||||
Width = 324
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Replacement can have \n for new lines and \t for tabs'
|
||||
Enabled = False
|
||||
end
|
||||
object lblSearchIn: TLabel
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 10
|
||||
Height = 20
|
||||
Top = 16
|
||||
Top = 6
|
||||
Width = 63
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Search in:'
|
||||
end
|
||||
object btnCancel: TButton
|
||||
@ -63,20 +71,26 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
OnClick = DoSearchReplace
|
||||
end
|
||||
object chkReplace: TCheckBox
|
||||
AnchorSideTop.Control = comboSearch
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 24
|
||||
Top = 80
|
||||
Top = 74
|
||||
Width = 77
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Replace:'
|
||||
TabOrder = 3
|
||||
OnClick = chkReplaceClick
|
||||
end
|
||||
object comboSearch: TComboBox
|
||||
AnchorSideTop.Control = comboSearchIn
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 112
|
||||
Height = 28
|
||||
Top = 46
|
||||
Top = 40
|
||||
Width = 381
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
TabOrder = 1
|
||||
Text = 'comboSearch'
|
||||
@ -84,11 +98,14 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
OnExit = comboSearchReplaceExit
|
||||
end
|
||||
object comboReplace: TComboBox
|
||||
AnchorSideTop.Control = comboSearch
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 112
|
||||
Height = 28
|
||||
Top = 78
|
||||
Top = 74
|
||||
Width = 381
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Enabled = False
|
||||
ItemHeight = 20
|
||||
TabOrder = 4
|
||||
@ -97,11 +114,14 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
OnExit = comboSearchReplaceExit
|
||||
end
|
||||
object grpOptions: TGroupBox
|
||||
AnchorSideTop.Control = lblReplaceHint
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 86
|
||||
Top = 136
|
||||
Top = 134
|
||||
Width = 522
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Options'
|
||||
ClientHeight = 61
|
||||
ClientWidth = 518
|
||||
@ -144,9 +164,11 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
end
|
||||
end
|
||||
object grpDirection: TRadioGroup
|
||||
AnchorSideTop.Control = grpOptions
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 110
|
||||
Top = 230
|
||||
Height = 114
|
||||
Top = 226
|
||||
Width = 150
|
||||
Anchors = [akTop, akLeft, akBottom]
|
||||
AutoFill = True
|
||||
@ -158,7 +180,7 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
ChildSizing.ShrinkVertical = crsScaleChilds
|
||||
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
||||
ChildSizing.ControlsPerLine = 1
|
||||
ClientHeight = 85
|
||||
ClientHeight = 89
|
||||
ClientWidth = 146
|
||||
ItemIndex = 0
|
||||
Items.Strings = (
|
||||
@ -169,9 +191,11 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
TabOrder = 7
|
||||
end
|
||||
object grpOrigin: TRadioGroup
|
||||
AnchorSideTop.Control = grpOptions
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 168
|
||||
Height = 110
|
||||
Top = 230
|
||||
Height = 114
|
||||
Top = 226
|
||||
Width = 150
|
||||
Anchors = [akTop, akLeft, akBottom]
|
||||
AutoFill = True
|
||||
@ -183,7 +207,7 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
ChildSizing.ShrinkVertical = crsScaleChilds
|
||||
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
||||
ChildSizing.ControlsPerLine = 1
|
||||
ClientHeight = 85
|
||||
ClientHeight = 89
|
||||
ClientWidth = 146
|
||||
ItemIndex = 1
|
||||
Items.Strings = (
|
||||
@ -194,9 +218,11 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
TabOrder = 8
|
||||
end
|
||||
object grpScope: TRadioGroup
|
||||
AnchorSideTop.Control = grpOptions
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 325
|
||||
Height = 110
|
||||
Top = 230
|
||||
Height = 114
|
||||
Top = 226
|
||||
Width = 207
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
AutoFill = True
|
||||
@ -208,7 +234,7 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
ChildSizing.ShrinkVertical = crsScaleChilds
|
||||
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
||||
ChildSizing.ControlsPerLine = 1
|
||||
ClientHeight = 85
|
||||
ClientHeight = 89
|
||||
ClientWidth = 203
|
||||
ItemIndex = 0
|
||||
Items.Strings = (
|
||||
@ -231,31 +257,39 @@ object frmSearchReplace: TfrmSearchReplace
|
||||
OnClick = DoSearchReplace
|
||||
end
|
||||
object comboSearchIn: TComboBox
|
||||
AnchorSideTop.Control = Owner
|
||||
Left = 112
|
||||
Height = 28
|
||||
Top = 12
|
||||
Top = 6
|
||||
Width = 420
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Style = csDropDownList
|
||||
TabOrder = 0
|
||||
end
|
||||
object btnSearchHints: TButton
|
||||
AnchorSideTop.Control = comboSearchIn
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 501
|
||||
Height = 31
|
||||
Top = 44
|
||||
Top = 40
|
||||
Width = 31
|
||||
Anchors = [akTop, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '⏷'
|
||||
TabOrder = 2
|
||||
OnClick = btnWithDropDownClick
|
||||
end
|
||||
object btnReplaceHints: TButton
|
||||
AnchorSideTop.Control = comboSearch
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 501
|
||||
Height = 31
|
||||
Top = 75
|
||||
Top = 74
|
||||
Width = 31
|
||||
Anchors = [akTop, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '⏷'
|
||||
Enabled = False
|
||||
TabOrder = 5
|
||||
|
@ -16,25 +16,31 @@ object frmSelectDBObject: TfrmSelectDBObject
|
||||
Position = poOwnerFormCenter
|
||||
object lblSelect: TLabel
|
||||
Left = 10
|
||||
Height = 18
|
||||
Height = 20
|
||||
Top = 10
|
||||
Width = 218
|
||||
Width = 220
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Select database, table or column:'
|
||||
end
|
||||
object lblCustom: TLabel
|
||||
AnchorSideBottom.Control = editDb
|
||||
Left = 10
|
||||
Height = 18
|
||||
Top = 297
|
||||
Width = 283
|
||||
Height = 20
|
||||
Top = 294
|
||||
Width = 278
|
||||
Anchors = [akLeft, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '... or wildcard database (% and _ allowed):'
|
||||
end
|
||||
object TreeDBO: TLazVirtualStringTree
|
||||
AnchorSideTop.Control = lblSelect
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 257
|
||||
Top = 34
|
||||
Height = 255
|
||||
Top = 36
|
||||
Width = 270
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Header.AutoSizeIndex = 0
|
||||
Header.Columns = <
|
||||
item
|
||||
@ -69,6 +75,7 @@ object frmSelectDBObject: TfrmSelectDBObject
|
||||
Top = 354
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'OK'
|
||||
Default = True
|
||||
Enabled = False
|
||||
@ -81,17 +88,20 @@ object frmSelectDBObject: TfrmSelectDBObject
|
||||
Top = 354
|
||||
Width = 94
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
ModalResult = 2
|
||||
TabOrder = 3
|
||||
end
|
||||
object editDb: TEdit
|
||||
AnchorSideBottom.Control = btnOK
|
||||
Left = 10
|
||||
Height = 26
|
||||
Top = 319
|
||||
Height = 28
|
||||
Top = 320
|
||||
Width = 270
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 1
|
||||
Text = 'editDb'
|
||||
TextHint = 'database'
|
||||
|
@ -15,24 +15,22 @@ object frmTextEditor: TfrmTextEditor
|
||||
OnDestroy = FormDestroy
|
||||
OnShow = FormShow
|
||||
Position = poMainFormCenter
|
||||
LCLVersion = '3.8.0.0'
|
||||
object Panel1: TPanel
|
||||
Left = 0
|
||||
Height = 28
|
||||
Top = 125
|
||||
Width = 472
|
||||
Top = 163
|
||||
Width = 602
|
||||
Align = alBottom
|
||||
BevelOuter = bvNone
|
||||
Caption = 'Panel1'
|
||||
ClientHeight = 28
|
||||
ClientWidth = 472
|
||||
ClientWidth = 602
|
||||
ParentBackground = False
|
||||
TabOrder = 0
|
||||
object lblTextLength: TLabel
|
||||
Left = 409
|
||||
Height = 16
|
||||
Top = 3
|
||||
Width = 76
|
||||
Left = 211
|
||||
Height = 28
|
||||
Top = 0
|
||||
Width = 89
|
||||
Align = alLeft
|
||||
Caption = 'lblTextLength'
|
||||
Layout = tlCenter
|
||||
@ -40,91 +38,90 @@ object frmTextEditor: TfrmTextEditor
|
||||
end
|
||||
object tlbStandard: TToolBar
|
||||
Left = 0
|
||||
Height = 22
|
||||
Height = 28
|
||||
Top = 0
|
||||
Width = 261
|
||||
Width = 30
|
||||
Align = alLeft
|
||||
AutoSize = True
|
||||
Caption = 'tlbStandard'
|
||||
Images = MainForm.ImageListIcons8
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
TabOrder = 0
|
||||
Wrapable = False
|
||||
object btnWrap: TToolButton
|
||||
Left = 0
|
||||
Left = 1
|
||||
Hint = 'Wrap long lines'
|
||||
Top = 0
|
||||
Top = 2
|
||||
Caption = 'Wrap long lines'
|
||||
ImageIndex = 62
|
||||
OnClick = btnWrapClick
|
||||
end
|
||||
object btnLinebreaks: TToolButton
|
||||
Left = 29
|
||||
Top = 0
|
||||
Left = 1
|
||||
Top = 30
|
||||
Caption = 'Linebreaks'
|
||||
DropdownMenu = popupLinebreaks
|
||||
ImageIndex = 123
|
||||
Style = tbsDropDown
|
||||
end
|
||||
object btnLoadText: TToolButton
|
||||
Left = 81
|
||||
Left = 1
|
||||
Hint = 'Load textfile'
|
||||
Top = 0
|
||||
Top = 58
|
||||
Caption = 'Load textfile'
|
||||
ImageIndex = 52
|
||||
OnClick = btnLoadTextClick
|
||||
end
|
||||
object btnCancel: TToolButton
|
||||
Left = 110
|
||||
Left = 1
|
||||
Hint = 'Cancel'
|
||||
Top = 0
|
||||
Top = 86
|
||||
Caption = 'Cancel'
|
||||
ImageIndex = 26
|
||||
OnClick = btnCancelClick
|
||||
end
|
||||
object btnApply: TToolButton
|
||||
Left = 139
|
||||
Left = 1
|
||||
Hint = 'Apply changes'
|
||||
Top = 0
|
||||
Top = 114
|
||||
Caption = 'Apply changes'
|
||||
ImageIndex = 55
|
||||
OnClick = btnApplyClick
|
||||
end
|
||||
object btnSeparator1: TToolButton
|
||||
Left = 168
|
||||
Top = 0
|
||||
Width = 10
|
||||
Left = 1
|
||||
Top = 142
|
||||
Width = 29
|
||||
Caption = 'btnSeparator1'
|
||||
ImageIndex = 60
|
||||
Style = tbsSeparator
|
||||
end
|
||||
object btnSearchFind: TToolButton
|
||||
Left = 178
|
||||
Top = 0
|
||||
Left = 1
|
||||
Top = 152
|
||||
Action = MainForm.actQueryFind
|
||||
end
|
||||
object btnSearchFindNext: TToolButton
|
||||
Left = 206
|
||||
Top = 0
|
||||
Left = 1
|
||||
Top = 180
|
||||
Action = MainForm.actQueryFindAgain
|
||||
end
|
||||
object btnSearchReplace: TToolButton
|
||||
Left = 235
|
||||
Top = 0
|
||||
Left = 1
|
||||
Top = 208
|
||||
Action = MainForm.actQueryReplace
|
||||
end
|
||||
object ToolButton1: TToolButton
|
||||
Left = 264
|
||||
Top = 0
|
||||
Width = 10
|
||||
Left = 1
|
||||
Top = 236
|
||||
Width = 29
|
||||
Caption = 'ToolButton1'
|
||||
ImageIndex = 60
|
||||
Style = tbsSeparator
|
||||
end
|
||||
object btnCustomizeHighlighter: TToolButton
|
||||
Left = 274
|
||||
Top = 0
|
||||
Left = 1
|
||||
Top = 246
|
||||
Caption = 'Customize highlighter'
|
||||
DropdownMenu = popupHighlighter
|
||||
ImageIndex = 39
|
||||
@ -133,12 +130,12 @@ object frmTextEditor: TfrmTextEditor
|
||||
end
|
||||
end
|
||||
object comboHighlighter: TComboBox
|
||||
Left = 261
|
||||
Height = 22
|
||||
Left = 30
|
||||
Height = 28
|
||||
Top = 0
|
||||
Width = 181
|
||||
Align = alLeft
|
||||
ItemHeight = 0
|
||||
ItemHeight = 20
|
||||
Sorted = True
|
||||
Style = csDropDownList
|
||||
TabOrder = 1
|
||||
@ -147,9 +144,9 @@ object frmTextEditor: TfrmTextEditor
|
||||
end
|
||||
inline MemoText: TSynEdit
|
||||
Left = 0
|
||||
Height = 131
|
||||
Height = 163
|
||||
Top = 0
|
||||
Width = 482
|
||||
Width = 602
|
||||
Align = alClient
|
||||
Font.Color = clWindowText
|
||||
Font.Height = -16
|
||||
@ -234,7 +231,6 @@ object frmTextEditor: TfrmTextEditor
|
||||
end
|
||||
end
|
||||
object popupLinebreaks: TPopupMenu
|
||||
Images = MainForm.ImageListIcons8
|
||||
Left = 10
|
||||
Top = 20
|
||||
object menuWindowsLB: TMenuItem
|
||||
@ -270,7 +266,6 @@ object frmTextEditor: TfrmTextEditor
|
||||
Top = 20
|
||||
end
|
||||
object popupEditor: TPopupMenu
|
||||
Images = MainForm.ImageListIcons8
|
||||
Left = 300
|
||||
Top = 20
|
||||
object Selectall1: TMenuItem
|
||||
@ -299,7 +294,6 @@ object frmTextEditor: TfrmTextEditor
|
||||
end
|
||||
end
|
||||
object popupHighlighter: TPopupMenu
|
||||
Images = MainForm.ImageListIcons8
|
||||
Left = 440
|
||||
Top = 40
|
||||
object menuCustomizeHighlighter: TMenuItem
|
||||
|
@ -21,6 +21,7 @@ object frmUpdateCheck: TfrmUpdateCheck
|
||||
Width = 262
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
AutoSize = False
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'lblStatus'
|
||||
Layout = tlCenter
|
||||
WordWrap = True
|
||||
@ -31,6 +32,7 @@ object frmUpdateCheck: TfrmUpdateCheck
|
||||
Top = 464
|
||||
Width = 132
|
||||
Anchors = [akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Cancel = True
|
||||
Caption = 'Cancel'
|
||||
Default = True
|
||||
@ -38,22 +40,25 @@ object frmUpdateCheck: TfrmUpdateCheck
|
||||
TabOrder = 3
|
||||
end
|
||||
object groupBuild: TGroupBox
|
||||
AnchorSideBottom.Control = btnCancel
|
||||
Left = 10
|
||||
Height = 215
|
||||
Height = 218
|
||||
Top = 240
|
||||
Width = 430
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Nightly build'
|
||||
ClientHeight = 190
|
||||
ClientHeight = 193
|
||||
ClientWidth = 426
|
||||
ParentBackground = False
|
||||
TabOrder = 2
|
||||
object btnBuild: TButton
|
||||
Left = 8
|
||||
Height = 31
|
||||
Top = 150
|
||||
Top = 153
|
||||
Width = 409
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Download nightly build'
|
||||
Enabled = False
|
||||
ModalResult = 1
|
||||
@ -63,10 +68,11 @@ object frmUpdateCheck: TfrmUpdateCheck
|
||||
end
|
||||
object memoBuild: TMemo
|
||||
Left = 8
|
||||
Height = 90
|
||||
Top = 20
|
||||
Height = 93
|
||||
Top = 11
|
||||
Width = 409
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
BorderStyle = bsNone
|
||||
Color = clBtnFace
|
||||
Font.Color = clWindowText
|
||||
@ -81,22 +87,27 @@ object frmUpdateCheck: TfrmUpdateCheck
|
||||
TabOrder = 0
|
||||
end
|
||||
object btnChangelog: TButton
|
||||
AnchorSideBottom.Control = btnBuild
|
||||
Left = 8
|
||||
Height = 31
|
||||
Top = 111
|
||||
Top = 116
|
||||
Width = 409
|
||||
Anchors = [akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'View changelog'
|
||||
TabOrder = 1
|
||||
OnClick = btnChangelogClick
|
||||
end
|
||||
end
|
||||
object groupRelease: TGroupBox
|
||||
AnchorSideTop.Control = btnDonate
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 10
|
||||
Height = 122
|
||||
Top = 110
|
||||
Top = 108
|
||||
Width = 430
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Official release'
|
||||
ClientHeight = 97
|
||||
ClientWidth = 426
|
||||
@ -105,10 +116,11 @@ object frmUpdateCheck: TfrmUpdateCheck
|
||||
TabOrder = 1
|
||||
object memoRelease: TMemo
|
||||
Left = 8
|
||||
Height = 41
|
||||
Top = 20
|
||||
Height = 59
|
||||
Top = 5
|
||||
Width = 409
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
BorderStyle = bsNone
|
||||
Color = clBtnFace
|
||||
Lines.Strings = (
|
||||
@ -125,6 +137,7 @@ object frmUpdateCheck: TfrmUpdateCheck
|
||||
Top = 72
|
||||
Width = 151
|
||||
Anchors = [akLeft, akBottom]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Download new release'
|
||||
PopupMenu = popupDownloadRelease
|
||||
OnClick = LinkLabelReleaseLinkClick
|
||||
@ -136,6 +149,7 @@ object frmUpdateCheck: TfrmUpdateCheck
|
||||
Top = 10
|
||||
Width = 430
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Donate'
|
||||
TabOrder = 0
|
||||
end
|
||||
|
@ -19,20 +19,21 @@ object UserManagerForm: TUserManagerForm
|
||||
Position = poMainFormCenter
|
||||
object Splitter1: TSplitter
|
||||
Cursor = crSizeWE
|
||||
Left = 280
|
||||
Height = 408
|
||||
Left = 292
|
||||
Height = 396
|
||||
Top = 0
|
||||
Width = 10
|
||||
OnMoved = FormResize
|
||||
end
|
||||
object pnlLeft: TPanel
|
||||
Left = 0
|
||||
Height = 408
|
||||
Top = 0
|
||||
Left = 6
|
||||
Height = 390
|
||||
Top = 6
|
||||
Width = 280
|
||||
Align = alLeft
|
||||
BorderSpacing.Around = 6
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 408
|
||||
ClientHeight = 390
|
||||
ClientWidth = 280
|
||||
Constraints.MinWidth = 25
|
||||
ParentBackground = False
|
||||
@ -48,7 +49,7 @@ object UserManagerForm: TUserManagerForm
|
||||
end
|
||||
object listUsers: TLazVirtualStringTree
|
||||
Left = 0
|
||||
Height = 351
|
||||
Height = 333
|
||||
Top = 57
|
||||
Width = 280
|
||||
Align = alClient
|
||||
@ -123,14 +124,15 @@ object UserManagerForm: TUserManagerForm
|
||||
end
|
||||
end
|
||||
object pnlRight: TPanel
|
||||
Left = 290
|
||||
Height = 408
|
||||
Top = 0
|
||||
Width = 494
|
||||
Left = 308
|
||||
Height = 390
|
||||
Top = 6
|
||||
Width = 470
|
||||
Align = alClient
|
||||
BorderSpacing.Around = 6
|
||||
BevelOuter = bvNone
|
||||
ClientHeight = 408
|
||||
ClientWidth = 494
|
||||
ClientHeight = 390
|
||||
ClientWidth = 470
|
||||
Constraints.MinWidth = 25
|
||||
ParentBackground = False
|
||||
TabOrder = 1
|
||||
@ -138,7 +140,7 @@ object UserManagerForm: TUserManagerForm
|
||||
Left = 0
|
||||
Height = 37
|
||||
Top = 181
|
||||
Width = 494
|
||||
Width = 470
|
||||
AutoSize = True
|
||||
ButtonHeight = 35
|
||||
ButtonWidth = 99
|
||||
@ -170,10 +172,12 @@ object UserManagerForm: TUserManagerForm
|
||||
end
|
||||
end
|
||||
object treePrivs: TLazVirtualStringTree
|
||||
AnchorSideTop.Control = tlbObjects
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 190
|
||||
Height = 172
|
||||
Top = 218
|
||||
Width = 494
|
||||
Width = 470
|
||||
Align = alClient
|
||||
Header.AutoSizeIndex = 0
|
||||
Header.Columns = <>
|
||||
@ -196,7 +200,7 @@ object UserManagerForm: TUserManagerForm
|
||||
Left = 0
|
||||
Height = 181
|
||||
Top = 0
|
||||
Width = 494
|
||||
Width = 470
|
||||
ActivePage = tabCredentials
|
||||
Align = alTop
|
||||
TabIndex = 0
|
||||
@ -204,55 +208,71 @@ object UserManagerForm: TUserManagerForm
|
||||
object tabCredentials: TTabSheet
|
||||
Caption = 'Credentials'
|
||||
ClientHeight = 148
|
||||
ClientWidth = 486
|
||||
ClientWidth = 462
|
||||
object lblUsername: TLabel
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 12
|
||||
Width = 73
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'User &name:'
|
||||
end
|
||||
object lblFromHost: TLabel
|
||||
AnchorSideTop.Control = editUsername
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 46
|
||||
Top = 43
|
||||
Width = 69
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'From &host:'
|
||||
FocusControl = editFromHost
|
||||
end
|
||||
object lblPassword: TLabel
|
||||
AnchorSideTop.Control = editFromHost
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 80
|
||||
Top = 77
|
||||
Width = 64
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Password:'
|
||||
FocusControl = editPassword
|
||||
end
|
||||
object lblRepeatPassword: TLabel
|
||||
AnchorSideTop.Control = editPassword
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 114
|
||||
Top = 111
|
||||
Width = 117
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Repeat password:'
|
||||
FocusControl = editRepeatPassword
|
||||
end
|
||||
object editRepeatPassword: TEdit
|
||||
AnchorSideTop.Control = editPassword
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 110
|
||||
Width = 260
|
||||
Top = 111
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
EchoMode = emPassword
|
||||
PasswordChar = '*'
|
||||
TabOrder = 3
|
||||
OnChange = Modification
|
||||
end
|
||||
object editPassword: TEditButton
|
||||
AnchorSideTop.Control = editFromHost
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 76
|
||||
Width = 260
|
||||
Top = 77
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonWidth = 29
|
||||
EchoMode = emPassword
|
||||
Images = MainForm.ImageListIcons8
|
||||
@ -265,11 +285,14 @@ object UserManagerForm: TUserManagerForm
|
||||
TabOrder = 2
|
||||
end
|
||||
object editFromHost: TEditButton
|
||||
AnchorSideTop.Control = editUsername
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 42
|
||||
Width = 260
|
||||
Top = 43
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ButtonWidth = 29
|
||||
Images = MainForm.ImageListIcons8
|
||||
ImageIndex = 75
|
||||
@ -284,8 +307,9 @@ object UserManagerForm: TUserManagerForm
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 9
|
||||
Width = 260
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 0
|
||||
OnChange = Modification
|
||||
end
|
||||
@ -293,160 +317,137 @@ object UserManagerForm: TUserManagerForm
|
||||
object tabLimitations: TTabSheet
|
||||
Caption = 'Limitations'
|
||||
ClientHeight = 148
|
||||
ClientWidth = 486
|
||||
ClientWidth = 462
|
||||
ImageIndex = 1
|
||||
object lblMaxQueries: TLabel
|
||||
AnchorSideTop.Control = editMaxQueries
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 12
|
||||
Top = 15
|
||||
Width = 113
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Queries per hour:'
|
||||
end
|
||||
object lblMaxUpdates: TLabel
|
||||
AnchorSideTop.Control = editMaxQueries
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 46
|
||||
Top = 43
|
||||
Width = 118
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Updates per hour:'
|
||||
end
|
||||
object lblMaxConnections: TLabel
|
||||
AnchorSideTop.Control = editMaxUpdates
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 80
|
||||
Top = 77
|
||||
Width = 144
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Connections per hour:'
|
||||
end
|
||||
object lblMaxUserConnections: TLabel
|
||||
AnchorSideTop.Control = editMaxConnections
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 114
|
||||
Top = 111
|
||||
Width = 175
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Simultaneous connections:'
|
||||
end
|
||||
object editMaxQueries: TEdit
|
||||
Left = 240
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 9
|
||||
Width = 220
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
NumbersOnly = True
|
||||
TabOrder = 0
|
||||
Text = '0'
|
||||
OnChange = Modification
|
||||
end
|
||||
object editMaxUpdates: TEdit
|
||||
Left = 240
|
||||
AnchorSideTop.Control = editMaxQueries
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 42
|
||||
Width = 220
|
||||
Top = 43
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
NumbersOnly = True
|
||||
TabOrder = 1
|
||||
Text = '0'
|
||||
OnChange = Modification
|
||||
end
|
||||
object editMaxConnections: TEdit
|
||||
AnchorSideTop.Control = editMaxUpdates
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 77
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
NumbersOnly = True
|
||||
TabOrder = 2
|
||||
Text = '0'
|
||||
OnChange = Modification
|
||||
end
|
||||
object editMaxConnections: TEdit
|
||||
Left = 240
|
||||
Height = 28
|
||||
Top = 76
|
||||
Width = 220
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
NumbersOnly = True
|
||||
TabOrder = 4
|
||||
Text = '0'
|
||||
OnChange = Modification
|
||||
end
|
||||
object editMaxUserConnections: TEdit
|
||||
Left = 240
|
||||
AnchorSideTop.Control = editMaxConnections
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 110
|
||||
Width = 220
|
||||
Top = 111
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
NumbersOnly = True
|
||||
TabOrder = 6
|
||||
TabOrder = 3
|
||||
Text = '0'
|
||||
OnChange = Modification
|
||||
end
|
||||
object udMaxQueries: TUpDown
|
||||
Left = 460
|
||||
Height = 28
|
||||
Top = 9
|
||||
Width = 21
|
||||
Anchors = [akTop, akRight]
|
||||
Associate = editMaxQueries
|
||||
Max = -1
|
||||
Min = 0
|
||||
OnClick = udMaxQueriesClick
|
||||
Position = 0
|
||||
TabOrder = 1
|
||||
Thousands = False
|
||||
end
|
||||
object udMaxUpdates: TUpDown
|
||||
Left = 460
|
||||
Height = 28
|
||||
Top = 42
|
||||
Width = 21
|
||||
Anchors = [akTop, akRight]
|
||||
Associate = editMaxUpdates
|
||||
Max = -1
|
||||
Min = 0
|
||||
Position = 0
|
||||
TabOrder = 3
|
||||
Thousands = False
|
||||
end
|
||||
object udMaxConnections: TUpDown
|
||||
Left = 460
|
||||
Height = 28
|
||||
Top = 76
|
||||
Width = 21
|
||||
Anchors = [akTop, akRight]
|
||||
Associate = editMaxConnections
|
||||
Max = -1
|
||||
Min = 0
|
||||
Position = 0
|
||||
TabOrder = 5
|
||||
Thousands = False
|
||||
end
|
||||
object udMaxUserConnections: TUpDown
|
||||
Left = 460
|
||||
Height = 28
|
||||
Top = 110
|
||||
Width = 21
|
||||
Anchors = [akTop, akRight]
|
||||
Associate = editMaxUserConnections
|
||||
Max = -1
|
||||
Min = 0
|
||||
Position = 0
|
||||
TabOrder = 7
|
||||
Thousands = False
|
||||
end
|
||||
end
|
||||
object tabSSL: TTabSheet
|
||||
Caption = 'SSL options'
|
||||
ClientHeight = 148
|
||||
ClientWidth = 486
|
||||
ClientWidth = 462
|
||||
ImageIndex = 2
|
||||
object lblCipher: TLabel
|
||||
AnchorSideTop.Control = comboSSL
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 45
|
||||
Top = 42
|
||||
Width = 46
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Cipher:'
|
||||
FocusControl = editCipher
|
||||
end
|
||||
object lblIssuer: TLabel
|
||||
AnchorSideTop.Control = editCipher
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 78
|
||||
Top = 76
|
||||
Width = 40
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Issuer:'
|
||||
FocusControl = editIssuer
|
||||
end
|
||||
object lblSubject: TLabel
|
||||
AnchorSideTop.Control = editIssuer
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 4
|
||||
Height = 20
|
||||
Top = 111
|
||||
Top = 110
|
||||
Width = 52
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Subject:'
|
||||
FocusControl = editSubject
|
||||
end
|
||||
@ -455,34 +456,44 @@ object UserManagerForm: TUserManagerForm
|
||||
Height = 20
|
||||
Top = 11
|
||||
Width = 81
|
||||
BorderSpacing.Around = 6
|
||||
Caption = '&Require SSL:'
|
||||
end
|
||||
object editCipher: TEdit
|
||||
AnchorSideTop.Control = comboSSL
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 41
|
||||
Width = 260
|
||||
Top = 42
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 1
|
||||
Text = 'editCipher'
|
||||
OnChange = Modification
|
||||
end
|
||||
object editIssuer: TEdit
|
||||
AnchorSideTop.Control = editCipher
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 74
|
||||
Width = 260
|
||||
Top = 76
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 2
|
||||
Text = 'editIssuer'
|
||||
OnChange = Modification
|
||||
end
|
||||
object editSubject: TEdit
|
||||
AnchorSideTop.Control = editIssuer
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 108
|
||||
Width = 260
|
||||
Top = 110
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
TabOrder = 3
|
||||
Text = 'editSubject'
|
||||
OnChange = Modification
|
||||
@ -491,8 +502,9 @@ object UserManagerForm: TUserManagerForm
|
||||
Left = 220
|
||||
Height = 28
|
||||
Top = 8
|
||||
Width = 260
|
||||
Width = 236
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
BorderSpacing.Around = 6
|
||||
ItemHeight = 20
|
||||
Items.Strings = (
|
||||
'No SSL or X509 requirements'
|
||||
@ -508,17 +520,18 @@ object UserManagerForm: TUserManagerForm
|
||||
end
|
||||
end
|
||||
object pnlBottom: TPanel
|
||||
Left = 0
|
||||
Left = 6
|
||||
Height = 47
|
||||
Top = 408
|
||||
Width = 784
|
||||
Top = 402
|
||||
Width = 772
|
||||
Align = alBottom
|
||||
BorderSpacing.Around = 6
|
||||
ClientHeight = 47
|
||||
ClientWidth = 784
|
||||
ClientWidth = 772
|
||||
ParentBackground = False
|
||||
TabOrder = 3
|
||||
object btnDiscard: TSpeedButton
|
||||
Left = 529
|
||||
Left = 517
|
||||
Height = 31
|
||||
Top = 8
|
||||
Width = 119
|
||||
@ -529,7 +542,7 @@ object UserManagerForm: TUserManagerForm
|
||||
OnClick = btnDiscardClick
|
||||
end
|
||||
object btnSave: TSpeedButton
|
||||
Left = 403
|
||||
Left = 391
|
||||
Height = 31
|
||||
Top = 8
|
||||
Width = 119
|
||||
@ -540,7 +553,7 @@ object UserManagerForm: TUserManagerForm
|
||||
OnClick = btnSaveClick
|
||||
end
|
||||
object btnCancel: TSpeedButton
|
||||
Left = 655
|
||||
Left = 643
|
||||
Height = 31
|
||||
Top = 8
|
||||
Width = 119
|
||||
@ -554,7 +567,7 @@ object UserManagerForm: TUserManagerForm
|
||||
Left = 10
|
||||
Height = 30
|
||||
Top = 8
|
||||
Width = 264
|
||||
Width = 252
|
||||
Anchors = [akTop, akLeft, akRight]
|
||||
AutoSize = False
|
||||
Layout = tlCenter
|
||||
|
@ -101,10 +101,6 @@ type
|
||||
editMaxUpdates: TEdit;
|
||||
editMaxConnections: TEdit;
|
||||
editMaxUserConnections: TEdit;
|
||||
udMaxQueries: TUpDown;
|
||||
udMaxUpdates: TUpDown;
|
||||
udMaxConnections: TUpDown;
|
||||
udMaxUserConnections: TUpDown;
|
||||
tabSSL: TTabSheet;
|
||||
lblCipher: TLabel;
|
||||
editCipher: TEdit;
|
||||
@ -568,10 +564,10 @@ begin
|
||||
editPassword.Clear;
|
||||
editPassword.TextHint := '';
|
||||
editRepeatPassword.Clear;
|
||||
udMaxQueries.Position := 0;
|
||||
udMaxUpdates.Position := 0;
|
||||
udMaxConnections.Position := 0;
|
||||
udMaxUserConnections.Position := 0;
|
||||
editMaxQueries.Text := '0';
|
||||
editMaxUpdates.Text := '0';
|
||||
editMaxConnections.Text := '0';
|
||||
editMaxUserConnections.Text := '0';
|
||||
comboSSL.ItemIndex := 0;
|
||||
comboSSL.OnChange(Sender);
|
||||
editCipher.Clear;
|
||||
@ -748,10 +744,10 @@ begin
|
||||
rxTemp.Expression := '\bMAX_USER_CONNECTIONS\s+(\d+)\b';
|
||||
if rxTemp.Exec(WithClause) then
|
||||
User.MaxUserConnections := MakeInt(rxTemp.Match[1]);
|
||||
udMaxQueries.Position := User.MaxQueries;
|
||||
udMaxUpdates.Position := User.MaxUpdates;
|
||||
udMaxConnections.Position := User.MaxConnections;
|
||||
udMaxUserConnections.Position := User.MaxUserConnections;
|
||||
editMaxQueries.Text := User.MaxQueries.ToString;
|
||||
editMaxUpdates.Text := User.MaxUpdates.ToString;
|
||||
editMaxConnections.Text := User.MaxConnections.ToString;
|
||||
editMaxUserConnections.Text := User.MaxUserConnections.ToString;
|
||||
end;
|
||||
|
||||
if (P.OrgPrivs.Count = 0) and (P.DBObj.NodeType = lntTable) then
|
||||
@ -818,16 +814,12 @@ begin
|
||||
|
||||
tabLimitations.Enabled := UserSelected;
|
||||
editMaxQueries.Enabled := lblMaxQueries.Enabled;
|
||||
udMaxQueries.Enabled := lblMaxQueries.Enabled;
|
||||
lblMaxUpdates.Enabled := lblMaxQueries.Enabled;
|
||||
editMaxUpdates.Enabled := lblMaxQueries.Enabled;
|
||||
udMaxUpdates.Enabled := lblMaxQueries.Enabled;
|
||||
lblMaxConnections.Enabled := lblMaxQueries.Enabled;
|
||||
editMaxConnections.Enabled := lblMaxQueries.Enabled;
|
||||
udMaxConnections.Enabled := lblMaxQueries.Enabled;
|
||||
lblMaxUserConnections.Enabled := UserSelected and (FConnection.ServerVersionInt >= 50003);
|
||||
editMaxUserConnections.Enabled := lblMaxUserConnections.Enabled;
|
||||
udMaxUserConnections.Enabled := lblMaxUserConnections.Enabled;
|
||||
|
||||
tabSSL.Enabled := UserSelected;
|
||||
comboSSL.Enabled := UserSelected;
|
||||
@ -1341,14 +1333,14 @@ begin
|
||||
WithClauses.Add('GRANT OPTION');
|
||||
if P.DBObj.NodeType = lntNone then begin
|
||||
// Apply resource limits only to global privilege
|
||||
if udMaxQueries.Position <> FocusedUser.MaxQueries then
|
||||
WithClauses.Add('MAX_QUERIES_PER_HOUR '+IntToStr(udMaxQueries.Position));
|
||||
if udMaxUpdates.Position <> FocusedUser.MaxUpdates then
|
||||
WithClauses.Add('MAX_UPDATES_PER_HOUR '+IntToStr(udMaxUpdates.Position));
|
||||
if udMaxConnections.Position <> FocusedUser.MaxConnections then
|
||||
WithClauses.Add('MAX_CONNECTIONS_PER_HOUR '+IntToStr(udMaxConnections.Position));
|
||||
if udMaxUserConnections.Position <> FocusedUser.MaxUserConnections then
|
||||
WithClauses.Add('MAX_USER_CONNECTIONS '+IntToStr(udMaxUserConnections.Position));
|
||||
if editMaxQueries.Text <> FocusedUser.MaxQueries.ToString then
|
||||
WithClauses.Add('MAX_QUERIES_PER_HOUR '+editMaxQueries.Text);
|
||||
if editMaxUpdates.Text <> FocusedUser.MaxUpdates.ToString then
|
||||
WithClauses.Add('MAX_UPDATES_PER_HOUR '+editMaxUpdates.Text);
|
||||
if editMaxConnections.Text <> FocusedUser.MaxConnections.ToString then
|
||||
WithClauses.Add('MAX_CONNECTIONS_PER_HOUR '+editMaxConnections.Text);
|
||||
if editMaxUserConnections.Text <> FocusedUser.MaxUserConnections.ToString then
|
||||
WithClauses.Add('MAX_USER_CONNECTIONS '+editMaxUserConnections.Text);
|
||||
end;
|
||||
if WithClauses.Count > 0 then
|
||||
Grant := Grant + ' WITH ' + Implode(' ', WithClauses);
|
||||
|
Reference in New Issue
Block a user