SqlDb: Added metadata tab to SQLStringsPropertyEditorDlg, issue #21815, patch from Ludo Brands

git-svn-id: trunk@37319 -
This commit is contained in:
juha 2012-05-18 16:53:53 +00:00
parent 692d98a01c
commit 416107fbbc
11 changed files with 529 additions and 169 deletions

View File

@ -9,6 +9,26 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: sqlstringspropertyeditordlg.smetacolumns
msgid "Columns"
msgstr ""
#: sqlstringspropertyeditordlg.smetaprocedures
msgid "Procedures"
msgstr ""
#: sqlstringspropertyeditordlg.smetasystables
msgid "SysTables"
msgstr ""
#: sqlstringspropertyeditordlg.smetatabcaption
msgid "Metadata"
msgstr ""
#: sqlstringspropertyeditordlg.smetatables
msgid "Tables"
msgstr ""
#: sqlstringspropertyeditordlg.sresulttabcaption #: sqlstringspropertyeditordlg.sresulttabcaption
msgid "Results" msgid "Results"
msgstr "Ergebnisse" msgstr "Ergebnisse"

View File

@ -1,4 +1,3 @@
Massimo Soricetti <notturno@quipo.it>, 2011.
msgid "" msgid ""
msgstr "" msgstr ""
"PO-Revision-Date: 2011-04-20 17:49+0200\n" "PO-Revision-Date: 2011-04-20 17:49+0200\n"
@ -11,6 +10,26 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Virtaal 0.5.1\n" "X-Generator: Virtaal 0.5.1\n"
#: sqlstringspropertyeditordlg.smetacolumns
msgid "Columns"
msgstr ""
#: sqlstringspropertyeditordlg.smetaprocedures
msgid "Procedures"
msgstr ""
#: sqlstringspropertyeditordlg.smetasystables
msgid "SysTables"
msgstr ""
#: sqlstringspropertyeditordlg.smetatabcaption
msgid "Metadata"
msgstr ""
#: sqlstringspropertyeditordlg.smetatables
msgid "Tables"
msgstr ""
#: sqlstringspropertyeditordlg.sresulttabcaption #: sqlstringspropertyeditordlg.sresulttabcaption
msgid "Results" msgid "Results"
msgstr "Risultati" msgstr "Risultati"

View File

@ -10,6 +10,26 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
#: sqlstringspropertyeditordlg.smetacolumns
msgid "Columns"
msgstr ""
#: sqlstringspropertyeditordlg.smetaprocedures
msgid "Procedures"
msgstr ""
#: sqlstringspropertyeditordlg.smetasystables
msgid "SysTables"
msgstr ""
#: sqlstringspropertyeditordlg.smetatabcaption
msgid "Metadata"
msgstr ""
#: sqlstringspropertyeditordlg.smetatables
msgid "Tables"
msgstr ""
#: sqlstringspropertyeditordlg.sresulttabcaption #: sqlstringspropertyeditordlg.sresulttabcaption
msgid "Results" msgid "Results"
msgstr "Rezultatai" msgstr "Rezultatai"

View File

@ -1,6 +1,26 @@
msgid "" msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8" msgstr "Content-Type: text/plain; charset=UTF-8"
#: sqlstringspropertyeditordlg.smetacolumns
msgid "Columns"
msgstr ""
#: sqlstringspropertyeditordlg.smetaprocedures
msgid "Procedures"
msgstr ""
#: sqlstringspropertyeditordlg.smetasystables
msgid "SysTables"
msgstr ""
#: sqlstringspropertyeditordlg.smetatabcaption
msgid "Metadata"
msgstr ""
#: sqlstringspropertyeditordlg.smetatables
msgid "Tables"
msgstr ""
#: sqlstringspropertyeditordlg.sresulttabcaption #: sqlstringspropertyeditordlg.sresulttabcaption
msgid "Results" msgid "Results"
msgstr "" msgstr ""

View File

@ -9,6 +9,26 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: sqlstringspropertyeditordlg.smetacolumns
msgid "Columns"
msgstr ""
#: sqlstringspropertyeditordlg.smetaprocedures
msgid "Procedures"
msgstr ""
#: sqlstringspropertyeditordlg.smetasystables
msgid "SysTables"
msgstr ""
#: sqlstringspropertyeditordlg.smetatabcaption
msgid "Metadata"
msgstr ""
#: sqlstringspropertyeditordlg.smetatables
msgid "Tables"
msgstr ""
#: sqlstringspropertyeditordlg.sresulttabcaption #: sqlstringspropertyeditordlg.sresulttabcaption
msgid "Results" msgid "Results"
msgstr "Resultados" msgstr "Resultados"

View File

@ -9,6 +9,26 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: sqlstringspropertyeditordlg.smetacolumns
msgid "Columns"
msgstr ""
#: sqlstringspropertyeditordlg.smetaprocedures
msgid "Procedures"
msgstr ""
#: sqlstringspropertyeditordlg.smetasystables
msgid "SysTables"
msgstr ""
#: sqlstringspropertyeditordlg.smetatabcaption
msgid "Metadata"
msgstr ""
#: sqlstringspropertyeditordlg.smetatables
msgid "Tables"
msgstr ""
#: sqlstringspropertyeditordlg.sresulttabcaption #: sqlstringspropertyeditordlg.sresulttabcaption
msgid "Results" msgid "Results"
msgstr "Resultados" msgstr "Resultados"

View File

@ -9,6 +9,26 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: sqlstringspropertyeditordlg.smetacolumns
msgid "Columns"
msgstr ""
#: sqlstringspropertyeditordlg.smetaprocedures
msgid "Procedures"
msgstr ""
#: sqlstringspropertyeditordlg.smetasystables
msgid "SysTables"
msgstr ""
#: sqlstringspropertyeditordlg.smetatabcaption
msgid "Metadata"
msgstr ""
#: sqlstringspropertyeditordlg.smetatables
msgid "Tables"
msgstr ""
#: sqlstringspropertyeditordlg.sresulttabcaption #: sqlstringspropertyeditordlg.sresulttabcaption
msgid "Results" msgid "Results"
msgstr "Результаты" msgstr "Результаты"

View File

@ -9,6 +9,26 @@ msgstr ""
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: sqlstringspropertyeditordlg.smetacolumns
msgid "Columns"
msgstr ""
#: sqlstringspropertyeditordlg.smetaprocedures
msgid "Procedures"
msgstr ""
#: sqlstringspropertyeditordlg.smetasystables
msgid "SysTables"
msgstr ""
#: sqlstringspropertyeditordlg.smetatabcaption
msgid "Metadata"
msgstr ""
#: sqlstringspropertyeditordlg.smetatables
msgid "Tables"
msgstr ""
#: sqlstringspropertyeditordlg.sresulttabcaption #: sqlstringspropertyeditordlg.sresulttabcaption
msgid "Results" msgid "Results"
msgstr "Результати" msgstr "Результати"

View File

@ -12,6 +12,26 @@ msgstr ""
"X-Poedit-Country: CHINA\n" "X-Poedit-Country: CHINA\n"
"X-Poedit-SourceCharset: utf-8\n" "X-Poedit-SourceCharset: utf-8\n"
#: sqlstringspropertyeditordlg.smetacolumns
msgid "Columns"
msgstr ""
#: sqlstringspropertyeditordlg.smetaprocedures
msgid "Procedures"
msgstr ""
#: sqlstringspropertyeditordlg.smetasystables
msgid "SysTables"
msgstr ""
#: sqlstringspropertyeditordlg.smetatabcaption
msgid "Metadata"
msgstr ""
#: sqlstringspropertyeditordlg.smetatables
msgid "Tables"
msgstr ""
#: sqlstringspropertyeditordlg.sresulttabcaption #: sqlstringspropertyeditordlg.sresulttabcaption
msgid "Results" msgid "Results"
msgstr "返回值" msgstr "返回值"

View File

@ -1,7 +1,7 @@
object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
Left = 527 Left = 422
Height = 357 Height = 357
Top = 248 Top = 223
Width = 494 Width = 494
ActiveControl = PageControl ActiveControl = PageControl
Caption = 'SQLStringsPropertyEditorDlg' Caption = 'SQLStringsPropertyEditorDlg'
@ -9,17 +9,21 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
ClientWidth = 494 ClientWidth = 494
OnShow = FormShow OnShow = FormShow
Position = poScreenCenter Position = poScreenCenter
LCLVersion = '0.9.29' LCLVersion = '1.1'
object ButtonsPanel: TButtonPanel object ButtonsPanel: TButtonPanel
Left = 6 Left = 6
Height = 35 Height = 34
Top = 316 Top = 317
Width = 482 Width = 482
OKButton.Name = 'OKButton' OKButton.Name = 'OKButton'
OKButton.DefaultCaption = True
HelpButton.Name = 'HelpButton' HelpButton.Name = 'HelpButton'
HelpButton.DefaultCaption = True
CloseButton.Name = 'CloseButton' CloseButton.Name = 'CloseButton'
CloseButton.DefaultCaption = True
CloseButton.Enabled = False CloseButton.Enabled = False
CancelButton.Name = 'CancelButton' CancelButton.Name = 'CancelButton'
CancelButton.DefaultCaption = True
TabOrder = 0 TabOrder = 0
ShowButtons = [pbOK, pbCancel, pbHelp] ShowButtons = [pbOK, pbCancel, pbHelp]
end end
@ -51,19 +55,19 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
object DividerToolButton: TToolButton object DividerToolButton: TToolButton
Left = 57 Left = 57
Top = 2 Top = 2
Width = 4 Width = 5
Caption = 'DividerToolButton' Caption = 'DividerToolButton'
Style = tbsDivider Style = tbsDivider
end end
object ExecuteToolButton: TToolButton object ExecuteToolButton: TToolButton
Left = 61 Left = 62
Top = 2 Top = 2
Caption = 'ExecuteToolButton' Caption = 'ExecuteToolButton'
ImageIndex = 2 ImageIndex = 2
OnClick = ExecuteToolButtonClick OnClick = ExecuteToolButtonClick
end end
object TBCheck: TToolButton object TBCheck: TToolButton
Left = 89 Left = 90
Top = 2 Top = 2
Caption = 'TBCheck' Caption = 'TBCheck'
ImageIndex = 3 ImageIndex = 3
@ -72,7 +76,7 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
end end
object PageControl: TPageControl object PageControl: TPageControl
Left = 0 Left = 0
Height = 280 Height = 281
Top = 30 Top = 30
Width = 494 Width = 494
ActivePage = EditorTabSheet ActivePage = EditorTabSheet
@ -80,13 +84,13 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
TabIndex = 0 TabIndex = 0
TabOrder = 2 TabOrder = 2
object EditorTabSheet: TTabSheet object EditorTabSheet: TTabSheet
ClientHeight = 249 ClientHeight = 255
ClientWidth = 490 ClientWidth = 486
inline SQLEditor: TSynEdit inline SQLEditor: TSynEdit
Left = 0 Left = 0
Height = 249 Height = 255
Top = 0 Top = 0
Width = 490 Width = 486
Align = alClient Align = alClient
Font.Height = -16 Font.Height = -16
Font.Name = '-misc-dejavu sans mono-*-*-*-*-*-*-*-*-*-*-iso10646-1' Font.Name = '-misc-dejavu sans mono-*-*-*-*-*-*-*-*-*-*-iso10646-1'
@ -96,53 +100,28 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
ParentFont = False ParentFont = False
PopupMenu = PMSQL PopupMenu = PMSQL
TabOrder = 0 TabOrder = 0
OnMouseDown = SQLEditorMouseDown
Gutter.Width = 61 Gutter.Width = 61
Gutter.MouseActions = < Gutter.MouseActions = <
item item
Shift = []
ShiftMask = []
Button = mbLeft
ClickCount = ccAny ClickCount = ccAny
ClickDir = cdDown ClickDir = cdDown
Command = 13 Command = emcOnMainGutterClick
MoveCaret = False
Option = 0
Priority = 0
end end
item item
Shift = []
ShiftMask = []
Button = mbRight Button = mbRight
ClickCount = ccSingle Command = emcContextMenu
ClickDir = cdUp
Command = 12
MoveCaret = False
Option = 0
Priority = 0
end> end>
RightGutter.Width = 0 RightGutter.Width = 0
RightGutter.MouseActions = < RightGutter.MouseActions = <
item item
Shift = []
ShiftMask = []
Button = mbLeft
ClickCount = ccAny ClickCount = ccAny
ClickDir = cdDown ClickDir = cdDown
Command = 13 Command = emcOnMainGutterClick
MoveCaret = False
Option = 0
Priority = 0
end end
item item
Shift = []
ShiftMask = []
Button = mbRight Button = mbRight
ClickCount = ccSingle Command = emcContextMenu
ClickDir = cdUp
Command = 12
MoveCaret = False
Option = 0
Priority = 0
end> end>
Highlighter = SQLHighlighter Highlighter = SQLHighlighter
Keystrokes = < Keystrokes = <
@ -468,131 +447,88 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
end> end>
MouseActions = < MouseActions = <
item item
Shift = []
ShiftMask = [ssShift, ssAlt] ShiftMask = [ssShift, ssAlt]
Button = mbLeft
ClickCount = ccSingle
ClickDir = cdDown ClickDir = cdDown
Command = 1 Command = emcStartSelections
MoveCaret = True MoveCaret = True
Option = 0
Priority = 0
end end
item item
Shift = [ssShift] Shift = [ssShift]
ShiftMask = [ssShift, ssAlt] ShiftMask = [ssShift, ssAlt]
Button = mbLeft
ClickCount = ccSingle
ClickDir = cdDown ClickDir = cdDown
Command = 1 Command = emcStartSelections
MoveCaret = True MoveCaret = True
Option = 1 Option = 1
Priority = 0
end end
item item
Shift = [ssAlt] Shift = [ssAlt]
ShiftMask = [ssShift, ssAlt] ShiftMask = [ssShift, ssAlt]
Button = mbLeft
ClickCount = ccSingle
ClickDir = cdDown ClickDir = cdDown
Command = 3 Command = emcStartColumnSelections
MoveCaret = True MoveCaret = True
Option = 0
Priority = 0
end end
item item
Shift = [ssShift, ssAlt] Shift = [ssShift, ssAlt]
ShiftMask = [ssShift, ssAlt] ShiftMask = [ssShift, ssAlt]
Button = mbLeft
ClickCount = ccSingle
ClickDir = cdDown ClickDir = cdDown
Command = 3 Command = emcStartColumnSelections
MoveCaret = True MoveCaret = True
Option = 1 Option = 1
Priority = 0
end end
item item
Shift = []
ShiftMask = []
Button = mbRight Button = mbRight
ClickCount = ccSingle Command = emcContextMenu
ClickDir = cdUp
Command = 12
MoveCaret = False
Option = 0
Priority = 0
end end
item item
Shift = []
ShiftMask = []
Button = mbLeft
ClickCount = ccDouble ClickCount = ccDouble
ClickDir = cdDown ClickDir = cdDown
Command = 6 Command = emcSelectWord
MoveCaret = True MoveCaret = True
Option = 0
Priority = 0
end end
item item
Shift = []
ShiftMask = []
Button = mbLeft
ClickCount = ccTriple ClickCount = ccTriple
ClickDir = cdDown ClickDir = cdDown
Command = 7 Command = emcSelectLine
MoveCaret = True MoveCaret = True
Option = 0
Priority = 0
end end
item item
Shift = []
ShiftMask = []
Button = mbLeft
ClickCount = ccQuad ClickCount = ccQuad
ClickDir = cdDown ClickDir = cdDown
Command = 8 Command = emcSelectPara
MoveCaret = True MoveCaret = True
Option = 0
Priority = 0
end end
item item
Shift = []
ShiftMask = []
Button = mbMiddle Button = mbMiddle
ClickCount = ccSingle
ClickDir = cdDown ClickDir = cdDown
Command = 10 Command = emcPasteSelection
MoveCaret = True MoveCaret = True
Option = 0
Priority = 0
end end
item item
Shift = [ssCtrl] Shift = [ssCtrl]
ShiftMask = [ssShift, ssAlt, ssCtrl] ShiftMask = [ssShift, ssAlt, ssCtrl]
Button = mbLeft Command = emcMouseLink
ClickCount = ccSingle
ClickDir = cdUp
Command = 11
MoveCaret = False
Option = 0
Priority = 0
end> end>
MouseSelActions = < MouseSelActions = <
item item
Shift = []
ShiftMask = []
Button = mbLeft
ClickCount = ccSingle
ClickDir = cdDown ClickDir = cdDown
Command = 9 Command = emcStartDragMove
MoveCaret = False
Option = 0
Priority = 0
end> end>
VisibleSpecialChars = [vscSpace, vscTabAtLast]
BracketHighlightStyle = sbhsBoth BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
inline SynGutterPartList1: TSynGutterPartList inline SynGutterPartList1: TSynGutterPartList
object SynGutterMarks1: TSynGutterMarks object SynGutterMarks1: TSynGutterMarks
Width = 24 Width = 24
MouseActions = <>
end end
object SynGutterLineNumber1: TSynGutterLineNumber object SynGutterLineNumber1: TSynGutterLineNumber
Width = 21 Width = 21
@ -606,35 +542,26 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
end end
object SynGutterChanges1: TSynGutterChanges object SynGutterChanges1: TSynGutterChanges
Width = 4 Width = 4
MouseActions = <>
ModifiedColor = 59900 ModifiedColor = 59900
SavedColor = clGreen SavedColor = clGreen
end end
object SynGutterSeparator1: TSynGutterSeparator object SynGutterSeparator1: TSynGutterSeparator
Width = 2 Width = 2
MouseActions = <>
end end
object SynGutterCodeFolding1: TSynGutterCodeFolding object SynGutterCodeFolding1: TSynGutterCodeFolding
MouseActions = < MouseActions = <
item item
Shift = []
ShiftMask = []
Button = mbRight Button = mbRight
ClickCount = ccSingle Command = emcCodeFoldContextMenu
ClickDir = cdUp
Command = 16
MoveCaret = False
Option = 0
Priority = 0
end end
item item
Shift = []
ShiftMask = [ssShift] ShiftMask = [ssShift]
Button = mbMiddle Button = mbMiddle
ClickCount = ccAny ClickCount = ccAny
ClickDir = cdDown ClickDir = cdDown
Command = 14 Command = emcCodeFoldCollaps
MoveCaret = False
Option = 0
Priority = 0
end end
item item
Shift = [ssShift] Shift = [ssShift]
@ -642,75 +569,52 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
Button = mbMiddle Button = mbMiddle
ClickCount = ccAny ClickCount = ccAny
ClickDir = cdDown ClickDir = cdDown
Command = 14 Command = emcCodeFoldCollaps
MoveCaret = False
Option = 1 Option = 1
Priority = 0
end end
item item
Shift = []
ShiftMask = []
Button = mbLeft
ClickCount = ccAny ClickCount = ccAny
ClickDir = cdDown ClickDir = cdDown
Command = 0 Command = emcNone
MoveCaret = False
Option = 0
Priority = 0
end> end>
MarkupInfo.Background = clNone MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray MarkupInfo.Foreground = clGray
MouseActionsExpanded = < MouseActionsExpanded = <
item item
Shift = []
ShiftMask = []
Button = mbLeft
ClickCount = ccAny ClickCount = ccAny
ClickDir = cdDown ClickDir = cdDown
Command = 14 Command = emcCodeFoldCollaps
MoveCaret = False
Option = 0
Priority = 0
end> end>
MouseActionsCollapsed = < MouseActionsCollapsed = <
item item
Shift = [ssCtrl] Shift = [ssCtrl]
ShiftMask = [ssCtrl] ShiftMask = [ssCtrl]
Button = mbLeft
ClickCount = ccAny ClickCount = ccAny
ClickDir = cdDown ClickDir = cdDown
Command = 15 Command = emcCodeFoldExpand
MoveCaret = False
Option = 0
Priority = 0
end end
item item
Shift = []
ShiftMask = [ssCtrl] ShiftMask = [ssCtrl]
Button = mbLeft
ClickCount = ccAny ClickCount = ccAny
ClickDir = cdDown ClickDir = cdDown
Command = 15 Command = emcCodeFoldExpand
MoveCaret = False
Option = 1 Option = 1
Priority = 0
end> end>
end end
end end
inline SynRightGutterPartList1: TSynRightGutterPartList
end
end end
end end
object ResultTabSheet: TTabSheet object ResultTabSheet: TTabSheet
ClientHeight = 249 ClientHeight = 255
ClientWidth = 490 ClientWidth = 486
object ResultDBGrid: TDBGrid object ResultDBGrid: TDBGrid
Left = 0 Left = 0
Height = 285 Height = 255
Top = 0 Top = 0
Width = 494 Width = 486
Align = alClient Align = alClient
AutoEdit = False AutoEdit = False
Color = clWindow
Columns = <> Columns = <>
DataSource = SQLDataSource DataSource = SQLDataSource
Options = [dgTitles, dgIndicator, dgColumnResize, dgColumnMove, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgAlwaysShowSelection, dgConfirmDelete] Options = [dgTitles, dgIndicator, dgColumnResize, dgColumnMove, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgAlwaysShowSelection, dgConfirmDelete]
@ -718,12 +622,75 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
TabOrder = 0 TabOrder = 0
end end
end end
object MetaTabSheet: TTabSheet
ClientHeight = 255
ClientWidth = 486
object CbxMetaData: TComboBox
Left = 8
Height = 21
Hint = 'Select the type of metadata to retrieve.'
Top = 9
Width = 132
ItemHeight = 13
ParentShowHint = False
ShowHint = True
TabOrder = 0
end
object EdtObject: TEdit
Left = 196
Height = 21
Hint = 'Specify the object (table) for which you want to view the metadata.'
Top = 9
Width = 104
ParentShowHint = False
ShowHint = True
TabOrder = 1
end
object Label1: TLabel
Left = 148
Height = 14
Top = 12
Width = 37
Caption = 'Object:'
ParentColor = False
end
object MetaDBGrid: TDBGrid
Left = 0
Height = 219
Top = 36
Width = 486
Align = alBottom
Anchors = [akTop, akLeft, akRight, akBottom]
Color = clWindow
Columns = <>
DataSource = SQLDataSource1
PopupMenu = PMMeta
ReadOnly = True
TabOrder = 2
OnDblClick = MetaDBGridDblClick
end
end
end end
object SQLHighlighter: TSynSQLSyn object SQLHighlighter: TSynSQLSyn
DefaultFilter = 'SQL Files (*.sql)|*.sql' DefaultFilter = 'SQL Files (*.sql)|*.sql'
Enabled = False Enabled = False
CommentAttri.FrameEdges = sfeAround
DataTypeAttri.FrameEdges = sfeAround
DefaultPackageAttri.FrameEdges = sfeAround
ExceptionAttri.FrameEdges = sfeAround
FunctionAttri.FrameEdges = sfeAround
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.FrameEdges = sfeAround
PLSQLAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
SQLPlusAttri.FrameEdges = sfeAround
StringAttri.FrameEdges = sfeAround
SymbolAttri.FrameEdges = sfeAround
TableNameAttri.FrameEdges = sfeAround
VariableAttri.FrameEdges = sfeAround
SQLDialect = sqlInterbase6 SQLDialect = sqlInterbase6
left = 124 left = 120
top = 156 top = 156
end end
object OpenDialog: TOpenDialog object OpenDialog: TOpenDialog
@ -737,7 +704,7 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
top = 157 top = 157
end end
object SQLQuery: TSQLQuery object SQLQuery: TSQLQuery
ReadOnly = False FieldDefs = <>
Params = <> Params = <>
left = 220 left = 220
top = 157 top = 157
@ -920,11 +887,83 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
top = 101 top = 101
object MICheck: TMenuItem object MICheck: TMenuItem
Caption = 'Check syntax' Caption = 'Check syntax'
Bitmap.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000052000000FF000000FF0000
001A000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000FF9DC59FFF92BE93FF0000
00FF000000220000000000000000000000000000000000000000000000000000
000000000000000000000000000000000052000000FFB8D6B8FF59915BFF5991
5BFF000000FF0000001A00000000000000000000000000000000000000000000
0000000000000000000000000000000000FFA6CBA8FF6C9D6DFF000000FF0000
00FF59915BFF000000FF00000022000000000000000000000000000000000000
0000000000000000000000000071132C13FF76A677FF000000FF000000220000
0000000000FF59915BFF000000FF0000001A0000000000000000000000000000
00000000000000000000000000FF88BA8AFF000000FF0000001A000000000000
000000000000000000FF59915BFF000000FF0000001A00000000000000000000
00000000000000000000000000FF000000FF0000002200000000000000000000
00000000000000000000000000FF59915BFF000000FF0000001A000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000FF59915BFF000000FF000000FF0000
00FF0000000000000000000000FF00000000000000FF000000FF000000FF0000
00FF00000042000000000000000000000000000000FF00000074000000FF0000
00FF0000000000000000000000FF00000000000000FF000000FF000000000000
0000000000FF0000000000000000000000000000000000000000000000FF0000
00FF000000FF000000FF000000FF00000000000000FF000000FF000000000000
0000000000FF0000000000000000000000000000000000000000000000FF0000
00FF0000000000000000000000FF00000000000000FF000000FF000000FF0000
00FF000000420000000000000000000000000000000000000000000000FF0000
00FF0000000000000000000000FF00000000000000FF000000FF000000000000
0000000000FF0000000000000000000000000000000000000000000000420000
00FF000000FF000000FF0000005400000000000000FF000000FF000000FF0000
00FF000000420000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
ImageIndex = 3 ImageIndex = 3
OnClick = TBCheckClick OnClick = TBCheckClick
end end
object MICleanup: TMenuItem object MICleanup: TMenuItem
Caption = 'Clean-up Delphi code' Caption = 'Clean-up Delphi code'
Bitmap.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00008B9C1F008C9DED008D9EEC008D
9E9E008B9C21FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00008B9C13008D9EE24FC3D2FD5BD3E1FF30B5
C6FA0890A1F6008D9FA9008B9C14FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00008E9FC536B5C5FA5FD8E7FF26CADFFF4ED4
E5FF6DD9E7FF32B4C5FB008D9EE6008B9C26FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00008B9C431A9BABF66CDAE8FF10C5DCFF03C2DAFF03C2
DAFF15C6DCFF5BD7E7FF56C8D6FE058FA0F1008B9C3FFFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00018EA0D45ECFDDFF46DAEDFF18D0E7FF11CBE3FF07C4
DCFF03C2DAFF03C2DAFF4CD3E4FF58CDDCFF048E9FF4008B9C1CFFFFFF00FFFF
FF00FFFFFF00008B9C1A1194A5F78BEDFBFF3CE5FCFF37E4FBFF2FDEF6FF23D7
EEFF14CDE5FF04C3DBFF03C2DAFF56D6E6FF33B6C6FB008E9FA8FFFFFF00FFFF
FF00FFFFFF00007F9C5F2FB0C0F58AEFFDFF5FEAFDFF61EBFDFF52E9FDFF3CE6
FDFF2ADBF3FF18D0E7FF10C6DCFF49D2E4FF67D4E2FF018D9FE9FFFFFF00FFFF
FF00008B9C070024A1D71342ADFC84EAFBFF6BECFDFF84EFFDFF6DECFDFF52E9
FDFF44E5FBFF65E3F3FF77DDEBFF49C1CFFE1B9EAEF3008C9DEAFFFFFF00008B
9C5F008D9EEB29A5BBF6284ABBFF1D38B8FF61D8F6FF63EAFDFF6CEBFDFF7DEE
FDFF88EAF8FF45BECDFA058F9FF7008E9FA3008B9C40008B9C02FFFFFF00008B
9C5A018D9EF64FC8D8FF68DCECFF336DC8FF0D1BABFF62B1D7FF72DCEAFF43BD
CCF70990A2F6018E9F9F008B9C1BFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF000064878100889CFE41BDCDFF77DEEBFF1769B0F70036A0E4018FA0D2008C
9D77008B9C15FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000487802004A
7B95014E80F40B76B2FF0188A1FF32AEBEFE1DA0B1F2008B9C3DFFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000049796F0352
86F40F7ABCFF107DC1FF015284F200859ACE008B9CFF008B9C29FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00004A7BED0C72
B2FF107DC1FF0A6BA9FF004A7BDA00698A02008B9C82008B9C13FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00004A7BE50A69
A6FF0B6DABFF004A7BF500487844FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000048783B004B
7CDA004A7BE300487847FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
}
ImageIndex = 4 ImageIndex = 4
OnClick = MICleanupClick OnClick = MICleanupClick
end end
@ -932,5 +971,31 @@ object SQLStringsPropertyEditorDlg: TSQLStringsPropertyEditorDlg
Caption = 'Create string constant' Caption = 'Create string constant'
OnClick = MICreateConstantClick OnClick = MICreateConstantClick
end end
object MIMeta: TMenuItem
Caption = 'Metadata'
object MIMetaColumns: TMenuItem
Caption = 'Columns'
OnClick = MIMetaColumnsClick
end
end
end
object SQLMeta: TSQLQuery
FieldDefs = <>
Params = <>
left = 220
top = 208
end
object SQLDataSource1: TDatasource
DataSet = SQLMeta
left = 256
top = 208
end
object PMMeta: TPopupMenu
left = 296
top = 208
object MIPaste: TMenuItem
Caption = 'Paste in SQL'
OnClick = MIPasteClick
end
end end
end end

View File

@ -11,7 +11,7 @@ interface
uses uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs,
SynEdit, ButtonPanel, SynHighlighterSQL, ComCtrls, SQLDb, db, DBGrids, Menus, SynEdit, ButtonPanel, SynHighlighterSQL, ComCtrls, SQLDb, db, DBGrids, Menus,
SrcEditorIntf,clipbrd; SrcEditorIntf,clipbrd, StdCtrls;
type type
@ -19,44 +19,62 @@ type
TSQLStringsPropertyEditorDlg = class(TForm) TSQLStringsPropertyEditorDlg = class(TForm)
ButtonsPanel: TButtonPanel; ButtonsPanel: TButtonPanel;
CbxMetaData: TComboBox;
MIPaste: TMenuItem;
MetaDBGrid: TDBGrid;
EdtObject: TEdit;
ImageList: TImageList; ImageList: TImageList;
Label1: TLabel;
MIMeta: TMenuItem;
MIMetaColumns: TMenuItem;
MICheck: TMenuItem; MICheck: TMenuItem;
MICreateConstant: TMenuItem; MICreateConstant: TMenuItem;
MICleanup: TMenuItem; MICleanup: TMenuItem;
PMSQL: TPopupMenu; PMSQL: TPopupMenu;
PMMeta: TPopupMenu;
ResultDBGrid: TDBGrid; ResultDBGrid: TDBGrid;
SQLDataSource: TDatasource; SQLDataSource: TDatasource;
OpenDialog: TOpenDialog; OpenDialog: TOpenDialog;
PageControl: TPageControl; PageControl: TPageControl;
SaveDialog: TSaveDialog; SaveDialog: TSaveDialog;
SQLDataSource1: TDatasource;
SQLEditor: TSynEdit; SQLEditor: TSynEdit;
SQLHighlighter: TSynSQLSyn; SQLHighlighter: TSynSQLSyn;
EditorTabSheet: TTabSheet; EditorTabSheet: TTabSheet;
ResultTabSheet: TTabSheet; ResultTabSheet: TTabSheet;
SQLQuery: TSQLQuery; SQLQuery: TSQLQuery;
MetaTabSheet: TTabSheet;
SQLMeta: TSQLQuery;
ToolBar: TToolBar; ToolBar: TToolBar;
OpenToolButton: TToolButton; OpenToolButton: TToolButton;
SaveToolButton: TToolButton; SaveToolButton: TToolButton;
DividerToolButton: TToolButton; DividerToolButton: TToolButton;
ExecuteToolButton: TToolButton; ExecuteToolButton: TToolButton;
TBCheck: TToolButton; TBCheck: TToolButton;
procedure MetaDBGridDblClick(Sender: TObject);
procedure ExecuteToolButtonClick(Sender: TObject); procedure ExecuteToolButtonClick(Sender: TObject);
procedure FormShow(Sender: TObject); procedure FormShow(Sender: TObject);
procedure MICleanupClick(Sender: TObject); procedure MICleanupClick(Sender: TObject);
procedure MICreateConstantClick(Sender: TObject); procedure MICreateConstantClick(Sender: TObject);
procedure MIMetaColumnsClick(Sender: TObject);
procedure MIPasteClick(Sender: TObject);
procedure OpenToolButtonClick(Sender: TObject); procedure OpenToolButtonClick(Sender: TObject);
procedure SaveToolButtonClick(Sender: TObject); procedure SaveToolButtonClick(Sender: TObject);
procedure SQLEditorMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure TBCheckClick(Sender: TObject); procedure TBCheckClick(Sender: TObject);
private private
{ private declarations } { private declarations }
FMetaFromSynedit: Boolean;
FConnection:TSQLConnection; FConnection:TSQLConnection;
FISSQLScript: Boolean; FISSQLScript: Boolean;
FTransaction:TSQLTransaction; FTransaction:TSQLTransaction;
FWordUnderCursor:string;
function CheckConnection:boolean; function CheckConnection:boolean;
procedure CheckSQLSyntax({%H-}SQL: TStrings); procedure CheckSQLSyntax({%H-}SQL: TStrings);
procedure CleanupDelphiCode; procedure CleanupDelphiCode;
procedure CreateConstant; procedure CreateConstant;
procedure ShowMetaData;
public public
{ public declarations } { public declarations }
constructor Create(AOwner:TComponent);override; constructor Create(AOwner:TComponent);override;
@ -79,6 +97,11 @@ uses
resourcestring resourcestring
SResultTabCaption = 'Results'; SResultTabCaption = 'Results';
SSQLTabCaption = 'SQL Code'; SSQLTabCaption = 'SQL Code';
SMetaTabCaption = 'Metadata';
SMetaTables = 'Tables';
SMetaColumns = 'Columns';
SMetaProcedures = 'Procedures';
SMetaSysTables = 'SysTables';
{$IFDEF HASSQLPARSER} {$IFDEF HASSQLPARSER}
SSQLOK = 'SQL OK'; SSQLOK = 'SQL OK';
SQLSyntaxOK = 'No syntax errors in SQL statement.'; SQLSyntaxOK = 'No syntax errors in SQL statement.';
@ -96,6 +119,11 @@ begin
SourceEditorManagerIntf.GetHighlighterSettings(SQLHighlighter); SourceEditorManagerIntf.GetHighlighterSettings(SQLHighlighter);
EditorTabSheet.Caption := SSQLTabCaption; EditorTabSheet.Caption := SSQLTabCaption;
ResultTabSheet.Caption := SResultTabCaption; ResultTabSheet.Caption := SResultTabCaption;
MetaTabSheet.Caption := SMetaTabCaption;
CbxMetaData.Items.Add(SMetaTables);
CbxMetaData.Items.Add(SMetaSysTables);
CbxMetaData.Items.Add(SMetaColumns);
CbxMetaData.Items.Add(SMetaProcedures);
end; end;
//----------------------------------------------------------// //----------------------------------------------------------//
@ -115,6 +143,10 @@ end;
//---------------------------------------------------------------------------// //---------------------------------------------------------------------------//
procedure TSQLStringsPropertyEditorDlg.ExecuteToolButtonClick(Sender: TObject); procedure TSQLStringsPropertyEditorDlg.ExecuteToolButtonClick(Sender: TObject);
begin begin
FMetaFromSynedit:=Sender.ClassNameIs('TMenuItem');
if PageControl.ActivePage=MetaTabSheet then
ShowMetaData
else
try try
SQLQuery.Close; SQLQuery.Close;
SQLQuery.SQL.Text := SQLEditor.Text; SQLQuery.SQL.Text := SQLEditor.Text;
@ -126,6 +158,17 @@ begin
end; end;
end; end;
procedure TSQLStringsPropertyEditorDlg.MetaDBGridDblClick(Sender: TObject);
begin
if assigned(MetaDBGrid.SelectedField) and (MetaDBGrid.SelectedField.Value <> NULL) then
if FMetaFromSynedit then
begin
MIPasteClick(Sender);
end
else
EdtObject.Text:=MetaDBGrid.SelectedField.AsString;
end;
//-------------------------------------------------------------// //-------------------------------------------------------------//
procedure TSQLStringsPropertyEditorDlg.FormShow(Sender: TObject); procedure TSQLStringsPropertyEditorDlg.FormShow(Sender: TObject);
@ -154,17 +197,22 @@ begin
begin begin
SQLQuery.DataBase := FConnection; SQLQuery.DataBase := FConnection;
SQLQuery.Transaction := FTransaction; SQLQuery.Transaction := FTransaction;
SQLMeta.DataBase := FConnection;
SQLMeta.Transaction := FTransaction;
ResultTabSheet.TabVisible := True; ResultTabSheet.TabVisible := True;
MetaTabSheet.TabVisible := True;
ExecuteToolButton.Visible := True; ExecuteToolButton.Visible := True;
FConnection.GetTableNames(SQLHighLighter.TableNames); FConnection.GetTableNames(SQLHighLighter.TableNames);
end end
else else
begin begin
ResultTabSheet.TabVisible := False; ResultTabSheet.TabVisible := False;
MetaTabSheet.TabVisible := False;
ExecuteToolButton.Visible := False; ExecuteToolButton.Visible := False;
end; end;
SQLHighlighter.SQLDIalect:=D; SQLHighlighter.SQLDIalect:=D;
SQLHighlighter.Enabled:=True; SQLHighlighter.Enabled:=True;
CbxMetaData.ItemIndex:=0;
{$ifdef unix} {$ifdef unix}
// keep this only because of gtk1 // keep this only because of gtk1
{$ifdef LCLGtk} {$ifdef LCLGtk}
@ -217,6 +265,28 @@ begin
CreateConstant; CreateConstant;
end; end;
procedure TSQLStringsPropertyEditorDlg.MIMetaColumnsClick(Sender: TObject);
begin
if FWordUnderCursor<>'' then
begin
CbxMetaData.ItemIndex:=2; //stColumns
EdtObject.Text:=FWordUnderCursor;
PageControl.ActivePage:=MetaTabSheet;
ExecuteToolButtonClick(Sender);
end;
end;
procedure TSQLStringsPropertyEditorDlg.MIPasteClick(Sender: TObject);
begin
if assigned(MetaDBGrid.SelectedField) and (MetaDBGrid.SelectedField.Value <> NULL) then
begin
SQLEditor.InsertTextAtCaret(' '+TSQLConnection(SQLMeta.DataBase).FieldNameQuoteChars[0]+
trim(MetaDBGrid.SelectedField.AsString)+TSQLConnection(SQLMeta.DataBase).FieldNameQuoteChars[1]);
PageControl.ActivePage:=EditorTabSheet;
end;
end;
procedure TSQLStringsPropertyEditorDlg.CreateConstant; procedure TSQLStringsPropertyEditorDlg.CreateConstant;
Var Var
@ -236,6 +306,36 @@ begin
Clipboard.AsText:=C; Clipboard.AsText:=C;
end; end;
procedure TSQLStringsPropertyEditorDlg.ShowMetaData;
var
SchemaType:TSchemaType;
begin
case CbxMetaData.ItemIndex of
0:SchemaType:=stTables;
2:begin
SchemaType:=stColumns;
if EdtObject.Text='' then
begin
ShowMessage('Please specify a table in the object field.');
exit;
end;
end;
3:SchemaType:=stProcedures;
1:SchemaType:=stSysTables;
else
SchemaType:=stNoSchema;
end;
if SchemaType<>stNoSchema then
try
SQLMeta.Close;
SQLMeta.SetSchemaInfo(SchemaType,EdtObject.Text,'');
SQLMeta.Open;
except
on e:Exception do
MessageDlg(e.Message, mtError, [mbOK], 0);
end;
end;
//------------------------------------------------------------------------// //------------------------------------------------------------------------//
procedure TSQLStringsPropertyEditorDlg.SaveToolButtonClick(Sender: TObject); procedure TSQLStringsPropertyEditorDlg.SaveToolButtonClick(Sender: TObject);
begin begin
@ -243,6 +343,22 @@ begin
SQLEditor.Lines.SaveToFile(UTF8ToSys(SaveDialog.FileName)); SQLEditor.Lines.SaveToFile(UTF8ToSys(SaveDialog.FileName));
end; end;
procedure TSQLStringsPropertyEditorDlg.SQLEditorMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
MPos,Caret:tpoint;
begin
If Button=mbRight then // save word under cursor
begin
FWordUnderCursor:='';
MPos.x:=x;
MPos.y:=y;
Caret:=SQLEditor.PhysicalToLogicalPos(SQLEditor.PixelsToLogicalPos(MPos));
FWordUnderCursor:=SQLEditor.GetWordAtRowCol(Caret);
end;
end;
procedure TSQLStringsPropertyEditorDlg.TBCheckClick(Sender: TObject); procedure TSQLStringsPropertyEditorDlg.TBCheckClick(Sender: TObject);
begin begin
CheckSQLSyntax(SQLEditor.Lines) CheckSQLSyntax(SQLEditor.Lines)