From 19667c1cfb8a95baa08e936cb1b998200bde75fa Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Mon, 2 May 2022 12:33:51 +0200 Subject: [PATCH 1/6] merge --- GUIs.ZooFlow/My Project/Resources.Designer.vb | 50 ++++++++++++++ GUIs.ZooFlow/My Project/Resources.resx | 23 +++++-- .../FLOW_Sidebar_Search_inaktiv1.svg | 62 ++++++++++++++++++ .../Resources/FLOW_Sidebar_Task_inaktiv1.svg | 55 ++++++++++++++++ GUIs.ZooFlow/Resources/ZOOFLOW_DEFAULT.png | Bin 0 -> 12125 bytes .../Resources/ZOOFLOW_DRAG_NORMAL.png | Bin 0 -> 11369 bytes .../Resources/ZOOFLOW_DRAG_PROGRESSIVE.png | Bin 0 -> 12614 bytes GUIs.ZooFlow/ZooFlow.vbproj | 5 ++ GUIs.ZooFlow/frmFlowForm.Designer.vb | 4 +- GUIs.ZooFlow/frmFlowForm.vb | 42 +++++------- 10 files changed, 209 insertions(+), 32 deletions(-) create mode 100644 GUIs.ZooFlow/Resources/FLOW_Sidebar_Search_inaktiv1.svg create mode 100644 GUIs.ZooFlow/Resources/FLOW_Sidebar_Task_inaktiv1.svg create mode 100644 GUIs.ZooFlow/Resources/ZOOFLOW_DEFAULT.png create mode 100644 GUIs.ZooFlow/Resources/ZOOFLOW_DRAG_NORMAL.png create mode 100644 GUIs.ZooFlow/Resources/ZOOFLOW_DRAG_PROGRESSIVE.png diff --git a/GUIs.ZooFlow/My Project/Resources.Designer.vb b/GUIs.ZooFlow/My Project/Resources.Designer.vb index 64753c9e..39f9b5dd 100644 --- a/GUIs.ZooFlow/My Project/Resources.Designer.vb +++ b/GUIs.ZooFlow/My Project/Resources.Designer.vb @@ -1030,6 +1030,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property FLOW_Sidebar_Search_inaktiv1() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("FLOW_Sidebar_Search_inaktiv1", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' @@ -1050,6 +1060,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property FLOW_Sidebar_Task_inaktiv1() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("FLOW_Sidebar_Task_inaktiv1", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. ''' @@ -1510,6 +1530,36 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + ''' + Friend ReadOnly Property ZOOFLOW_DEFAULT() As System.Drawing.Bitmap + Get + Dim obj As Object = ResourceManager.GetObject("ZOOFLOW_DEFAULT", resourceCulture) + Return CType(obj,System.Drawing.Bitmap) + End Get + End Property + + ''' + ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + ''' + Friend ReadOnly Property ZOOFLOW_DRAG_NORMAL() As System.Drawing.Bitmap + Get + Dim obj As Object = ResourceManager.GetObject("ZOOFLOW_DRAG_NORMAL", resourceCulture) + Return CType(obj,System.Drawing.Bitmap) + End Get + End Property + + ''' + ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + ''' + Friend ReadOnly Property ZOOFLOW_DRAG_PROGRESSIVE() As System.Drawing.Bitmap + Get + Dim obj As Object = ResourceManager.GetObject("ZOOFLOW_DRAG_PROGRESSIVE", resourceCulture) + Return CType(obj,System.Drawing.Bitmap) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. ''' diff --git a/GUIs.ZooFlow/My Project/Resources.resx b/GUIs.ZooFlow/My Project/Resources.resx index b0cafd65..9bceadb1 100644 --- a/GUIs.ZooFlow/My Project/Resources.resx +++ b/GUIs.ZooFlow/My Project/Resources.resx @@ -193,8 +193,8 @@ ..\Resources\DD_Icons_ICO_PMANAGER_256px.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\renamedatasource.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\ZOOFLOW_DRAG_NORMAL.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\2_ZOO_FLOW_Abo.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -322,6 +322,9 @@ ..\Resources\ZooFlow_G_DevExpress.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\FLOW_Sidebar_Task_inaktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\1_LOGO_ZOO_FLOW.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -349,6 +352,9 @@ ..\Resources\doublenext.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\ZOOFLOW_DEFAULT.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\actions_check2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -463,6 +469,9 @@ ..\Resources\Compare_RefreshScriptPreview.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\new3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\actions_check.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -478,12 +487,18 @@ ..\Resources\4_GLOBIX_AKTIV_ZOO.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\ZOOFLOW_DRAG_PROGRESSIVE.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\documentproperties.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\StatusAnnotations_Information_16xLG_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\renamedatasource.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\actions_addcircled4.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -577,7 +592,7 @@ ..\Resources\del3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\new3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\FLOW_Sidebar_Search_inaktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a \ No newline at end of file diff --git a/GUIs.ZooFlow/Resources/FLOW_Sidebar_Search_inaktiv1.svg b/GUIs.ZooFlow/Resources/FLOW_Sidebar_Search_inaktiv1.svg new file mode 100644 index 00000000..28d329dc --- /dev/null +++ b/GUIs.ZooFlow/Resources/FLOW_Sidebar_Search_inaktiv1.svg @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/GUIs.ZooFlow/Resources/FLOW_Sidebar_Task_inaktiv1.svg b/GUIs.ZooFlow/Resources/FLOW_Sidebar_Task_inaktiv1.svg new file mode 100644 index 00000000..3e0c3362 --- /dev/null +++ b/GUIs.ZooFlow/Resources/FLOW_Sidebar_Task_inaktiv1.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/GUIs.ZooFlow/Resources/ZOOFLOW_DEFAULT.png b/GUIs.ZooFlow/Resources/ZOOFLOW_DEFAULT.png new file mode 100644 index 0000000000000000000000000000000000000000..8e7472d8c2ab28607a595d151b84b15dff367e8c GIT binary patch literal 12125 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 A;{X5v literal 0 HcmV?d00001 diff --git a/GUIs.ZooFlow/Resources/ZOOFLOW_DRAG_NORMAL.png b/GUIs.ZooFlow/Resources/ZOOFLOW_DRAG_NORMAL.png new file mode 100644 index 0000000000000000000000000000000000000000..281e62ce04300465c079467fcfc8154a11a30327 GIT binary patch literal 11369 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 Yl!u;M`+YC%@qj-?IThJLnfJc`3r+5mXaE2J literal 0 HcmV?d00001 diff --git a/GUIs.ZooFlow/Resources/ZOOFLOW_DRAG_PROGRESSIVE.png b/GUIs.ZooFlow/Resources/ZOOFLOW_DRAG_PROGRESSIVE.png new file mode 100644 index 0000000000000000000000000000000000000000..bb04cbab825da7842bd3acb6ed46e352cb4503e5 GIT binary patch literal 12614 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 literal 0 HcmV?d00001 diff --git a/GUIs.ZooFlow/ZooFlow.vbproj b/GUIs.ZooFlow/ZooFlow.vbproj index 1919b7e5..d0b11977 100644 --- a/GUIs.ZooFlow/ZooFlow.vbproj +++ b/GUIs.ZooFlow/ZooFlow.vbproj @@ -1098,6 +1098,11 @@ + + + + + diff --git a/GUIs.ZooFlow/frmFlowForm.Designer.vb b/GUIs.ZooFlow/frmFlowForm.Designer.vb index 83c48a80..3d53c170 100644 --- a/GUIs.ZooFlow/frmFlowForm.Designer.vb +++ b/GUIs.ZooFlow/frmFlowForm.Designer.vb @@ -169,7 +169,7 @@ Partial Class frmFlowForm Me.PictureBoxPM.Name = "PictureBoxPM" Me.PictureBoxPM.Size = New System.Drawing.Size(158, 50) Me.PictureBoxPM.SizeMode = DevExpress.XtraEditors.SvgImageSizeMode.Zoom - Me.PictureBoxPM.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.FLOW_Sidebar_Task_inaktiv + Me.PictureBoxPM.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.FLOW_Sidebar_Task_inaktiv1 Me.PictureBoxPM.TabIndex = 14 Me.PictureBoxPM.Text = "SvgImageBox1" Me.ToolTip1.SetToolTip(Me.PictureBoxPM, "ProcessManager - Workflow") @@ -184,7 +184,7 @@ Partial Class frmFlowForm Me.PictureBoxSearch.Name = "PictureBoxSearch" Me.PictureBoxSearch.Size = New System.Drawing.Size(158, 50) Me.PictureBoxSearch.SizeMode = DevExpress.XtraEditors.SvgImageSizeMode.Zoom - Me.PictureBoxSearch.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.FLOW_Sidebar_Search_inaktiv + Me.PictureBoxSearch.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.FLOW_Sidebar_Search_inaktiv1 Me.PictureBoxSearch.TabIndex = 13 Me.PictureBoxSearch.Text = "X" Me.ToolTip1.SetToolTip(Me.PictureBoxSearch, "FlowSearch öffnen") diff --git a/GUIs.ZooFlow/frmFlowForm.vb b/GUIs.ZooFlow/frmFlowForm.vb index 9613bb73..8d486721 100644 --- a/GUIs.ZooFlow/frmFlowForm.vb +++ b/GUIs.ZooFlow/frmFlowForm.vb @@ -72,7 +72,6 @@ Public Class frmFlowForm ABN_FULLSCREENAPP ABN_WINDOWARRANGE End Enum - Public LOAD_SIDEBAR_DATA As Boolean = False #End Region #Region "Sidebar Enum Properties Register" Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message) @@ -243,7 +242,7 @@ Public Class frmFlowForm End If ' === Setup Timers === - AddHandler TimerRefreshSidebarData.Tick, AddressOf TimerRefreshSidebarData_Tick + AddHandler TimerRefreshSidebarData.Tick, AddressOf TimerRefreshData_Tick TimerRefreshSidebarData.Enabled = True ' === Setup Event Handlers === @@ -260,7 +259,12 @@ Public Class frmFlowForm End If Next - Load_Recent_Files + Dim oSql = $"SELECT TOP 10 * FROM VWIDB_DOCRESULT_DE WHERE [Changed who] = '{My.Application.User.UserName}' ORDER BY [Changed when] DESC" + Dim AccessedFilesTable = Await My.Database.GetDatatableIDBAsync(oSql) + + GridControl1.DataSource = AccessedFilesTable + colPrimary.FieldName = "DisplayFileName" + colSecondary.FieldName = "Changed when" If My.Application.ModulesActive.Contains(MODULE_CLIPBOARDWATCHER) Then Try @@ -391,18 +395,7 @@ Public Class frmFlowForm SHAppBarMessage(ABMsg.ABM_REMOVE, AppDeskData) End If End Sub - Async Sub Load_Recent_Files() - Try - Dim oSql = $"SELECT TOP 10 * FROM VWIDB_DOCRESULT_DE WHERE [Changed who] = '{My.Application.User.UserName}' ORDER BY [Changed when] DESC" - Dim AccessedFilesTable = Await My.Database.GetDatatableIDBAsync(oSql) - GridControl1.DataSource = AccessedFilesTable - colPrimary.FieldName = "DisplayFileName" - colSecondary.FieldName = "Changed when" - Catch ex As Exception - ShowErrorMessage(ex) - End Try - End Sub Public Sub Init_Folderwatch() Try Dim oSql As String = "SELECT FOLDER_PATH FROM TBGI_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'DEFAULT' AND USER_ID = " & My.Application.User.UserId @@ -470,6 +463,10 @@ Public Class frmFlowForm End Sub + Private Sub TimerRefreshData_Tick(sender As Object, e As EventArgs) + 'TODO: Refresh Data + End Sub + Private Sub frmFlowForm_KeyDown(ByVal sender As Object, ByVal e As KeyEventArgs) If e.KeyCode = Keys.Escape Then If RunningTask IsNot Nothing Then @@ -545,11 +542,11 @@ Public Class frmFlowForm Private Sub frmFlowForm_DragEnter(sender As Object, e As DragEventArgs) Handles MyBase.DragEnter If My.Application.GlobixDropAreaStyle = "PROGRESSIVE" Then - PictureEdit2.Image = My.Resources._1_LOGO_ZOO_FLOW_DROP3 - 'PictureEdit2.Image = My.Resources.ZooFlow_drop_drag + 'PictureBoxDragDrop.Image = My.Resources._1_LOGO_ZOO_FLOW_DROP3 + PictureEdit2.Image = My.Resources.ZOOFLOW_DRAG_PROGRESSIVE Else 'PictureBoxDragDrop.Image = My.Resources._1_LOGO_ZOO_FLOW_DROP2 - PictureEdit2.Image = My.Resources.ZooFlow_drop_drag + PictureEdit2.Image = My.Resources.ZOOFLOW_DRAG_NORMAL End If e.Effect = DragDropEffects.Copy @@ -562,7 +559,7 @@ Public Class frmFlowForm Private Sub frmFlowForm_DragLeave(sender As Object, e As EventArgs) Handles Me.DragLeave 'PictureBoxDragDrop.Image = My.Resources._1_LOGO_ZOO_FLOW1 - PictureEdit2.Image = My.Resources.ZooFlow_drop + PictureEdit2.Image = My.Resources.ZOOFLOW_DEFAULT End Sub Private Sub PictureBoxAbo_Click(sender As Object, e As EventArgs) @@ -622,7 +619,7 @@ Public Class frmFlowForm Exit Function End If - PictureEdit2.Image = My.Resources.ZooFlow_drop + PictureEdit2.Image = My.Resources.ZOOFLOW_DEFAULT 'Erstmal alles löschen My.Database.ExecuteNonQueryECM("DELETE FROM TBGI_FILES_USER WHERE USER@WORK = '" & My.Application.User.UserName & "'") @@ -1245,12 +1242,5 @@ Public Class frmFlowForm End Try End If End Sub - - Private Sub TimerRefreshSidebarData_Tick(sender As Object, e As EventArgs) Handles TimerRefreshSidebarData.Tick - If LOAD_SIDEBAR_DATA = True Then - Load_Recent_Files() - End If - - End Sub End Class From 9a5207b316366205a7c0c84e99a940144e424ae9 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Mon, 2 May 2022 12:47:12 +0200 Subject: [PATCH 2/6] Zooflow: Add New Images --- GUIs.ZooFlow/My Project/Resources.Designer.vb | 20 +++++++++ GUIs.ZooFlow/My Project/Resources.resx | 10 ++++- .../Resources/FLOW_Sidebar_Search_aktiv1.svg | 42 +++++++++++++++++++ .../Resources/FLOW_Sidebar_Task_aktiv1.svg | 35 ++++++++++++++++ GUIs.ZooFlow/ZooFlow.vbproj | 2 + GUIs.ZooFlow/frmFlowForm.vb | 8 ++-- 6 files changed, 111 insertions(+), 6 deletions(-) create mode 100644 GUIs.ZooFlow/Resources/FLOW_Sidebar_Search_aktiv1.svg create mode 100644 GUIs.ZooFlow/Resources/FLOW_Sidebar_Task_aktiv1.svg diff --git a/GUIs.ZooFlow/My Project/Resources.Designer.vb b/GUIs.ZooFlow/My Project/Resources.Designer.vb index 39f9b5dd..93ccee5a 100644 --- a/GUIs.ZooFlow/My Project/Resources.Designer.vb +++ b/GUIs.ZooFlow/My Project/Resources.Designer.vb @@ -1020,6 +1020,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property FLOW_Sidebar_Search_aktiv1() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("FLOW_Sidebar_Search_aktiv1", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' @@ -1050,6 +1060,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property FLOW_Sidebar_Task_aktiv1() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("FLOW_Sidebar_Task_aktiv1", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' diff --git a/GUIs.ZooFlow/My Project/Resources.resx b/GUIs.ZooFlow/My Project/Resources.resx index 9bceadb1..96cabf2c 100644 --- a/GUIs.ZooFlow/My Project/Resources.resx +++ b/GUIs.ZooFlow/My Project/Resources.resx @@ -205,6 +205,9 @@ ..\Resources\about2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\FLOW_Sidebar_Search_inaktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\bo_appearance1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -397,6 +400,9 @@ ..\Resources\ZooFlow_drop_drag.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\FLOW_Sidebar_Task_aktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\actions_deletecircled6.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -592,7 +598,7 @@ ..\Resources\del3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\FLOW_Sidebar_Search_inaktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\FLOW_Sidebar_Search_aktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a \ No newline at end of file diff --git a/GUIs.ZooFlow/Resources/FLOW_Sidebar_Search_aktiv1.svg b/GUIs.ZooFlow/Resources/FLOW_Sidebar_Search_aktiv1.svg new file mode 100644 index 00000000..38ce5f73 --- /dev/null +++ b/GUIs.ZooFlow/Resources/FLOW_Sidebar_Search_aktiv1.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + diff --git a/GUIs.ZooFlow/Resources/FLOW_Sidebar_Task_aktiv1.svg b/GUIs.ZooFlow/Resources/FLOW_Sidebar_Task_aktiv1.svg new file mode 100644 index 00000000..fd014cb8 --- /dev/null +++ b/GUIs.ZooFlow/Resources/FLOW_Sidebar_Task_aktiv1.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + diff --git a/GUIs.ZooFlow/ZooFlow.vbproj b/GUIs.ZooFlow/ZooFlow.vbproj index d0b11977..a1254c04 100644 --- a/GUIs.ZooFlow/ZooFlow.vbproj +++ b/GUIs.ZooFlow/ZooFlow.vbproj @@ -1103,6 +1103,8 @@ + + diff --git a/GUIs.ZooFlow/frmFlowForm.vb b/GUIs.ZooFlow/frmFlowForm.vb index 8d486721..169df38e 100644 --- a/GUIs.ZooFlow/frmFlowForm.vb +++ b/GUIs.ZooFlow/frmFlowForm.vb @@ -1157,11 +1157,11 @@ Public Class frmFlowForm End Sub Private Sub PictureBoxSearch_MouseEnter(sender As Object, e As EventArgs) Handles PictureBoxSearch.MouseEnter - PictureBoxSearch.SvgImage = My.Resources.FLOW_Sidebar_Search_aktiv + PictureBoxSearch.SvgImage = My.Resources.FLOW_Sidebar_Search_aktiv1 End Sub Private Sub PictureBoxSearch_MouseLeave(sender As Object, e As EventArgs) Handles PictureBoxSearch.MouseLeave - PictureBoxSearch.SvgImage = My.Resources.FLOW_Sidebar_Search_inaktiv + PictureBoxSearch.SvgImage = My.Resources.FLOW_Sidebar_Search_inaktiv1 End Sub Private Sub PictureBoxPM_Click(sender As Object, e As EventArgs) Handles PictureBoxPM.Click @@ -1176,11 +1176,11 @@ Public Class frmFlowForm End Sub Private Sub PictureBoxPM_MouseEnter(sender As Object, e As EventArgs) Handles PictureBoxPM.MouseEnter - PictureBoxPM.SvgImage = My.Resources.FLOW_Sidebar_Task_aktiv + PictureBoxPM.SvgImage = My.Resources.FLOW_Sidebar_Task_aktiv1 End Sub Private Sub PictureBoxPM_MouseLeave(sender As Object, e As EventArgs) Handles PictureBoxPM.MouseLeave - PictureBoxPM.SvgImage = My.Resources.FLOW_Sidebar_Task_inaktiv + PictureBoxPM.SvgImage = My.Resources.FLOW_Sidebar_Task_inaktiv1 End Sub Private Async Sub PictureEditQuicksearch1_Click(sender As Object, e As EventArgs) Handles PictureEditQuicksearch1.Click From 8499e8458620bd961afbb7992a0403b81c405c02 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Mon, 2 May 2022 16:26:12 +0200 Subject: [PATCH 3/6] Zooflow: Readd Load_recent_files, add second service config --- .../Administration/frmAdmin_Start.Designer.vb | 14 +- GUIs.ZooFlow/Administration/frmAdmin_Start.vb | 29 + GUIs.ZooFlow/Config/ClassConfig.vb | 3 + .../Modules/Globix/ClassFilehandle.vb | 8 +- GUIs.ZooFlow/Modules/Globix/State.vb | 4 +- .../Globix/frmGlobixAdministration.resx | 376 ------- .../Globix/frmGlobixBasicConfig.Designer.vb | 62 +- .../Globix/frmGlobixNameconvention.resx.bak | 219 ---- .../Modules/Globix/frmGlobix_Index.resx.bak | 525 ---------- .../Globix/frmGlobix_IndexFileList.resx.bak | 251 ----- GUIs.ZooFlow/My Project/Resources.Designer.vb | 10 + GUIs.ZooFlow/My Project/Resources.resx | 55 +- GUIs.ZooFlow/MyApplication.vb | 3 - GUIs.ZooFlow/Resources/switchrowcolumns.svg | 12 + GUIs.ZooFlow/Search/SearchRunner.vb | 7 + GUIs.ZooFlow/ZooFlow.vbproj | 1 + GUIs.ZooFlow/ZooFlow.vbproj.bak | 976 ------------------ GUIs.ZooFlow/frmConfigBasic.Designer.vb | 57 +- GUIs.ZooFlow/frmFlowForm.Designer.vb | 6 - GUIs.ZooFlow/frmFlowForm.resx | 11 +- GUIs.ZooFlow/frmFlowForm.vb | 68 +- GUIs.ZooFlow/frmServiceConfig.vb | 20 +- 22 files changed, 215 insertions(+), 2502 deletions(-) delete mode 100644 GUIs.ZooFlow/Modules/Globix/frmGlobixAdministration.resx delete mode 100644 GUIs.ZooFlow/Modules/Globix/frmGlobixNameconvention.resx.bak delete mode 100644 GUIs.ZooFlow/Modules/Globix/frmGlobix_Index.resx.bak delete mode 100644 GUIs.ZooFlow/Modules/Globix/frmGlobix_IndexFileList.resx.bak create mode 100644 GUIs.ZooFlow/Resources/switchrowcolumns.svg delete mode 100644 GUIs.ZooFlow/ZooFlow.vbproj.bak diff --git a/GUIs.ZooFlow/Administration/frmAdmin_Start.Designer.vb b/GUIs.ZooFlow/Administration/frmAdmin_Start.Designer.vb index 8cf13068..db5f7877 100644 --- a/GUIs.ZooFlow/Administration/frmAdmin_Start.Designer.vb +++ b/GUIs.ZooFlow/Administration/frmAdmin_Start.Designer.vb @@ -61,6 +61,7 @@ Partial Class frmAdmin_Start Me.BarButtonItem26 = New DevExpress.XtraBars.BarButtonItem() Me.BarButtonItem27 = New DevExpress.XtraBars.BarButtonItem() Me.btnDatabaseConnection = New DevExpress.XtraBars.BarButtonItem() + Me.btnSecondServiceConnection = New DevExpress.XtraBars.BarButtonItem() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() @@ -135,9 +136,9 @@ Partial Class frmAdmin_Start 'RibbonControl1 ' Me.RibbonControl1.ExpandCollapseItem.Id = 0 - Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.BarButtonItem3, Me.BarButtonItem4, Me.BarButtonItem5, Me.labelStatus, Me.labelError, Me.BarButtonItemAddAttribute, Me.BarButtonItemRefreshAttribute, Me.BarButtonItem6, Me.BarButtonItem7, Me.BarButtonItem8, Me.BarButtonItem9, Me.BarButtonItem10, Me.BarButtonItem12, Me.BarButtonItem13, Me.BarButtonItem14, Me.BarButtonItem15, Me.BarButtonItem16, Me.BarButtonItem17, Me.BarButtonItem18, Me.BarButtonItem19, Me.BarButtonItem20, Me.BarButtonItem21, Me.BarButtonItem22, Me.BarButtonItem23, Me.BarButtonItem24, Me.BarButtonItem25, Me.btnAddRecord, Me.btnEditRecord, Me.BarButtonItem26, Me.BarButtonItem27, Me.btnDatabaseConnection}) + Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.BarButtonItem3, Me.BarButtonItem4, Me.BarButtonItem5, Me.labelStatus, Me.labelError, Me.BarButtonItemAddAttribute, Me.BarButtonItemRefreshAttribute, Me.BarButtonItem6, Me.BarButtonItem7, Me.BarButtonItem8, Me.BarButtonItem9, Me.BarButtonItem10, Me.BarButtonItem12, Me.BarButtonItem13, Me.BarButtonItem14, Me.BarButtonItem15, Me.BarButtonItem16, Me.BarButtonItem17, Me.BarButtonItem18, Me.BarButtonItem19, Me.BarButtonItem20, Me.BarButtonItem21, Me.BarButtonItem22, Me.BarButtonItem23, Me.BarButtonItem24, Me.BarButtonItem25, Me.btnAddRecord, Me.btnEditRecord, Me.BarButtonItem26, Me.BarButtonItem27, Me.btnDatabaseConnection, Me.btnSecondServiceConnection}) Me.RibbonControl1.Location = New System.Drawing.Point(0, 0) - Me.RibbonControl1.MaxItemId = 38 + Me.RibbonControl1.MaxItemId = 39 Me.RibbonControl1.Name = "RibbonControl1" Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1}) Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False] @@ -380,6 +381,13 @@ Partial Class frmAdmin_Start Me.btnDatabaseConnection.ImageOptions.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.managedatasource3 Me.btnDatabaseConnection.Name = "btnDatabaseConnection" ' + 'btnSecondServiceConnection + ' + Me.btnSecondServiceConnection.Caption = "Dienstkonfiguration umschalten" + Me.btnSecondServiceConnection.Id = 38 + Me.btnSecondServiceConnection.ImageOptions.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.switchrowcolumns + Me.btnSecondServiceConnection.Name = "btnSecondServiceConnection" + ' 'RibbonPage1 ' Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup2, Me.RibbonPageGroup1}) @@ -392,6 +400,7 @@ Partial Class frmAdmin_Start Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem27) Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem9) Me.RibbonPageGroup2.ItemLinks.Add(Me.btnDatabaseConnection) + Me.RibbonPageGroup2.ItemLinks.Add(Me.btnSecondServiceConnection) Me.RibbonPageGroup2.Name = "RibbonPageGroup2" Me.RibbonPageGroup2.Text = "Daten" ' @@ -951,4 +960,5 @@ Partial Class frmAdmin_Start Friend WithEvents BarButtonItem26 As DevExpress.XtraBars.BarButtonItem Friend WithEvents BarButtonItem27 As DevExpress.XtraBars.BarButtonItem Friend WithEvents btnDatabaseConnection As DevExpress.XtraBars.BarButtonItem + Friend WithEvents btnSecondServiceConnection As DevExpress.XtraBars.BarButtonItem End Class diff --git a/GUIs.ZooFlow/Administration/frmAdmin_Start.vb b/GUIs.ZooFlow/Administration/frmAdmin_Start.vb index 179f7e85..0e36230d 100644 --- a/GUIs.ZooFlow/Administration/frmAdmin_Start.vb +++ b/GUIs.ZooFlow/Administration/frmAdmin_Start.vb @@ -311,4 +311,33 @@ Public Class frmAdmin_Start Return False End If End Function + + Private Sub btnSecondServiceConnection_ItemClick(sender As Object, e As ItemClickEventArgs) Handles btnSecondServiceConnection.ItemClick + If My.SystemConfig.AppServerConfigDevelopment = String.Empty Then + Dim oAnswer = MsgBox("Es ist keine zweite Dienstkonfiguration vorhanden. Wollen Sie nun eine hinterlegen?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, Text) + If oAnswer = MsgBoxResult.Yes Then + Dim oForm As New frmServiceConfig() With { + .ServiceAddress = "", + .ServiceOnline = False + } + + oForm.ShowDialog() + + My.SystemConfig.AppServerConfigDevelopment = oForm.ServiceAddress + My.SystemConfigManager.Save() + Else + ' Cancel + Exit Sub + End If + End If + + Dim oServiceAddress = My.SystemConfig.AppServerConfig + If My.Application.Service.Client.ServerAddress = My.SystemConfig.AppServerConfig Then + oServiceAddress = My.SystemConfig.AppServerConfigDevelopment + Else + oServiceAddress = My.SystemConfig.AppServerConfig + End If + + My.Application.Service.Client = New Modules.EDMI.API.Client(My.LogConfig, oServiceAddress) + End Sub End Class \ No newline at end of file diff --git a/GUIs.ZooFlow/Config/ClassConfig.vb b/GUIs.ZooFlow/Config/ClassConfig.vb index 0b618431..d293d5d2 100644 --- a/GUIs.ZooFlow/Config/ClassConfig.vb +++ b/GUIs.ZooFlow/Config/ClassConfig.vb @@ -43,6 +43,9 @@ Public Class ClassConfig Public Property AppServerConfig As String = String.Empty + + Public Property AppServerConfigDevelopment As String = String.Empty + ' === Logging Configuration Public Property LogDebug As Boolean = False diff --git a/GUIs.ZooFlow/Modules/Globix/ClassFilehandle.vb b/GUIs.ZooFlow/Modules/Globix/ClassFilehandle.vb index 1c85f4b4..0c6edc59 100644 --- a/GUIs.ZooFlow/Modules/Globix/ClassFilehandle.vb +++ b/GUIs.ZooFlow/Modules/Globix/ClassFilehandle.vb @@ -11,11 +11,11 @@ Imports Limilabs.Mail Public Class ClassFilehandle Inherits BaseClass - Private FileEx As File - Private Email As Email2 - Private UserFiles As ClassUserFiles + Private ReadOnly FileEx As File + Private ReadOnly Email As Email2 + Private ReadOnly UserFiles As ClassUserFiles - Private TempFiles As New List(Of String) + Private ReadOnly TempFiles As New List(Of String) Public Sub New(pLogConfig As LogConfig) MyBase.New(pLogConfig) diff --git a/GUIs.ZooFlow/Modules/Globix/State.vb b/GUIs.ZooFlow/Modules/Globix/State.vb index 4533043e..9d5e710f 100644 --- a/GUIs.ZooFlow/Modules/Globix/State.vb +++ b/GUIs.ZooFlow/Modules/Globix/State.vb @@ -8,9 +8,7 @@ Namespace Globix Public Property CurrMessageID As String Public Property CurrentFolderWatchPath As String Public Property CURRENT_SCAN_FOLDERWATCH As String - - Public Property CurrentWorkfile As Globix.Models.WorkFile - + Public Property CurrentWorkfile As Models.WorkFile Public Property INDEXING_ACTIVE As Boolean = False Public Property ABORT_INDEXING As Boolean = False Public Property CURRENT_ISATTACHMENT As Boolean = False diff --git a/GUIs.ZooFlow/Modules/Globix/frmGlobixAdministration.resx b/GUIs.ZooFlow/Modules/Globix/frmGlobixAdministration.resx deleted file mode 100644 index f2e1256e..00000000 --- a/GUIs.ZooFlow/Modules/Globix/frmGlobixAdministration.resx +++ /dev/null @@ -1,376 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4BAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iU2F2ZSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzIg - MzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cjwvc3R5 - bGU+DQogIDxwYXRoIGQ9Ik0yNyw0aC0zdjEwSDhWNEg1QzQuNCw0LDQsNC40LDQsNXYyMmMwLDAuNiww - LjQsMSwxLDFoMjJjMC42LDAsMS0wLjQsMS0xVjVDMjgsNC40LDI3LjYsNCwyNyw0eiBNMjQsMjRIOHYt - NiAgaDE2VjI0eiBNMTAsNHY4aDEwVjRIMTB6IE0xNCwxMGgtMlY2aDJWMTB6IiBjbGFzcz0iQmxhY2si - IC8+DQo8L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAD0DAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJs - YWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAzOUMy - Mzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iRGVsZXRlIj4N - CiAgICA8Zz4NCiAgICAgIDxwYXRoIGQ9Ik0xOC44LDE2bDYuOS02LjljMC40LTAuNCwwLjQtMSwwLTEu - NGwtMS40LTEuNGMtMC40LTAuNC0xLTAuNC0xLjQsMEwxNiwxMy4yTDkuMSw2LjNjLTAuNC0wLjQtMS0w - LjQtMS40LDAgICAgTDYuMyw3LjdjLTAuNCwwLjQtMC40LDEsMCwxLjRsNi45LDYuOWwtNi45LDYuOWMt - MC40LDAuNC0wLjQsMSwwLDEuNGwxLjQsMS40YzAuNCwwLjQsMSwwLjQsMS40LDBsNi45LTYuOWw2Ljks - Ni45ICAgIGMwLjQsMC40LDEsMC40LDEuNCwwbDEuNC0xLjRjMC40LTAuNCwwLjQtMSwwLTEuNEwxOC44 - LDE2eiIgY2xhc3M9IlJlZCIgLz4NCiAgICA8L2c+DQogIDwvZz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAKcCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z - ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkdyZWVue2ZpbGw6IzAz - OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cgkuc3Qwe29wYWNpdHk6MC43NTt9Cgkuc3Qxe29wYWNp - dHk6MC41O30KPC9zdHlsZT4NCiAgPGcgaWQ9IkFkZCI+DQogICAgPHBhdGggZD0iTTI3LDE0aC05VjVj - MC0wLjUtMC41LTEtMS0xaC0yYy0wLjUsMC0xLDAuNS0xLDF2OUg1Yy0wLjUsMC0xLDAuNS0xLDF2MmMw - LDAuNSwwLjUsMSwxLDFoOXY5ICAgYzAsMC41LDAuNSwxLDEsMWgyYzAuNSwwLDEtMC41LDEtMXYtOWg5 - YzAuNSwwLDEtMC41LDEtMXYtMkMyOCwxNC41LDI3LjUsMTQsMjcsMTR6IiBjbGFzcz0iR3JlZW4iIC8+ - DQogIDwvZz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4BAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iU2F2ZSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzIg - MzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cjwvc3R5 - bGU+DQogIDxwYXRoIGQ9Ik0yNyw0aC0zdjEwSDhWNEg1QzQuNCw0LDQsNC40LDQsNXYyMmMwLDAuNiww - LjQsMSwxLDFoMjJjMC42LDAsMS0wLjQsMS0xVjVDMjgsNC40LDI3LjYsNCwyNyw0eiBNMjQsMjRIOHYt - NiAgaDE2VjI0eiBNMTAsNHY4aDEwVjRIMTB6IE0xNCwxMGgtMlY2aDJWMTB6IiBjbGFzcz0iQmxhY2si - IC8+DQo8L3N2Zz4L - - - - 144, 17 - - - 17, 17 - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFMCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAxMyAxMyIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MTMgMTMiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJs - YWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAzOUMy - Mzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iQXBwb2ludG1l - bnRFbmRDb250aW51ZUFycm93XzFfIj4NCiAgICA8cG9seWdvbiBwb2ludHM9IjIsNyA3LDIgNyw1IDEx - LDUgMTEsOSA3LDkgNywxMiAgIiBjbGFzcz0iQmxhY2siIC8+DQogIDwvZz4NCjwvc3ZnPgs= - - - - 821, 17 - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPcFAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkdyZWVue2ZpbGw6IzAzOUMyMzt9Cgku - QmxhY2t7ZmlsbDojNzI3MjcyO30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5ZZWxsb3d7ZmlsbDojRkZC - MTE1O30KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iSXRlbVR5cGVD - aGVja2VkIj4NCiAgICA8Zz4NCiAgICAgIDxnPg0KICAgICAgICA8cmVjdCB4PSIyMCIgeT0iOCIgd2lk - dGg9IjEwIiBoZWlnaHQ9IjQiIHJ4PSIwIiByeT0iMCIgY2xhc3M9IkJsYWNrIiAvPg0KICAgICAgICA8 - cmVjdCB4PSIyMCIgeT0iMjIiIHdpZHRoPSIxMCIgaGVpZ2h0PSI0IiByeD0iMCIgcnk9IjAiIGNsYXNz - PSJCbGFjayIgLz4NCiAgICAgICAgPHBhdGggZD0iTTE1LDE4SDNjLTAuNSwwLTEsMC41LTEsMXYxMmMw - LDAuNSwwLjUsMSwxLDFoMTJjMC41LDAsMS0wLjUsMS0xVjE5QzE2LDE4LjUsMTUuNSwxOCwxNSwxOHog - TTE0LDMwSDRWMjAgICAgIGgxMFYzMHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgICAgPHBhdGggZD0i - TTE0LDEwLjhWMTRINFY0aDguMmwyLTJIM0MyLjUsMiwyLDIuNSwyLDN2MTJjMCwwLjUsMC41LDEsMSwx - aDEyYzAuNSwwLDEtMC41LDEtMVY4LjhMMTQsMTAuOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgIDwv - Zz4NCiAgICAgIDxnPg0KICAgICAgICA8cmVjdCB4PSIyMCIgeT0iOCIgd2lkdGg9IjEwIiBoZWlnaHQ9 - IjQiIHJ4PSIwIiByeT0iMCIgY2xhc3M9IkJsYWNrIiAvPg0KICAgICAgICA8cmVjdCB4PSIyMCIgeT0i - MjIiIHdpZHRoPSIxMCIgaGVpZ2h0PSI0IiByeD0iMCIgcnk9IjAiIGNsYXNzPSJCbGFjayIgLz4NCiAg - ICAgICAgPHBhdGggZD0iTTE1LDE4SDNjLTAuNSwwLTEsMC41LTEsMXYxMmMwLDAuNSwwLjUsMSwxLDFo - MTJjMC41LDAsMS0wLjUsMS0xVjE5QzE2LDE4LjUsMTUuNSwxOCwxNSwxOHogTTE0LDMwSDRWMjAgICAg - IGgxMFYzMHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgICAgPHBhdGggZD0iTTE0LDEwLjhWMTRINFY0 - aDguMmwyLTJIM0MyLjUsMiwyLDIuNSwyLDN2MTJjMCwwLjUsMC41LDEsMSwxaDEyYzAuNSwwLDEtMC41 - LDEtMVY4LjhMMTQsMTAuOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgIDwvZz4NCiAgICA8L2c+DQog - ICAgPHBvbHlnb24gcG9pbnRzPSI2LDUgNiw4IDEwLDEyIDE4LDQgMTgsMSAxMCw5ICAiIGNsYXNzPSJH - cmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANYDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 - RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm - aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iVXBkYXRlIj4NCiAgICA8ZyBj - bGFzcz0ic3QxIj4NCiAgICAgIDxwYXRoIGQ9Ik0xNiw2aC02VjJoNlY2eiBNMTYsOGgtNnY0aDZWOHog - TTI0LDJoLTZ2NGg2VjJ6IE0yNCwxMlY4aC02djRIMjR6IE0yLDZoNlYySDJWNnogTTIsMThoNnYtNEgy - VjE4eiBNMTYsMTQgICAgTDE2LDE0bC02LDB2NGgyLjhDMTMuNSwxNi40LDE0LjYsMTUsMTYsMTR6IE0y - LDEyaDZWOEgyVjEyeiIgY2xhc3M9IkJsYWNrIiAvPg0KICAgIDwvZz4NCiAgICA8cGF0aCBkPSJNMjcu - NywyMGgySDMwdi02bC0yLjMsMi4zQzI2LjIsMTQuOSwyNC4yLDE0LDIyLDE0Yy00LjQsMC04LDMuNi04 - LDhjMCw0LjQsMy42LDgsOCw4czgtMy42LDgtOGgtMiAgIGMwLDMuMy0yLjcsNi02LDZzLTYtMi43LTYt - NnMyLjctNiw2LTZjMS43LDAsMy4yLDAuNyw0LjIsMS44TDI0LDIwSDI3Ljd6IiBjbGFzcz0iR3JlZW4i - IC8+DQogIDwvZz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFMCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAxMyAxMyIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MTMgMTMiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJs - YWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAzOUMy - Mzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iQXBwb2ludG1l - bnRFbmRDb250aW51ZUFycm93XzFfIj4NCiAgICA8cG9seWdvbiBwb2ludHM9IjIsNyA3LDIgNyw1IDEx - LDUgMTEsOSA3LDkgNywxMiAgIiBjbGFzcz0iQmxhY2siIC8+DQogIDwvZz4NCjwvc3ZnPgs= - - - - 17, 56 - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABsFAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 - RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm - aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iQXV0b21hdGljVXBkYXRlcyI+ - DQogICAgPHBhdGggZD0iTTE1LjYsMjUuMUwxNC42LDI1Yy0xLTAuMi0xLjYtMS0xLjYtMnYtMS4xYy0w - LjMsMC0wLjcsMC4xLTEsMC4xYy00LjQsMC04LTMuNi04LThjMC00LjQsMy42LTgsOC04ICAgYzIuMiww - LDQuMiwwLjksNS42LDIuNEwxNCwxMmg1LjdIMjJoMS44SDI0VjJsLTMuNSwzLjVDMTguMywzLjMsMTUu - MywyLDEyLDJDNS40LDIsMCw3LjQsMCwxNGMwLDYuNiw1LjQsMTIsMTIsMTIgICBjMS4xLDAsMi4yLTAu - MiwzLjMtMC41TDE1LjYsMjUuMXoiIGNsYXNzPSJHcmVlbiIgLz4NCiAgICA8cGF0aCBkPSJNMzEsMjN2 - LTJsLTIuMi0wLjRjLTAuMi0wLjYtMC40LTEuMy0wLjgtMS44bDEuMy0xLjhsLTEuNC0xLjRsLTEuOCwx - LjNjLTAuNS0wLjMtMS4yLTAuNi0xLjgtMC43TDI0LDE0aC0yICAgbC0wLjQsMi4yYy0wLjYsMC4yLTEu - MywwLjQtMS44LDAuN0wxOCwxNS42TDE2LjYsMTdsMS4zLDEuOGMtMC4zLDAuNS0wLjYsMS4yLTAuOCwx - LjhMMTUsMjF2MmwyLjIsMC40YzAuMiwwLjYsMC40LDEuMywwLjgsMS44ICAgTDE2LjcsMjdsMS40LDEu - NGwxLjgtMS4zYzAuNSwwLjMsMS4yLDAuNiwxLjgsMC43TDIyLDMwaDJsMC40LTIuMmMwLjYtMC4yLDEu - My0wLjQsMS44LTAuN2wxLjgsMS4zbDEuNC0xLjRsLTEuMy0xLjggICBjMC4zLTAuNSwwLjYtMS4yLDAu - OC0xLjhMMzEsMjN6IE0yMywyNGMtMS4xLDAtMi0wLjktMi0yczAuOS0yLDItMnMyLDAuOSwyLDJTMjQu - MSwyNCwyMywyNHoiIGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+DQo8L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALoDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJs - YWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAzOUMy - Mzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl - Pg0KICA8ZyBpZD0iUGFnZVNldHVwIj4NCiAgICA8cGF0aCBkPSJNMTkuMiwyNkg4VjZoMTB2NWMwLDAu - NiwwLjQsMSwxLDFoNXY5LjJsMiwyVjExbC03LTdIN0M2LjQsNCw2LDQuNCw2LDV2MjJjMCwwLjYsMC40 - LDEsMSwxaDE0LjJMMTkuMiwyNnoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICA8cGF0aCBkPSJNMjcuNiwy - Ny42bC02LjItNi4yYzAuNC0wLjcsMC42LTEuNSwwLjYtMi40YzAtMi44LTIuMi01LTUtNWMtMC44LDAt - MS41LDAuMi0yLjEsMC41bDIuNywyLjcgICBjMC42LDAuNiwwLjYsMS43LDAsMi40cy0xLjcsMC42LTIu - NCwwbC0yLjctMi43QzEyLjIsMTcuNSwxMiwxOC4yLDEyLDE5YzAsMi44LDIuMiw1LDUsNWMwLjksMCwx - LjctMC4yLDIuNC0wLjZsNi4yLDYuMiAgIGMwLjYsMC42LDEuNCwwLjYsMiwwbDAsMEMyOC4xLDI5LDI4 - LjEsMjguMSwyNy42LDI3LjZ6IiBjbGFzcz0iQmx1ZSIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== - - - - 399, 17 - - - 648, 17 - - - 1056, 17 - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4BAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iU2F2ZSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzIg - MzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cjwvc3R5 - bGU+DQogIDxwYXRoIGQ9Ik0yNyw0aC0zdjEwSDhWNEg1QzQuNCw0LDQsNC40LDQsNXYyMmMwLDAuNiww - LjQsMSwxLDFoMjJjMC42LDAsMS0wLjQsMS0xVjVDMjgsNC40LDI3LjYsNCwyNyw0eiBNMjQsMjRIOHYt - NiAgaDE2VjI0eiBNMTAsNHY4aDEwVjRIMTB6IE0xNCwxMGgtMlY2aDJWMTB6IiBjbGFzcz0iQmxhY2si - IC8+DQo8L3N2Zz4L - - - - 267, 56 - - \ No newline at end of file diff --git a/GUIs.ZooFlow/Modules/Globix/frmGlobixBasicConfig.Designer.vb b/GUIs.ZooFlow/Modules/Globix/frmGlobixBasicConfig.Designer.vb index 0018fdb5..dd71666f 100644 --- a/GUIs.ZooFlow/Modules/Globix/frmGlobixBasicConfig.Designer.vb +++ b/GUIs.ZooFlow/Modules/Globix/frmGlobixBasicConfig.Designer.vb @@ -22,7 +22,7 @@ Partial Class frmGlobixBasicConfig 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. _ Private Sub InitializeComponent() - Dim DataGridViewCellStyle1 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() + Dim DataGridViewCellStyle2 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmGlobixBasicConfig)) Me.OpenFileDialog1 = New System.Windows.Forms.OpenFileDialog() Me.DataGridView1 = New System.Windows.Forms.DataGridView() @@ -84,14 +84,14 @@ Partial Class frmGlobixBasicConfig ' 'DataGridView1 ' - DataGridViewCellStyle1.BackColor = System.Drawing.Color.Aqua - Me.DataGridView1.AlternatingRowsDefaultCellStyle = DataGridViewCellStyle1 + DataGridViewCellStyle2.BackColor = System.Drawing.Color.Aqua + Me.DataGridView1.AlternatingRowsDefaultCellStyle = DataGridViewCellStyle2 Me.DataGridView1.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) Me.DataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize - Me.DataGridView1.Location = New System.Drawing.Point(24, 143) + Me.DataGridView1.Location = New System.Drawing.Point(24, 171) Me.DataGridView1.Name = "DataGridView1" - Me.DataGridView1.Size = New System.Drawing.Size(312, 481) + Me.DataGridView1.Size = New System.Drawing.Size(312, 453) Me.DataGridView1.TabIndex = 7 ' 'LayoutControl1 @@ -119,16 +119,16 @@ Partial Class frmGlobixBasicConfig 'PictureEdit1 ' Me.PictureEdit1.EditValue = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources._1_LOGO_ZOO_FLOW_DROP3 - Me.PictureEdit1.Location = New System.Drawing.Point(364, 166) + Me.PictureEdit1.Location = New System.Drawing.Point(364, 194) Me.PictureEdit1.Name = "PictureEdit1" Me.PictureEdit1.Properties.ShowCameraMenuItem = DevExpress.XtraEditors.Controls.CameraMenuItemVisibility.[Auto] - Me.PictureEdit1.Size = New System.Drawing.Size(642, 458) + Me.PictureEdit1.Size = New System.Drawing.Size(642, 430) Me.PictureEdit1.StyleController = Me.LayoutControl1 Me.PictureEdit1.TabIndex = 11 ' 'ToggleSwitchDropArea ' - Me.ToggleSwitchDropArea.Location = New System.Drawing.Point(364, 143) + Me.ToggleSwitchDropArea.Location = New System.Drawing.Point(364, 171) Me.ToggleSwitchDropArea.Name = "ToggleSwitchDropArea" Me.ToggleSwitchDropArea.Properties.OffText = "Progressiv" Me.ToggleSwitchDropArea.Properties.OnText = "Gemässigt" @@ -148,7 +148,7 @@ Partial Class frmGlobixBasicConfig ' 'ToggleSwitchHotfolder ' - Me.ToggleSwitchHotfolder.Location = New System.Drawing.Point(12, 38) + Me.ToggleSwitchHotfolder.Location = New System.Drawing.Point(12, 52) Me.ToggleSwitchHotfolder.Name = "ToggleSwitchHotfolder" Me.ToggleSwitchHotfolder.Properties.OffText = "Überwachung starten" Me.ToggleSwitchHotfolder.Properties.OnText = "Überwachung aktiv" @@ -158,7 +158,7 @@ Partial Class frmGlobixBasicConfig ' 'ToggleSwitchScanfolder ' - Me.ToggleSwitchScanfolder.Location = New System.Drawing.Point(12, 87) + Me.ToggleSwitchScanfolder.Location = New System.Drawing.Point(12, 115) Me.ToggleSwitchScanfolder.Name = "ToggleSwitchScanfolder" Me.ToggleSwitchScanfolder.Properties.OffText = "Scanfolder überwachen" Me.ToggleSwitchScanfolder.Properties.OnText = "Überwachung aktiv" @@ -168,7 +168,7 @@ Partial Class frmGlobixBasicConfig ' 'btnScanfolder ' - Me.btnScanfolder.Location = New System.Drawing.Point(963, 61) + Me.btnScanfolder.Location = New System.Drawing.Point(963, 75) Me.btnScanfolder.Name = "btnScanfolder" Me.btnScanfolder.Size = New System.Drawing.Size(55, 22) Me.btnScanfolder.StyleController = Me.LayoutControl1 @@ -177,9 +177,9 @@ Partial Class frmGlobixBasicConfig ' 'TextEditScanfolder ' - Me.TextEditScanfolder.Location = New System.Drawing.Point(96, 61) + Me.TextEditScanfolder.Location = New System.Drawing.Point(104, 83) Me.TextEditScanfolder.Name = "TextEditScanfolder" - Me.TextEditScanfolder.Size = New System.Drawing.Size(863, 20) + Me.TextEditScanfolder.Size = New System.Drawing.Size(847, 20) Me.TextEditScanfolder.StyleController = Me.LayoutControl1 Me.TextEditScanfolder.TabIndex = 4 ' @@ -194,9 +194,9 @@ Partial Class frmGlobixBasicConfig ' 'TextEditHotfolder ' - Me.TextEditHotfolder.Location = New System.Drawing.Point(96, 12) + Me.TextEditHotfolder.Location = New System.Drawing.Point(104, 20) Me.TextEditHotfolder.Name = "TextEditHotfolder" - Me.TextEditHotfolder.Size = New System.Drawing.Size(863, 20) + Me.TextEditHotfolder.Size = New System.Drawing.Size(847, 20) Me.TextEditHotfolder.StyleController = Me.LayoutControl1 Me.TextEditHotfolder.TabIndex = 0 ' @@ -214,7 +214,8 @@ Partial Class frmGlobixBasicConfig Me.LayoutControlItem1.Control = Me.TextEditHotfolder Me.LayoutControlItem1.Location = New System.Drawing.Point(0, 0) Me.LayoutControlItem1.Name = "LayoutControlItem1" - Me.LayoutControlItem1.Size = New System.Drawing.Size(951, 26) + Me.LayoutControlItem1.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) + Me.LayoutControlItem1.Size = New System.Drawing.Size(951, 40) Me.LayoutControlItem1.Text = "Ihr Hotfolder" Me.LayoutControlItem1.TextSize = New System.Drawing.Size(72, 13) ' @@ -231,25 +232,26 @@ Partial Class frmGlobixBasicConfig Me.LayoutControlItem2.Control = Me.btnHotfolder Me.LayoutControlItem2.Location = New System.Drawing.Point(951, 0) Me.LayoutControlItem2.Name = "LayoutControlItem2" - Me.LayoutControlItem2.Size = New System.Drawing.Size(59, 26) + Me.LayoutControlItem2.Size = New System.Drawing.Size(59, 40) Me.LayoutControlItem2.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem2.TextVisible = False ' 'LayoutControlItem4 ' Me.LayoutControlItem4.Control = Me.TextEditScanfolder - Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 49) + Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 63) Me.LayoutControlItem4.Name = "LayoutControlItem4" - Me.LayoutControlItem4.Size = New System.Drawing.Size(951, 26) + Me.LayoutControlItem4.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) + Me.LayoutControlItem4.Size = New System.Drawing.Size(951, 40) Me.LayoutControlItem4.Text = "Ihr Scanfolder" Me.LayoutControlItem4.TextSize = New System.Drawing.Size(72, 13) ' 'LayoutControlItem5 ' Me.LayoutControlItem5.Control = Me.btnScanfolder - Me.LayoutControlItem5.Location = New System.Drawing.Point(951, 49) + Me.LayoutControlItem5.Location = New System.Drawing.Point(951, 63) Me.LayoutControlItem5.Name = "LayoutControlItem5" - Me.LayoutControlItem5.Size = New System.Drawing.Size(59, 26) + Me.LayoutControlItem5.Size = New System.Drawing.Size(59, 40) Me.LayoutControlItem5.Text = "..." Me.LayoutControlItem5.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem5.TextVisible = False @@ -257,7 +259,7 @@ Partial Class frmGlobixBasicConfig 'LayoutControlItem6 ' Me.LayoutControlItem6.Control = Me.ToggleSwitchScanfolder - Me.LayoutControlItem6.Location = New System.Drawing.Point(0, 75) + Me.LayoutControlItem6.Location = New System.Drawing.Point(0, 103) Me.LayoutControlItem6.Name = "LayoutControlItem6" Me.LayoutControlItem6.Size = New System.Drawing.Size(1010, 23) Me.LayoutControlItem6.TextSize = New System.Drawing.Size(0, 0) @@ -266,7 +268,7 @@ Partial Class frmGlobixBasicConfig 'LayoutControlItem7 ' Me.LayoutControlItem7.Control = Me.ToggleSwitchHotfolder - Me.LayoutControlItem7.Location = New System.Drawing.Point(0, 26) + Me.LayoutControlItem7.Location = New System.Drawing.Point(0, 40) Me.LayoutControlItem7.Name = "LayoutControlItem7" Me.LayoutControlItem7.Size = New System.Drawing.Size(1010, 23) Me.LayoutControlItem7.TextSize = New System.Drawing.Size(0, 0) @@ -284,9 +286,9 @@ Partial Class frmGlobixBasicConfig 'LayoutControlGroup1 ' Me.LayoutControlGroup1.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem3}) - Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 98) + Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 126) Me.LayoutControlGroup1.Name = "LayoutControlGroup1" - Me.LayoutControlGroup1.Size = New System.Drawing.Size(340, 530) + Me.LayoutControlGroup1.Size = New System.Drawing.Size(340, 502) Me.LayoutControlGroup1.Text = "Blacklist Folderwatch-Files" ' 'LayoutControlItem3 @@ -296,7 +298,7 @@ Partial Class frmGlobixBasicConfig Me.LayoutControlItem3.Control = Me.DataGridView1 Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 0) Me.LayoutControlItem3.Name = "LayoutControlItem3" - Me.LayoutControlItem3.Size = New System.Drawing.Size(316, 485) + Me.LayoutControlItem3.Size = New System.Drawing.Size(316, 457) Me.LayoutControlItem3.Text = "Blacklist Folderwatchfiles" Me.LayoutControlItem3.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem3.TextVisible = False @@ -304,9 +306,9 @@ Partial Class frmGlobixBasicConfig 'LayoutControlGroup2 ' Me.LayoutControlGroup2.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem10, Me.LayoutControlItem11}) - Me.LayoutControlGroup2.Location = New System.Drawing.Point(340, 98) + Me.LayoutControlGroup2.Location = New System.Drawing.Point(340, 126) Me.LayoutControlGroup2.Name = "LayoutControlGroup2" - Me.LayoutControlGroup2.Size = New System.Drawing.Size(670, 530) + Me.LayoutControlGroup2.Size = New System.Drawing.Size(670, 502) Me.LayoutControlGroup2.Text = "Darstellung Drop-Area" ' 'LayoutControlItem10 @@ -325,7 +327,7 @@ Partial Class frmGlobixBasicConfig Me.LayoutControlItem11.Control = Me.PictureEdit1 Me.LayoutControlItem11.Location = New System.Drawing.Point(0, 23) Me.LayoutControlItem11.Name = "LayoutControlItem11" - Me.LayoutControlItem11.Size = New System.Drawing.Size(646, 462) + Me.LayoutControlItem11.Size = New System.Drawing.Size(646, 434) Me.LayoutControlItem11.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.AutoSize Me.LayoutControlItem11.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem11.TextToControlDistance = 0 @@ -358,7 +360,7 @@ Partial Class frmGlobixBasicConfig Me.MaximizeBox = False Me.MinimizeBox = False Me.Name = "frmGlobixBasicConfig" - Me.Text = "Basiskonfiguration Globix" + Me.Text = "Basiskonfiguration File Flow" Me.TopMost = True CType(Me.DataGridView1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).EndInit() diff --git a/GUIs.ZooFlow/Modules/Globix/frmGlobixNameconvention.resx.bak b/GUIs.ZooFlow/Modules/Globix/frmGlobixNameconvention.resx.bak deleted file mode 100644 index 5b4457f6..00000000 --- a/GUIs.ZooFlow/Modules/Globix/frmGlobixNameconvention.resx.bak +++ /dev/null @@ -1,219 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAD0DAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJs - YWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAzOUMy - Mzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iRGVsZXRlIj4N - CiAgICA8Zz4NCiAgICAgIDxwYXRoIGQ9Ik0xOC44LDE2bDYuOS02LjljMC40LTAuNCwwLjQtMSwwLTEu - NGwtMS40LTEuNGMtMC40LTAuNC0xLTAuNC0xLjQsMEwxNiwxMy4yTDkuMSw2LjNjLTAuNC0wLjQtMS0w - LjQtMS40LDAgICAgTDYuMyw3LjdjLTAuNCwwLjQtMC40LDEsMCwxLjRsNi45LDYuOWwtNi45LDYuOWMt - MC40LDAuNC0wLjQsMSwwLDEuNGwxLjQsMS40YzAuNCwwLjQsMSwwLjQsMS40LDBsNi45LTYuOWw2Ljks - Ni45ICAgIGMwLjQsMC40LDEsMC40LDEuNCwwbDEuNC0xLjRjMC40LTAuNCwwLjQtMSwwLTEuNEwxOC44 - LDE2eiIgY2xhc3M9IlJlZCIgLz4NCiAgICA8L2c+DQogIDwvZz4NCjwvc3ZnPgs= - - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - xAAADsQBlSsOGwAAAFxJREFUOE/NjFEKgDAMQ3e23v88/Y1YOslqhE1hGHgfS5fXAHxCliuMD4q7o5Kn - yJTAzC72CM5PTBUwfXMT8OiJnwuYOmL6ZhBwlCBPkT2CSp4iUvAGWa4gy3nQDiNEflNl/3oXAAAAAElF - TkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - xAAADsQBlSsOGwAAAFxJREFUOE/NjFEKgDAMQ3e23v88/Y1YOslqhE1hGHgfS5fXAHxCliuMD4q7o5Kn - yJTAzC72CM5PTBUwfXMT8OiJnwuYOmL6ZhBwlCBPkT2CSp4iUvAGWa4gy3nQDiNEflNl/3oXAAAAAElF - TkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - xAAADsQBlSsOGwAAAFxJREFUOE/NjFEKgDAMQ3e23v88/Y1YOslqhE1hGHgfS5fXAHxCliuMD4q7o5Kn - yJTAzC72CM5PTBUwfXMT8OiJnwuYOmL6ZhBwlCBPkT2CSp4iUvAGWa4gy3nQDiNEflNl/3oXAAAAAElF - TkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - xAAADsQBlSsOGwAAAFxJREFUOE/NjFEKgDAMQ3e23v88/Y1YOslqhE1hGHgfS5fXAHxCliuMD4q7o5Kn - yJTAzC72CM5PTBUwfXMT8OiJnwuYOmL6ZhBwlCBPkT2CSp4iUvAGWa4gy3nQDiNEflNl/3oXAAAAAElF - TkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - xAAADsQBlSsOGwAAAFxJREFUOE/NjFEKgDAMQ3e23v88/Y1YOslqhE1hGHgfS5fXAHxCliuMD4q7o5Kn - yJTAzC72CM5PTBUwfXMT8OiJnwuYOmL6ZhBwlCBPkT2CSp4iUvAGWa4gy3nQDiNEflNl/3oXAAAAAElF - TkSuQmCC - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAOsCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku - WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz - OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl - Pg0KICA8ZyBpZD0iRXhwb3J0Ij4NCiAgICA8cGF0aCBkPSJNMTAsMTJINlY2aDRWMTJ6IE0yMiwxMnY2 - djljMCwwLjYtMC40LDEtMSwxSDFjLTAuNiwwLTEtMC40LTEtMVY3YzAtMC42LDAuNC0xLDEtMWgzdjho - MTR2LTJIMjJ6IE0xOCwxOEg0ICAgdjZoMTRWMTh6IiBjbGFzcz0iQmxhY2siIC8+DQogICAgPHBvbHln - b24gcG9pbnRzPSIxNiwxMCAyNCwxMCAyNCwxNCAzMiw4IDI0LDIgMjQsNiAxNiw2ICAiIGNsYXNzPSJH - cmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPoBAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iQ2xlYXJIZWFkZXJBbmRGb290ZXIiIHN0eWxlPSJlbmFibGUtYmFja2dy - b3VuZDpuZXcgMCAwIDMyIDMyIj4NCiAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5SZWR7ZmlsbDoj - RDExQzFDO30KPC9zdHlsZT4NCiAgPHBhdGggZD0iTTI3LDRINUM0LjUsNCw0LDQuNSw0LDV2MjJjMCww - LjUsMC41LDEsMSwxaDIyYzAuNSwwLDEtMC41LDEtMVY1QzI4LDQuNSwyNy41LDQsMjcsNHogTTIyLDIw - bC0yLDJsLTQtNGwtNCw0ICBsLTItMmw0LTRsLTQtNGwyLTJsNCw0bDQtNGwyLDJsLTQsNEwyMiwyMHoi - IGNsYXNzPSJSZWQiIC8+DQo8L3N2Zz4L - - - \ No newline at end of file diff --git a/GUIs.ZooFlow/Modules/Globix/frmGlobix_Index.resx.bak b/GUIs.ZooFlow/Modules/Globix/frmGlobix_Index.resx.bak deleted file mode 100644 index ca0e32ad..00000000 --- a/GUIs.ZooFlow/Modules/Globix/frmGlobix_Index.resx.bak +++ /dev/null @@ -1,525 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPcFAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkdyZWVue2ZpbGw6IzAzOUMyMzt9Cgku - QmxhY2t7ZmlsbDojNzI3MjcyO30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5ZZWxsb3d7ZmlsbDojRkZC - MTE1O30KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iSXRlbVR5cGVD - aGVja2VkIj4NCiAgICA8Zz4NCiAgICAgIDxnPg0KICAgICAgICA8cmVjdCB4PSIyMCIgeT0iOCIgd2lk - dGg9IjEwIiBoZWlnaHQ9IjQiIHJ4PSIwIiByeT0iMCIgY2xhc3M9IkJsYWNrIiAvPg0KICAgICAgICA8 - cmVjdCB4PSIyMCIgeT0iMjIiIHdpZHRoPSIxMCIgaGVpZ2h0PSI0IiByeD0iMCIgcnk9IjAiIGNsYXNz - PSJCbGFjayIgLz4NCiAgICAgICAgPHBhdGggZD0iTTE1LDE4SDNjLTAuNSwwLTEsMC41LTEsMXYxMmMw - LDAuNSwwLjUsMSwxLDFoMTJjMC41LDAsMS0wLjUsMS0xVjE5QzE2LDE4LjUsMTUuNSwxOCwxNSwxOHog - TTE0LDMwSDRWMjAgICAgIGgxMFYzMHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgICAgPHBhdGggZD0i - TTE0LDEwLjhWMTRINFY0aDguMmwyLTJIM0MyLjUsMiwyLDIuNSwyLDN2MTJjMCwwLjUsMC41LDEsMSwx - aDEyYzAuNSwwLDEtMC41LDEtMVY4LjhMMTQsMTAuOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgIDwv - Zz4NCiAgICAgIDxnPg0KICAgICAgICA8cmVjdCB4PSIyMCIgeT0iOCIgd2lkdGg9IjEwIiBoZWlnaHQ9 - IjQiIHJ4PSIwIiByeT0iMCIgY2xhc3M9IkJsYWNrIiAvPg0KICAgICAgICA8cmVjdCB4PSIyMCIgeT0i - MjIiIHdpZHRoPSIxMCIgaGVpZ2h0PSI0IiByeD0iMCIgcnk9IjAiIGNsYXNzPSJCbGFjayIgLz4NCiAg - ICAgICAgPHBhdGggZD0iTTE1LDE4SDNjLTAuNSwwLTEsMC41LTEsMXYxMmMwLDAuNSwwLjUsMSwxLDFo - MTJjMC41LDAsMS0wLjUsMS0xVjE5QzE2LDE4LjUsMTUuNSwxOCwxNSwxOHogTTE0LDMwSDRWMjAgICAg - IGgxMFYzMHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgICAgPHBhdGggZD0iTTE0LDEwLjhWMTRINFY0 - aDguMmwyLTJIM0MyLjUsMiwyLDIuNSwyLDN2MTJjMCwwLjUsMC41LDEsMSwxaDEyYzAuNSwwLDEtMC41 - LDEtMVY4LjhMMTQsMTAuOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgIDwvZz4NCiAgICA8L2c+DQog - ICAgPHBvbHlnb24gcG9pbnRzPSI2LDUgNiw4IDEwLDEyIDE4LDQgMTgsMSAxMCw5ICAiIGNsYXNzPSJH - cmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIsDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku - Qmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAzOUMyMzt9CgkuWWVsbG93e2ZpbGw6I0ZG - QjExNTt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iUHJldmlldyI+ - DQogICAgPHBhdGggZD0iTTIxLjQsMjhIMThsMCwwbDAsMEg2VjRoMTR2NWMwLDAuNiwwLjQsMSwxLDFo - NXYxMy40bDIsMlY5bC03LTdINUM0LjQsMiw0LDIuNCw0LDN2MjZjMCwwLjYsMC40LDEsMSwxaDE4LjQg - ICBMMjEuNCwyOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICA8cGF0aCBkPSJNMTgsMTRjMy4zLDAsNiwy - LjcsNiw2YzAsMS4yLTAuNCwyLjMtMSwzLjNsNC42LDQuNmMwLjUsMC41LDAuNSwxLjMsMCwxLjdjLTAu - NSwwLjUtMS4zLDAuNS0xLjcsMEwyMS4zLDI1ICAgYy0wLjksMC42LTIuMSwxLTMuMywxYy0zLjMsMC02 - LTIuNy02LTZDMTIsMTYuNywxNC43LDE0LDE4LDE0eiBNMTgsMjRjMi4yLDAsNC0xLjgsNC00cy0xLjgt - NC00LTRzLTQsMS44LTQsNFMxNS44LDI0LDE4LDI0eiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwv - c3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPYCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDI1 - IDI1IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl - ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiM2NDYzNjM7fS5jbHMtMntmaWxsOiNhNTI0MzE7fS5j - bHMtM3tmaWxsOm5vbmU7c3Ryb2tlOiM2NDYzNjM7c3Ryb2tlLXdpZHRoOjJweDt9PC9zdHlsZT4NCiAg - PC9kZWZzPg0KICA8cGF0aCBkPSJNMTguNjExNiwyMy41NDY0SDBWMy41OEgxOC42MTE2Wk0xLjk2Mzks - MjEuNTgyNkgxNi42NDc3VjUuNTQzM0gxLjk2MzlaIiBjbGFzcz0iY2xzLTEiIC8+DQogIDxwb2x5bGlu - ZSBwb2ludHM9IjIwLjIwNiAyMy41NDcgMjUgMTguNzUzIDIwLjIwNiAxMy45NTkiIGNsYXNzPSJjbHMt - MiIgLz4NCiAgPGxpbmUgeDE9IjQuMDQzOCIgeTE9IjEwLjE3MDkiIHgyPSIxNC41NjgiIHkyPSIxMC4x - NzA5IiBjbGFzcz0iY2xzLTMiIC8+DQogIDxsaW5lIHgxPSI0LjA0MzgiIHkxPSIxNC4wOTg2IiB4Mj0i - MTQuNTY4IiB5Mj0iMTQuMDk4NiIgY2xhc3M9ImNscy0zIiAvPg0KICA8bGluZSB4MT0iNC4wNDM4IiB5 - MT0iMTguMDI2MyIgeDI9IjE0LjU2OCIgeTI9IjE4LjAyNjMiIGNsYXNzPSJjbHMtMyIgLz4NCiAgPHJl - Y3QgeD0iMTAuNDA1NiIgeT0iMS40NTMzIiB3aWR0aD0iMTMuNzQ3IiBoZWlnaHQ9IjYuMjE2NiIgcng9 - IjAiIHJ5PSIwIiBjbGFzcz0iY2xzLTIiIC8+DQo8L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAEMEAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku - WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz - OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl - Pg0KICA8ZyBpZD0iV2luZG93cyI+DQogICAgPHBhdGggZD0iTTE4LDE4LjFWMTZoMnYwLjlDMTkuMywx - Ny4yLDE4LjYsMTcuNiwxOCwxOC4xeiBNMTQuNywyNkgyVjE2SDB2MTFjMCwwLjUsMC41LDEsMSwxaDE1 - LjEgICBDMTUuNSwyNy4zLDE1LjEsMjYuNiwxNC43LDI2eiBNMjQsMThjNS43LDAsOCw2LDgsNnMtMi4z - LDYtOCw2Yy01LjcsMC04LTYtOC02UzE4LjMsMTgsMjQsMTggTTI0LDIwYy0zLjMsMC01LjEsMi43LTUu - OCw0ICAgYzAuNywxLjMsMi41LDQsNS44LDRjMy4zLDAsNS4xLTIuNyw1LjgtNEMyOS4xLDIyLjcsMjcu - MywyMCwyNCwyMEwyNCwyMHogTTI0LDIyYy0xLjEsMC0yLDAuOS0yLDJzMC45LDIsMiwyYzEuMSwwLDIt - MC45LDItMiAgIFMyNS4xLDIyLDI0LDIyeiBNMjYsMTYuMlY4aDJ2OC45QzI3LjQsMTYuNiwyNi43LDE2 - LjQsMjYsMTYuMnogTTEwLDhIOHYyaDJWOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICA8cGF0aCBkPSJN - MCwxNnYtNWMwLTAuNSwwLjUtMSwxLTFoMThjMC41LDAsMSwwLjUsMSwxdjVIMHogTTI4LDhWM2MwLTAu - NS0wLjUtMS0xLTFIOUM4LjUsMiw4LDIuNSw4LDN2NUgyOHoiIGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+ - DQo8L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAGgFAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDI1 - IDI1IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl - ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiM2NDYzNjM7fS5jbHMtMntmaWxsOiNhNTI0MzE7fTwv - c3R5bGU+DQogIDwvZGVmcz4NCiAgPHBhdGggZD0iTTE5LjQ0LDEzLjA4SDUuMzU1M1YxLjUyM0gxOS40 - NFpNNy4xOTc3LDExLjE0ODJoMTAuNFYzLjQ1NDZINy4xOTc3WiIgY2xhc3M9ImNscy0xIiAvPg0KICA8 - cGF0aCBkPSJNMTcuMDY4MiwyMy40NzdjLTQuMTE2NiwwLTcuMzI1NS00LjIxNTEtNy40Ni00LjM5NDhs - LS40NzE0LS42Mjg3LjQ3MTQtLjYyODhjLjEzNDktLjE4LDMuMzQzOC00LjM5NDMsNy40Ni00LjM5NDNz - Ny4zMjU1LDQuMjE0Niw3LjQ2LDQuMzk0M0wyNSwxOC40NTM1bC0uNDcxNC42Mjg3QzI0LjM5MzcsMTku - MjYxOSwyMS4xODQ4LDIzLjQ3NywxNy4wNjgyLDIzLjQ3N1ptLTUuNDkyMS01LjAyMzVjLjk2MjYsMS4w - NDY2LDMuMTAwOSwzLjAyODcsNS40OTIxLDMuMDI4N1MyMS41OTc3LDE5LjUsMjIuNTYsMTguNDUzNWMt - Ljk2MjYtMS4wNDYxLTMuMTAxLTMuMDI4My01LjQ5MjEtMy4wMjgzUzEyLjUzODcsMTcuNDA3NCwxMS41 - NzYxLDE4LjQ1MzVaIiBjbGFzcz0iY2xzLTEiIC8+DQogIDxwYXRoIGQ9Ik0xOS42NTMsMTguNDUzNWEy - LjY5ODgsMi42OTg4LDAsMCwwLTIuNTg1My0yLjc5OTIsMi40MjUxLDIuNDI1MSwwLDAsMC0xLjM1OTUu - NDIyNSwxLjM1OSwxLjM1OSwwLDAsMSwuMjYzOS44MDYsMS4yNjEsMS4yNjEsMCwwLDEtMS4yMDczLDEu - MzA4MSwxLjEwMTcsMS4xMDE3LDAsMCwxLS4yNjctLjAzNDhjLS4wMDkyLjA5NzctLjAxNDYuMTk3MS0u - MDE0Ni4yOTc0YTIuNjk4MSwyLjY5ODEsMCwwLDAsMi41ODQ1LDIuNzk5MSwyLjY5ODcsMi42OTg3LDAs - MCwwLDIuNTg1My0yLjc5OTEiIGNsYXNzPSJjbHMtMSIgLz4NCiAgPHBhdGggZD0iTTkuNjA3OCwxOS4w - ODIybC0uNDcxNC0uNjI4Ny4yMjA5LS4yOTQ3SDEuODQyNHYtNy45NDZIMTIuMjQxOHY1LjA0MzRhMTAu - NjIyNywxMC42MjI3LDAsMCwxLDEuODQyNC0xLjExNDJWOC4yMThIMFYyMC4xNTM2SDEwLjU0MjhBMTIu - Mzc4MywxMi4zNzgzLDAsMCwxLDkuNjA3OCwxOS4wODIyWiIgY2xhc3M9ImNscy0xIiAvPg0KICA8cmVj - dCB4PSI1LjM1NTMiIHk9IjEuNTIzIiB3aWR0aD0iMTQuMDg0MiIgaGVpZ2h0PSI1Ljk2MjciIHJ4PSIw - IiByeT0iMCIgY2xhc3M9ImNscy0yIiAvPg0KICA8cmVjdCB4PSIwIiB5PSI4LjIxOCIgd2lkdGg9IjE0 - LjA5OTQiIGhlaWdodD0iNS45NjI3IiByeD0iMCIgcnk9IjAiIGNsYXNzPSJjbHMtMiIgLz4NCjwvc3Zn - Pgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFkCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDI1 - IDI1IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl - ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiM2NDYzNjM7fS5jbHMtMntmaWxsOiNhNTI0MzE7fTwv - c3R5bGU+DQogIDwvZGVmcz4NCiAgPHBvbHlnb24gcG9pbnRzPSIxMi4wNjEgMjEuMjMgMy4zNTUgMjEu - MjMgMy4zNTUgMi43MyAxOS44NTUgMi43MyAxOS44NTUgMTMuMjk3IDIxLjg1NSAxMS4yNjIgMjEuODU1 - IDAuNzMgMS4zNTUgMC43MyAxLjM1NSAyMy4yMyAxMC4wOTYgMjMuMjMgMTIuMDYxIDIxLjIzIiBjbGFz - cz0iY2xzLTEiIC8+DQogIDxwb2x5Z29uIHBvaW50cz0iMjMuNjQ1IDE1LjExMSAyMi4yMzEgMTMuNjk3 - IDE4LjM1OCAxNy41NjkgMTQuNDg2IDEzLjY5NiAxMy4wNzEgMTUuMTEgMTYuOTQ0IDE4Ljk4MyAxMy4w - NzIgMjIuODU1IDE0LjQ4NiAyNC4yNjkgMTguMzU4IDIwLjM5NyAyMi4yMzEgMjQuMjcgMjMuNjQ1IDIy - Ljg1NiAxOS43NzIgMTguOTgzIDIzLjY0NSAxNS4xMTEiIGNsYXNzPSJjbHMtMiIgLz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAGICAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDI1 - IDI1IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl - ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiM2NDYzNjM7fS5jbHMtMntmaWxsOiNhNTI0MzE7fTwv - c3R5bGU+DQogIDwvZGVmcz4NCiAgPHBhdGggZD0iTTIyLjc1LDIzLjIzSDIuMjVWLjczaDIwLjVabS0x - OC41LTJoMTYuNVYyLjczSDQuMjVaIiBjbGFzcz0iY2xzLTEiIC8+DQogIDxwYXRoIGQ9Ik0xNy44NTg2 - LDE4LjcxNjdoLTJhMy4zNTg5LDMuMzU4OSwwLDEsMC02LjcxNzgsMGgtMmE1LjM1ODksNS4zNTg5LDAs - MSwxLDEwLjcxNzgsMFoiIGNsYXNzPSJjbHMtMiIgLz4NCiAgPHBhdGggZD0iTTEyLjUsMTIuMzgyN2E0 - LjA3LDQuMDcsMCwxLDEsMi44NzY5LTEuMTkxOUE0LjA0MzksNC4wNDM5LDAsMCwxLDEyLjUsMTIuMzgy - N1ptMC02LjEzOTFhMi4wNywyLjA3LDAsMCwwLTEuNDYzOSwzLjUzMzIsMi4xMjA1LDIuMTIwNSwwLDAs - MCwyLjkyNjgsMGgwQTIuMDcsMi4wNywwLDAsMCwxMi41LDYuMjQzNloiIGNsYXNzPSJjbHMtMiIgLz4N - Cjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIUDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDI1 - IDI1IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8xIj4NCiAgPGRl - ZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiM2NDYzNjM7fS5jbHMtMntmaWxsOiNhNTI0MzE7fTwv - c3R5bGU+DQogIDwvZGVmcz4NCiAgPHBvbHlnb24gcG9pbnRzPSIyMC43MDcgMjMuMjMgMjAuNzA3IDIx - LjgzMSAxOS4wMDYgMjAuMTE5IDE5LjAwNiAyMS4yMyAxNy4yOTEgMjEuMjMgMTkuMjc4IDIzLjIzIDIw - LjcwNyAyMy4yMyIgY2xhc3M9ImNscy0xIiAvPg0KICA8cG9seWdvbiBwb2ludHM9IjE0LjQ3MyAyMS4y - MyA0Ljk3MyAyMS4yMyA0Ljk3MyAyLjczIDExLjk4OSAyLjczIDExLjk4OSA5LjQ0NyAxOS4wMDYgOS40 - NDcgMTkuMDA2IDE3LjI4IDIwLjcwNyAxOC45OTMgMjAuNzA3IDkuNDQ3IDExLjk4OSAwLjczIDMuMjcy - IDAuNzMgMy4yNzIgMjMuMjMgMTYuNDU5IDIzLjIzIDE0LjQ3MyAyMS4yMyIgY2xhc3M9ImNscy0xIiAv - Pg0KICA8cmVjdCB4PSIxNy40Mjg0IiB5PSIxNy4yNzk5IiB3aWR0aD0iMS45OTk4IiBoZWlnaHQ9Ijcu - MzUyOSIgcng9IjAiIHJ5PSIwIiBjbGFzcz0iY2xzLTIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC05LjQx - NDQsIDE5LjA3Mikgcm90YXRlKC00NC44MDA5LCAwLCAwKSIgLz4NCiAgPHBhdGggZD0iTTEyLjg0MTYs - MjAuMzgwOWE0Ljk5NzgsNC45OTc4LDAsMSwxLDMuNTM1Ni0xLjQ2MjRBNC45ODQ3LDQuOTg0NywwLDAs - MSwxMi44NDE2LDIwLjM4MDlabTAtNy45OTYxYTIuOTk4MywyLjk5ODMsMCwxLDAsMi4xMjE2Ljg3NjlB - Mi45OSwyLjk5LDAsMCwwLDEyLjg0MTYsMTIuMzg0OFoiIGNsYXNzPSJjbHMtMiIgLz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAOMCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD - MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9IlNpbmdsZVBhZ2VWaWV3Ij4NCiAgICA8cGF0aCBk - PSJNMjcsMEgzQzIuNCwwLDIsMC40LDIsMXYyOGMwLDAuNiwwLjQsMSwxLDFoMjRjMC42LDAsMS0wLjQs - MS0xVjFDMjgsMC40LDI3LjYsMCwyNywweiBNMjYsMjhINFYyaDIyVjI4eiIgY2xhc3M9IkJsYWNrIiAv - Pg0KICAgIDxwYXRoIGQ9Ik0yMiw4SDhWNmgxNFY4eiBNMjIsMTBIOHYyaDE0VjEweiBNMjIsMTRIOHYy - aDE0VjE0eiBNMjIsMThIOHYyaDE0VjE4eiBNMjIsMjJIOHYyaDE0VjIyeiIgY2xhc3M9IkJsdWUiIC8+ - DQogIDwvZz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABIDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD - MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw - MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu - bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iSGlnaEltcG9ydGFuY2UiPg0KICAg - IDxwYXRoIGQ9Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMy - My43LDIsMTYsMnogTTE2LDI0Yy0xLjEsMC0yLTAuOS0yLTJzMC45LTIsMi0yczIsMC45LDIsMiAgIFMx - Ny4xLDI0LDE2LDI0eiBNMTgsMThoLTRWOGg0VjE4eiIgY2xhc3M9IlJlZCIgLz4NCiAgPC9nPg0KPC9z - dmc+Cw== - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABsDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD - MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw - MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu - bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iQWJvdXQiPg0KICAgIDxwYXRoIGQ9 - Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMyMy43LDIsMTYs - MnogTTE2LDZjMS4xLDAsMiwwLjksMiwycy0wLjksMi0yLDJzLTItMC45LTItMiAgIFMxNC45LDYsMTYs - NnogTTIwLDI0aC04di0yaDJ2LThoLTJ2LTJoMmg0djEwaDJWMjR6IiBjbGFzcz0iQmx1ZSIgLz4NCiAg - PC9nPg0KPC9zdmc+Cw== - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPcFAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkdyZWVue2ZpbGw6IzAzOUMyMzt9Cgku - QmxhY2t7ZmlsbDojNzI3MjcyO30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5ZZWxsb3d7ZmlsbDojRkZC - MTE1O30KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iSXRlbVR5cGVD - aGVja2VkIj4NCiAgICA8Zz4NCiAgICAgIDxnPg0KICAgICAgICA8cmVjdCB4PSIyMCIgeT0iOCIgd2lk - dGg9IjEwIiBoZWlnaHQ9IjQiIHJ4PSIwIiByeT0iMCIgY2xhc3M9IkJsYWNrIiAvPg0KICAgICAgICA8 - cmVjdCB4PSIyMCIgeT0iMjIiIHdpZHRoPSIxMCIgaGVpZ2h0PSI0IiByeD0iMCIgcnk9IjAiIGNsYXNz - PSJCbGFjayIgLz4NCiAgICAgICAgPHBhdGggZD0iTTE1LDE4SDNjLTAuNSwwLTEsMC41LTEsMXYxMmMw - LDAuNSwwLjUsMSwxLDFoMTJjMC41LDAsMS0wLjUsMS0xVjE5QzE2LDE4LjUsMTUuNSwxOCwxNSwxOHog - TTE0LDMwSDRWMjAgICAgIGgxMFYzMHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgICAgPHBhdGggZD0i - TTE0LDEwLjhWMTRINFY0aDguMmwyLTJIM0MyLjUsMiwyLDIuNSwyLDN2MTJjMCwwLjUsMC41LDEsMSwx - aDEyYzAuNSwwLDEtMC41LDEtMVY4LjhMMTQsMTAuOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgIDwv - Zz4NCiAgICAgIDxnPg0KICAgICAgICA8cmVjdCB4PSIyMCIgeT0iOCIgd2lkdGg9IjEwIiBoZWlnaHQ9 - IjQiIHJ4PSIwIiByeT0iMCIgY2xhc3M9IkJsYWNrIiAvPg0KICAgICAgICA8cmVjdCB4PSIyMCIgeT0i - MjIiIHdpZHRoPSIxMCIgaGVpZ2h0PSI0IiByeD0iMCIgcnk9IjAiIGNsYXNzPSJCbGFjayIgLz4NCiAg - ICAgICAgPHBhdGggZD0iTTE1LDE4SDNjLTAuNSwwLTEsMC41LTEsMXYxMmMwLDAuNSwwLjUsMSwxLDFo - MTJjMC41LDAsMS0wLjUsMS0xVjE5QzE2LDE4LjUsMTUuNSwxOCwxNSwxOHogTTE0LDMwSDRWMjAgICAg - IGgxMFYzMHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgICAgPHBhdGggZD0iTTE0LDEwLjhWMTRINFY0 - aDguMmwyLTJIM0MyLjUsMiwyLDIuNSwyLDN2MTJjMCwwLjUsMC41LDEsMSwxaDEyYzAuNSwwLDEtMC41 - LDEtMVY4LjhMMTQsMTAuOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICAgIDwvZz4NCiAgICA8L2c+DQog - ICAgPHBvbHlnb24gcG9pbnRzPSI2LDUgNiw4IDEwLDEyIDE4LDQgMTgsMSAxMCw5ICAiIGNsYXNzPSJH - cmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIgJAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDk0 - LjEzNzcgNDguOTI1IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8x - Ij4NCiAgPGRlZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiMxZDFkMWI7fS5jbHMtMntmaWxsOiNh - NTI0MzE7fS5jbHMtMywuY2xzLTR7ZmlsbDpub25lO3N0cm9rZTojMWQxZDFiO3N0cm9rZS13aWR0aDoy - cHg7fS5jbHMtM3tzdHJva2UtbWl0ZXJsaW1pdDoxMDt9PC9zdHlsZT4NCiAgPC9kZWZzPg0KICA8cGF0 - aCBkPSJNNDYuNjU0OCwyNy4yMDY5aC0yLjU1OWwtMS40NDksNC45OTVoLS4wMjVsLTEuMzI3LTQuOTk1 - aC0xLjcwNmwtMS4zMjgsNC45OTVoLS4wMjRsLTEuNDUtNC45OTVoLTIuNTU4bDIuODAyLDguNzcxaDIu - MzE0bDEuMDg1LTQuNjI5aC4wMjRsMS4wODQsNC42MjloMi4zMTVabS0xNC44NjIsNC4zODZhMi4yMDQ3 - LDIuMjA0NywwLDEsMS00LjM4NSwwLDIuMjA0OCwyLjIwNDgsMCwxLDEsNC4zODUsMG0yLjQzNiwwYTQu - NjI5LDQuNjI5LDAsMSwwLTQuNjI5LDQuNjI5LDQuNTUxMSw0LjU1MTEsMCwwLDAsNC42MjktNC42Mjlt - LTkuNjIzLDIuMTkzaC0yLjgwMnYtNi41NzloLTIuNDM2djguNzcxaDQuOTk0Wk0xOC4zOTI4LDI5LjRs - LS4yNDQtMi4xOTNoLTUuMjM4djguNzcxaDIuNDM2di0zLjQxMWgyLjY4MXYtMi4wNzFoLTIuNjgxVjI5 - LjRaIiBjbGFzcz0iY2xzLTEiIC8+DQogIDxwYXRoIGQ9Ik00Ni4wNDUsMjMuNjMzNUg0M3YtMS4yMTho - Mi42OHYtMi4wNzFINDN2LTEuMDk2aDMuMDQ1bC0uMjQ0LTIuMTkzSDQwLjU2M3Y4Ljc3MWg1LjIzOFpt - LTYuNjM5LDB2LTMuMTY3SDM1LjUwOGwtLjI0NCwxLjk0OUgzNi45N3YuNzMxYTIuMDc4LDIuMDc4LDAs - MCwxLTEuNzA2LjczMSwyLjIzMjcsMi4yMzI3LDAsMCwxLTIuMTkzLTIuNDM3LDIuMjUsMi4yNSwwLDAs - MSwyLjE5My0yLjQzNiwyLjU1LDIuNTUsMCwwLDEsMS45NDkuOTc1bDEuNDYyLTEuNzA2YTQuMDg4OCw0 - LjA4ODgsMCwwLDAtMy40MTEtMS40NjIsNC40ODI5LDQuNDgyOSwwLDAsMC00LjYyOSw0LjY0Miw0LjQy - MzgsNC40MjM4LDAsMCwwLDQuMzg2LDQuNjE3LDQuNjkzNCw0LjY5MzQsMCwwLDAsNC4zODUtMi40Mzdt - LTEyLjI1My0xLjA5NkgyNS43MTVsLjcwNy0yLjQzN2guMDI0Wm0zLjU0NSwzLjI4OS0zLjA0Ni04Ljc3 - MUgyNS4yMTZsLTMuMDQ1LDguNzcxaDIuNTU4bC40MTQtMS4zNGgyLjU4MmwuNDE1LDEuMzRabS04LjUy - Ny0yLjE5M0gxOS4zNjl2LTYuNTc4SDE2LjkzMnY4Ljc3MWg0Ljk5NVptLTguNzQ3LS43NjdhLjc4Njku - Nzg2OSwwLDAsMS0uNzY3Ljg3N2gtLjk2M1YyMS45OWguODUzYS44NzMuODczLDAsMCwxLC44NzcuODc3 - bS0uMjE5LTMuMDdhLjcyODEuNzI4MSwwLDAsMS0uNzY4Ljc2N2gtLjc0M3YtMS41MzVoLjc0M2EuNzQy - NS43NDI1LDAsMCwxLC43NjguNzY4bTIuNzUzLDMuMzVhMi4zNTE2LDIuMzUxNiwwLDAsMC0xLjQzOC0y - LjEzMnYtLjAyNGExLjY1NTQsMS42NTU0LDAsMCwwLC45NTEtMS43NDJjMC0xLjI0My0xLjA5Ny0yLjE5 - My0yLjY4LTIuMTkzSDkuMjU4djguNzcxaDMuODk4YTIuNjI1NSwyLjYyNTUsMCwwLDAsMi44MDItMi42 - OG0tMTAuOTc2LS42MDlIMy41NDVsLjcwNi0yLjQzN2guMDI1Wm0zLjU0NSwzLjI4OS0zLjA0Ni04Ljc3 - MUgzLjA0NUwwLDI1LjgyNjVIMi41NThsLjQxNC0xLjM0SDUuNTU1bC40MTQsMS4zNFoiIGNsYXNzPSJj - bHMtMiIgLz4NCiAgPHBvbHlnb24gcG9pbnRzPSI1Mi4zNzIgNDguOTI2IDk0LjEzOCAyNC40NjMgNTIu - MzcyIDAgNTIuMzcyIDQ4LjkyNiIgY2xhc3M9ImNscy0yIiAvPg0KICA8cGF0aCBkPSJNNTcuOTUxMSwy - MC45MzE4YTEzLjgxLDEzLjgxLDAsMCwwLDEuMzM3LDUuODMxLDExLjYyLDExLjYyLDAsMCwwLDYuMDE4 - LDUuNzU4Yy4xMTYuMDUxLjIyNy41NTQuMzA5LjY0OGExLjY3NjgsMS42NzY4LDAsMCwwLDIuNTA0LjAx - MmMuMDkyLS4xMDQuMjE5LS42MTMuMzQ5LS42NjlhMTEuNjEzNCwxMS42MTM0LDAsMCwwLDUuNDU1LTQu - NzU1LDEzLjU0ODMsMTMuNTQ4MywwLDAsMCwxLjg2OS02LjgyNVoiIGNsYXNzPSJjbHMtMyIgLz4NCiAg - PHBhdGggZD0iTTc3LjEwNDgsMTguMDE4Yy0uMDA0LS41MTMtLjAxLS40MjMuMDA2LS45MTlhNS42MzA5 - LDUuNjMwOSwwLDAsMC0uODc1LTMuMjg4LDYuNDExMiw2LjQxMTIsMCwwLDAtNS4xMTctMy4wMzljLS44 - Ni0uMDczLTcuNjAyLS4wNDMtOC4zMzUtLjA0MWE3LjU0ODEsNy41NDgxLDAsMCwwLTIuMjUxLjMzOCw2 - LjE4MjIsNi4xODIyLDAsMCwwLTQuNDEyLDUuNTc2Yy0uMDExLjY1Ni0uMDA4LjcxNy0uMDA2LDEuMzcz - WiIgY2xhc3M9ImNscy0zIiAvPg0KICA8cGF0aCBkPSJNNjcuMTEzNSw4Ljg2NzRzLS4xMTctNS4wOTgs - My4wMTEtNS41NjIiIGNsYXNzPSJjbHMtNCIgLz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIgJAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgdmlld0JveD0iMCAwIDk0 - LjEzNzcgNDguOTI1IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJFYmVuZV8x - Ij4NCiAgPGRlZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiMxZDFkMWI7fS5jbHMtMntmaWxsOiNh - NTI0MzE7fS5jbHMtMywuY2xzLTR7ZmlsbDpub25lO3N0cm9rZTojMWQxZDFiO3N0cm9rZS13aWR0aDoy - cHg7fS5jbHMtM3tzdHJva2UtbWl0ZXJsaW1pdDoxMDt9PC9zdHlsZT4NCiAgPC9kZWZzPg0KICA8cGF0 - aCBkPSJNNDYuNjU0OCwyNy4yMDY5aC0yLjU1OWwtMS40NDksNC45OTVoLS4wMjVsLTEuMzI3LTQuOTk1 - aC0xLjcwNmwtMS4zMjgsNC45OTVoLS4wMjRsLTEuNDUtNC45OTVoLTIuNTU4bDIuODAyLDguNzcxaDIu - MzE0bDEuMDg1LTQuNjI5aC4wMjRsMS4wODQsNC42MjloMi4zMTVabS0xNC44NjIsNC4zODZhMi4yMDQ3 - LDIuMjA0NywwLDEsMS00LjM4NSwwLDIuMjA0OCwyLjIwNDgsMCwxLDEsNC4zODUsMG0yLjQzNiwwYTQu - NjI5LDQuNjI5LDAsMSwwLTQuNjI5LDQuNjI5LDQuNTUxMSw0LjU1MTEsMCwwLDAsNC42MjktNC42Mjlt - LTkuNjIzLDIuMTkzaC0yLjgwMnYtNi41NzloLTIuNDM2djguNzcxaDQuOTk0Wk0xOC4zOTI4LDI5LjRs - LS4yNDQtMi4xOTNoLTUuMjM4djguNzcxaDIuNDM2di0zLjQxMWgyLjY4MXYtMi4wNzFoLTIuNjgxVjI5 - LjRaIiBjbGFzcz0iY2xzLTEiIC8+DQogIDxwYXRoIGQ9Ik00Ni4wNDUsMjMuNjMzNUg0M3YtMS4yMTho - Mi42OHYtMi4wNzFINDN2LTEuMDk2aDMuMDQ1bC0uMjQ0LTIuMTkzSDQwLjU2M3Y4Ljc3MWg1LjIzOFpt - LTYuNjM5LDB2LTMuMTY3SDM1LjUwOGwtLjI0NCwxLjk0OUgzNi45N3YuNzMxYTIuMDc4LDIuMDc4LDAs - MCwxLTEuNzA2LjczMSwyLjIzMjcsMi4yMzI3LDAsMCwxLTIuMTkzLTIuNDM3LDIuMjUsMi4yNSwwLDAs - MSwyLjE5My0yLjQzNiwyLjU1LDIuNTUsMCwwLDEsMS45NDkuOTc1bDEuNDYyLTEuNzA2YTQuMDg4OCw0 - LjA4ODgsMCwwLDAtMy40MTEtMS40NjIsNC40ODI5LDQuNDgyOSwwLDAsMC00LjYyOSw0LjY0Miw0LjQy - MzgsNC40MjM4LDAsMCwwLDQuMzg2LDQuNjE3LDQuNjkzNCw0LjY5MzQsMCwwLDAsNC4zODUtMi40Mzdt - LTEyLjI1My0xLjA5NkgyNS43MTVsLjcwNy0yLjQzN2guMDI0Wm0zLjU0NSwzLjI4OS0zLjA0Ni04Ljc3 - MUgyNS4yMTZsLTMuMDQ1LDguNzcxaDIuNTU4bC40MTQtMS4zNGgyLjU4MmwuNDE1LDEuMzRabS04LjUy - Ny0yLjE5M0gxOS4zNjl2LTYuNTc4SDE2LjkzMnY4Ljc3MWg0Ljk5NVptLTguNzQ3LS43NjdhLjc4Njku - Nzg2OSwwLDAsMS0uNzY3Ljg3N2gtLjk2M1YyMS45OWguODUzYS44NzMuODczLDAsMCwxLC44NzcuODc3 - bS0uMjE5LTMuMDdhLjcyODEuNzI4MSwwLDAsMS0uNzY4Ljc2N2gtLjc0M3YtMS41MzVoLjc0M2EuNzQy - NS43NDI1LDAsMCwxLC43NjguNzY4bTIuNzUzLDMuMzVhMi4zNTE2LDIuMzUxNiwwLDAsMC0xLjQzOC0y - LjEzMnYtLjAyNGExLjY1NTQsMS42NTU0LDAsMCwwLC45NTEtMS43NDJjMC0xLjI0My0xLjA5Ny0yLjE5 - My0yLjY4LTIuMTkzSDkuMjU4djguNzcxaDMuODk4YTIuNjI1NSwyLjYyNTUsMCwwLDAsMi44MDItMi42 - OG0tMTAuOTc2LS42MDlIMy41NDVsLjcwNi0yLjQzN2guMDI1Wm0zLjU0NSwzLjI4OS0zLjA0Ni04Ljc3 - MUgzLjA0NUwwLDI1LjgyNjVIMi41NThsLjQxNC0xLjM0SDUuNTU1bC40MTQsMS4zNFoiIGNsYXNzPSJj - bHMtMiIgLz4NCiAgPHBvbHlnb24gcG9pbnRzPSI1Mi4zNzIgNDguOTI2IDk0LjEzOCAyNC40NjMgNTIu - MzcyIDAgNTIuMzcyIDQ4LjkyNiIgY2xhc3M9ImNscy0yIiAvPg0KICA8cGF0aCBkPSJNNTcuOTUxMSwy - MC45MzE4YTEzLjgxLDEzLjgxLDAsMCwwLDEuMzM3LDUuODMxLDExLjYyLDExLjYyLDAsMCwwLDYuMDE4 - LDUuNzU4Yy4xMTYuMDUxLjIyNy41NTQuMzA5LjY0OGExLjY3NjgsMS42NzY4LDAsMCwwLDIuNTA0LjAx - MmMuMDkyLS4xMDQuMjE5LS42MTMuMzQ5LS42NjlhMTEuNjEzNCwxMS42MTM0LDAsMCwwLDUuNDU1LTQu - NzU1LDEzLjU0ODMsMTMuNTQ4MywwLDAsMCwxLjg2OS02LjgyNVoiIGNsYXNzPSJjbHMtMyIgLz4NCiAg - PHBhdGggZD0iTTc3LjEwNDgsMTguMDE4Yy0uMDA0LS41MTMtLjAxLS40MjMuMDA2LS45MTlhNS42MzA5 - LDUuNjMwOSwwLDAsMC0uODc1LTMuMjg4LDYuNDExMiw2LjQxMTIsMCwwLDAtNS4xMTctMy4wMzljLS44 - Ni0uMDczLTcuNjAyLS4wNDMtOC4zMzUtLjA0MWE3LjU0ODEsNy41NDgxLDAsMCwwLTIuMjUxLjMzOCw2 - LjE4MjIsNi4xODIyLDAsMCwwLTQuNDEyLDUuNTc2Yy0uMDExLjY1Ni0uMDA4LjcxNy0uMDA2LDEuMzcz - WiIgY2xhc3M9ImNscy0zIiAvPg0KICA8cGF0aCBkPSJNNjcuMTEzNSw4Ljg2NzRzLS4xMTctNS4wOTgs - My4wMTEtNS41NjIiIGNsYXNzPSJjbHMtNCIgLz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPECAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku - WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz - OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl - Pg0KICA8ZyBpZD0iRGVsZXRlTGlzdCI+DQogICAgPHBhdGggZD0iTTYsMjZWNGgxOHYxMy4ybDItMlYz - YzAtMC42LTAuNC0xLTEtMUg1QzQuNCwyLDQsMi40LDQsM3YyNGMwLDAuNiwwLjQsMSwxLDFoOC4ybDIt - Mkg2eiIgY2xhc3M9IkJsYWNrIiAvPg0KICAgIDxwb2x5Z29uIHBvaW50cz0iMjgsMjAgMjYsMTggMjIs - MjIgMTgsMTggMTYsMjAgMjAsMjQgMTYsMjggMTgsMzAgMjIsMjYgMjYsMzAgMjgsMjggMjQsMjQgICIg - Y2xhc3M9IlJlZCIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== - - - - 189, 17 - - \ No newline at end of file diff --git a/GUIs.ZooFlow/Modules/Globix/frmGlobix_IndexFileList.resx.bak b/GUIs.ZooFlow/Modules/Globix/frmGlobix_IndexFileList.resx.bak deleted file mode 100644 index cfdf51b2..00000000 --- a/GUIs.ZooFlow/Modules/Globix/frmGlobix_IndexFileList.resx.bak +++ /dev/null @@ -1,251 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABsEAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z - ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5HcmVlbntmaWxsOiMwMzlD - MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntkaXNwbGF5Om5vbmU7fQoJLnN0M3tk - aXNwbGF5OmlubGluZTtmaWxsOiNGRkIxMTU7fQoJLnN0NHtkaXNwbGF5OmlubGluZTt9Cgkuc3Q1e2Rp - c3BsYXk6aW5saW5lO29wYWNpdHk6MC43NTt9Cgkuc3Q2e2Rpc3BsYXk6aW5saW5lO29wYWNpdHk6MC41 - O30KCS5zdDd7ZGlzcGxheTppbmxpbmU7ZmlsbDojMDM5QzIzO30KCS5zdDh7ZGlzcGxheTppbmxpbmU7 - ZmlsbDojRDExQzFDO30KCS5zdDl7ZGlzcGxheTppbmxpbmU7ZmlsbDojMTE3N0Q3O30KCS5zdDEwe2Rp - c3BsYXk6aW5saW5lO2ZpbGw6I0ZGRkZGRjt9Cjwvc3R5bGU+DQogIDxnIGlkPSJTZWN1cml0eV94NUZf - UGVybWlzc2lvbl94NUZfT2JqZWN0Ij4NCiAgICA8cG9seWdvbiBwb2ludHM9IjAsNCAyNCw0IDI0LDgg - MTQsMTggMTQsMjYgMTAsMzAgMTAsMTggMCw4ICAiIGNsYXNzPSJZZWxsb3ciIC8+DQogICAgPHBhdGgg - ZD0iTTI0LDE0Yy00LjQsMC04LDMuNi04LDhzMy42LDgsOCw4czgtMy42LDgtOFMyOC40LDE0LDI0LDE0 - eiBNMjIuNSwyNkwxOSwyMi41bDEuNS0xLjVsMiwybDUtNWwxLjUsMS41ICAgTDIyLjUsMjZ6IiBjbGFz - cz0iR3JlZW4iIC8+DQogIDwvZz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABcCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iQ2xlYXJfRmlsdGVyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3 - IDAgMCAzMiAzMiI+DQogIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CgkuWWVsbG93e2ZpbGw6I0ZGQjEx - NTt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cjwvc3R5bGU+DQogIDxwb2x5Z29uIHBvaW50cz0iNCwyIDI4 - LDIgMjgsNiAxOCwxNiAxOCwyNiAxNCwzMCAxNCwxNiA0LDYgIiBjbGFzcz0iWWVsbG93IiAvPg0KICA8 - cG9seWdvbiBwb2ludHM9IjMyLDIwIDMwLDE4IDI2LDIyIDIyLDE4IDIwLDIwIDI0LDI0IDIwLDI4IDIy - LDMwIDI2LDI2IDMwLDMwIDMyLDI4IDI4LDI0ICIgY2xhc3M9IlJlZCIgLz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANoCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD - MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw - MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu - bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iR2V0dGluZ1N0YXJ0ZWQiPg0KICAg - IDxwYXRoIGQ9Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMy - My43LDIsMTYsMnogTTEyLDIyVjEwbDEwLDZMMTIsMjJ6IiBjbGFzcz0iR3JlZW4iIC8+DQogIDwvZz4N - Cjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAM0DAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD - MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw - MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu - bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iQ2xvc2UiPg0KICAgIDxwYXRoIGQ9 - Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMyMy43LDIsMTYs - MnogTTIzLjcsMjEuN2MwLjQsMC40LDAuNCwxLDAsMS40bC0wLjYsMC42ICAgYy0wLjQsMC40LTEsMC40 - LTEuNCwwTDE2LDE4bC01LjcsNS43Yy0wLjQsMC40LTEsMC40LTEuNCwwbC0wLjYtMC42Yy0wLjQtMC40 - LTAuNC0xLDAtMS40TDE0LDE2bC01LjctNS43Yy0wLjQtMC40LTAuNC0xLDAtMS40ICAgbDAuNi0wLjZj - MC40LTAuNCwxLTAuNCwxLjQsMEwxNiwxNGw1LjctNS43YzAuNC0wLjQsMS0wLjQsMS40LDBsMC42LDAu - NmMwLjQsMC40LDAuNCwxLDAsMS40TDE4LDE2TDIzLjcsMjEuN3oiIGNsYXNzPSJSZWQiIC8+DQogIDwv - Zz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANYIAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGlzdE51bWJlcnMiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcg - MCAwIDMyIDMyIj4NCiAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5SZWR7ZmlsbDojRDExQzFDO30K - CS5CbGFja3tmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8cGF0aCBkPSJNMzAsOEgxMlY2aDE4Vjh6 - IE0zMCwxOEgxMnYtMmgxOFYxOHogTTMwLDI4SDEydi0yaDE4VjI4eiIgY2xhc3M9IkJsYWNrIiAvPg0K - ICA8cGF0aCBkPSJNNiwydjhINFY1LjNsLTIsMFYzLjdsMC4yLDBjMC4yLDAsMC41LDAsMC43LTAuMWMw - LjMsMCwwLjUtMC4xLDAuNy0wLjNjMC4yLTAuMSwwLjQtMC4zLDAuNS0wLjUgIGMwLjEtMC4yLDAuMi0w - LjQsMC4zLTAuN2wwLTAuMUg2eiBNOCwyMHYtMS42SDQuNkM0LjcsMTguMiw0LjksMTguMSw1LDE4YzAu - Mi0wLjIsMC41LTAuNCwwLjctMC41YzAuMy0wLjIsMC41LTAuMywwLjgtMC41ICBjMC4zLTAuMiwwLjUt - MC40LDAuNy0wLjZjMC4yLTAuMiwwLjQtMC41LDAuNS0wLjhjMC4xLTAuMywwLjItMC42LDAuMi0xYzAt - MC40LTAuMS0wLjctMC4yLTEuMWMtMC4xLTAuMy0wLjQtMC42LTAuNi0wLjggIGMtMC4zLTAuMi0wLjUt - MC40LTAuOS0wLjVjLTAuMy0wLjEtMC43LTAuMi0xLTAuMmMtMC41LDAtMC45LDAuMS0xLjMsMC4yYy0w - LjQsMC4yLTAuNywwLjQtMC45LDAuN2MtMC4yLDAuMy0wLjQsMC42LTAuNSwxICBjLTAuMSwwLjQtMC4y - LDAuOC0wLjIsMS4zbDAsMC4xaDEuOHYtMC4xYzAtMC4yLDAtMC40LDAuMS0wLjZjMC0wLjIsMC4xLTAu - NCwwLjItMC41YzAuMS0wLjEsMC4yLTAuMywwLjMtMC40ICBjMC4xLTAuMSwwLjMtMC4xLDAuNS0wLjFj - MC4zLDAsMC41LDAuMSwwLjcsMC4zYzAuMiwwLjIsMC4zLDAuNCwwLjMsMC44YzAsMC4yLDAsMC40LTAu - MSwwLjVjLTAuMSwwLjItMC4yLDAuMy0wLjQsMC41ICBjLTAuMSwwLjEtMC4zLDAuMy0wLjUsMC40Yy0w - LjIsMC4xLTAuNCwwLjItMC41LDAuNEM0LjMsMTYuNiw0LDE2LjgsMy43LDE3Yy0wLjMsMC4yLTAuNiww - LjUtMC44LDAuN2MtMC4yLDAuMy0wLjQsMC42LTAuNSwwLjkgIGMtMC4xLDAuMy0wLjIsMC43LTAuMiwx - LjJWMjBIOHogTTYuMSwyOS44YzAuMy0wLjEsMC43LTAuMywwLjktMC41YzAuMy0wLjIsMC41LTAuNSww - LjYtMC44QzcuOSwyOC4yLDgsMjcuOCw4LDI3LjQgIGMwLTAuNS0wLjEtMC45LTAuNC0xLjJjLTAuMi0w - LjItMC40LTAuNC0wLjctMC41YzAuMi0wLjEsMC40LTAuMywwLjUtMC41YzAuMi0wLjMsMC4zLTAuNiww - LjMtMWMwLTAuNC0wLjEtMC43LTAuMi0xICBjLTAuMi0wLjMtMC40LTAuNS0wLjYtMC43Yy0wLjItMC4y - LTAuNS0wLjMtMC44LTAuNEM1LjcsMjIsNS40LDIyLDUuMSwyMmMtMC40LDAtMC44LDAuMS0xLjEsMC4y - Yy0wLjMsMC4xLTAuNiwwLjMtMC45LDAuNiAgYy0wLjIsMC4yLTAuNCwwLjUtMC42LDAuOWMtMC4xLDAu - My0wLjIsMC43LTAuMiwxLjFsMCwwLjFoMS43bDAtMC4xYzAtMC4zLDAuMS0wLjYsMC4zLTAuOWMwLjIt - MC4yLDAuNC0wLjMsMC44LTAuMyAgYzAuMiwwLDAuNSwwLjEsMC42LDAuMkM1LjksMjMuOSw2LDI0LjEs - NiwyNC40YzAsMC4yLDAsMC4zLTAuMSwwLjRDNS44LDI0LjksNS42LDI1LDUuNSwyNWMtMC4xLDAuMS0w - LjMsMC4xLTAuNSwwLjEgIGMtMC4xLDAtMC4yLDAtMC4zLDBjLTAuMSwwLTAuMiwwLTAuMiwwbC0wLjIs - MHYxLjRoMC4xYzAuMiwwLDAuNCwwLDAuNiwwYzAuMiwwLDAuNCwwLDAuNSwwLjFjMC4xLDAuMSwwLjMs - MC4xLDAuNCwwLjMgIGMwLjEsMC4xLDAuMSwwLjMsMC4xLDAuNmMwLDAuMy0wLjEsMC42LTAuMywwLjdj - LTAuMiwwLjItMC41LDAuMy0wLjgsMC4zYy0wLjIsMC0wLjQsMC0wLjUtMC4xYy0wLjEtMC4xLTAuMy0w - LjItMC40LTAuMyAgQzQuMSwyOCw0LDI3LjgsNCwyNy43Yy0wLjEtMC4yLTAuMS0wLjMtMC4xLTAuNWww - LTAuMUgyLjJsMCwwLjFjMCwwLjQsMC4xLDAuOSwwLjIsMS4yYzAuMSwwLjQsMC4zLDAuNywwLjYsMC45 - ICBjMC4zLDAuMiwwLjYsMC40LDAuOSwwLjZDNC4yLDI5LjksNC42LDMwLDUuMSwzMEM1LjQsMzAsNS44 - LDI5LjksNi4xLDI5Ljh6IiBjbGFzcz0iUmVkIiAvPg0KPC9zdmc+Cw== - - - \ No newline at end of file diff --git a/GUIs.ZooFlow/My Project/Resources.Designer.vb b/GUIs.ZooFlow/My Project/Resources.Designer.vb index 93ccee5a..9ff22962 100644 --- a/GUIs.ZooFlow/My Project/Resources.Designer.vb +++ b/GUIs.ZooFlow/My Project/Resources.Designer.vb @@ -1480,6 +1480,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property switchrowcolumns() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("switchrowcolumns", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' diff --git a/GUIs.ZooFlow/My Project/Resources.resx b/GUIs.ZooFlow/My Project/Resources.resx index 96cabf2c..8539267f 100644 --- a/GUIs.ZooFlow/My Project/Resources.resx +++ b/GUIs.ZooFlow/My Project/Resources.resx @@ -193,8 +193,8 @@ ..\Resources\DD_Icons_ICO_PMANAGER_256px.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\ZOOFLOW_DRAG_NORMAL.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\renamedatasource.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\2_ZOO_FLOW_Abo.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -268,6 +268,9 @@ ..\Resources\3_PERSON_AKTIV_ZOO.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\FLOW_Sidebar_Search_aktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\actions_deletecircled.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -322,8 +325,8 @@ ..\Resources\actions_addcircled1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\ZooFlow_G_DevExpress.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\documentproperties.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\FLOW_Sidebar_Task_inaktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -346,6 +349,9 @@ ..\Resources\markcomplete.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\ZooFlow_G_DevExpress.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\save6.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -364,6 +370,9 @@ ..\Resources\bell_delete.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\ZooFlow_drop.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\GLOBIX_short.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -388,8 +397,8 @@ ..\Resources\managedatasource1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\Checked-outforEdit_Color_13297.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\ZOOFLOW_DRAG_NORMAL.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\pagesetup.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -433,6 +442,9 @@ ..\Resources\del5.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\actions_edit1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\new1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -448,9 +460,6 @@ ..\Resources\ZooFlow-25.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\ZooFlow_PM_DevExpress.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - ..\Resources\actions_edit2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -496,15 +505,6 @@ ..\Resources\ZOOFLOW_DRAG_PROGRESSIVE.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\documentproperties.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - - ..\Resources\StatusAnnotations_Information_16xLG_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\renamedatasource.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - ..\Resources\actions_addcircled4.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -541,11 +541,11 @@ ..\Resources\1_LOGO_ZOO_FLOW1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\about4.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\ZooFlow_PM_DevExpress.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\actions_edit1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\StatusAnnotations_Information_16xLG_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\del.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -562,8 +562,11 @@ ..\Resources\doublenext1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\ZooFlow_drop.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Checked-outforEdit_Color_13297.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\about4.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\1_LOGO_ZOO_FLOW_DROP2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -598,7 +601,7 @@ ..\Resources\del3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\FLOW_Sidebar_Search_aktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\switchrowcolumns.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a \ No newline at end of file diff --git a/GUIs.ZooFlow/MyApplication.vb b/GUIs.ZooFlow/MyApplication.vb index da847c64..ac42be0e 100644 --- a/GUIs.ZooFlow/MyApplication.vb +++ b/GUIs.ZooFlow/MyApplication.vb @@ -26,8 +26,6 @@ Namespace My End Property Property LogConfig As LogConfig - Property MainForm As frmAdmin_Start - Property SearchForm As frmSearchStart #Region "Database" Property Database As DatabaseWithFallback @@ -55,7 +53,6 @@ Namespace My Public Property Modules As New Dictionary(Of String, State.ModuleState) Public Property ModulesActive As New List(Of String) Public Property ClipboardWatcher As New ClipboardWatcher.State - Public Property IDB_ConnectionString As String Public Property Globix As New Globix.State Public Property Search As New Search.State diff --git a/GUIs.ZooFlow/Resources/switchrowcolumns.svg b/GUIs.ZooFlow/Resources/switchrowcolumns.svg new file mode 100644 index 00000000..e1edea53 --- /dev/null +++ b/GUIs.ZooFlow/Resources/switchrowcolumns.svg @@ -0,0 +1,12 @@ + + + + + + + + \ No newline at end of file diff --git a/GUIs.ZooFlow/Search/SearchRunner.vb b/GUIs.ZooFlow/Search/SearchRunner.vb index b67d5cb6..86725133 100644 --- a/GUIs.ZooFlow/Search/SearchRunner.vb +++ b/GUIs.ZooFlow/Search/SearchRunner.vb @@ -30,6 +30,7 @@ Public Class SearchRunner End Enum Public Event NeedsRefresh As EventHandler(Of Integer) + Public Event Closed As EventHandler(Of Integer) Private Property _ActiveDateConstraint As String = String.Empty Public ReadOnly Property ActiveDateConstraint As String @@ -76,6 +77,7 @@ Public Class SearchRunner ' TODO: Implement, not needed right now 'AddHandler oForm.NeedsRefresh, AddressOf Form_NeedsRefresh + AddHandler oForm.FormClosed, AddressOf Form_Closed oForm.Show() @@ -129,6 +131,7 @@ Public Class SearchRunner ' TODO: Implement, not needed right now 'AddHandler oForm.NeedsRefresh, AddressOf Form_NeedsRefresh + AddHandler oForm.FormClosed, AddressOf Form_Closed oForm.Show() @@ -143,6 +146,10 @@ Public Class SearchRunner End If End Function + Private Sub Form_Closed(sender As Object, e As EventArgs) + RaiseEvent Closed(sender, 0) + End Sub + Private Function GetParams(pWindowTitle As String) As DocumentResultList.Params Dim oParams = New DocumentResultList.Params() With { .WindowGuid = SearchTitle, diff --git a/GUIs.ZooFlow/ZooFlow.vbproj b/GUIs.ZooFlow/ZooFlow.vbproj index a1254c04..6e70e140 100644 --- a/GUIs.ZooFlow/ZooFlow.vbproj +++ b/GUIs.ZooFlow/ZooFlow.vbproj @@ -1105,6 +1105,7 @@ + diff --git a/GUIs.ZooFlow/ZooFlow.vbproj.bak b/GUIs.ZooFlow/ZooFlow.vbproj.bak deleted file mode 100644 index 252293fa..00000000 --- a/GUIs.ZooFlow/ZooFlow.vbproj.bak +++ /dev/null @@ -1,976 +0,0 @@ - - - - Debug - x86 - 8.0.30703 - 2.0 - {D0FB36EB-783D-40E1-B71E-A0B84B2FE567} - WinExe - DigitalData.GUIs.ZooFlow - DigitalData.GUIs.ZooFlow - v4.6.1 - ZooFlow.Program - 512 - On - Binary - Off - On - false - publish\ - true - Disk - false - Foreground - 7 - Days - false - false - true - 0 - 1.0.0.%2a - false - true - - - AnyCPU - true - full - false - bin\Debug\ - true - true - prompt - - - 41999,42016,42017,42018,42019,42020,42021,42022,42032,42036 - - - AnyCPU - pdbonly - true - bin\Release\ - false - true - prompt - - - 41999,42016,42017,42018,42019,42020,42021,42022,42032,42036 - - - WindowsForms - - - DigitalData.GUIs.ZooFlow.My.MyApplication - - - - - - - - - - False - D:\ProgramFiles\DevExpress 19.2\Components\Bin\Framework\DevExpress.Images.v19.2.dll - - - - - - - - - - - - - - - - - - - - ..\Controls.SnapPanel\obj\Debug\DigitalData.Controls.SnapPanel.dll - - - P:\Visual Studio Projekte\Bibliotheken\MSG .NET\Bin\22_11_19\Independentsoft.Msg.dll - - - False - True - C:\Windows\assembly\GAC_MSIL\Microsoft.Office.Interop.Outlook\15.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Outlook.dll - - - ..\packages\NLog.4.7.10\lib\net45\NLog.dll - - - False - P:\Visual Studio Projekte\Bibliotheken\Oracle.ManagedDataAccess.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - frmAdmin_GlobixRelations.vb - - - Form - - - frmAdmin_ClipboardWatcher.vb - - - Form - - - frmAdmin_IDBAttribute.vb - - - Form - - - frmAdmin_IDBEntity.vb - - - Form - - - frmAdmin_IDBObjectStore.vb - - - Form - - - frmAdmin_IDBBERelations.vb - - - Form - - - frmSQLDesigner.vb - - - Form - - - - frmAdmin_Globix.vb - - - Form - - - frmAdmin_SourceSQL.vb - - - Form - - - - - - - - - - - - - True - True - DBCW_Stammdaten.xsd - - - DBCW_Stammdaten.xsd - - - True - True - DSDD_Stammdaten.xsd - - - DSIDB_Stammdaten.xsd - - - frmServiceConfig.vb - - - Form - - - frmTest.vb - - - Form - - - - - - frmGlobixNameconvention.vb - - - Form - - - - - - frmWaitForm.vb - - - Form - - - - True - True - MyDataset.xsd - - - - - frmGlobixBasicConfig.vb - - - Form - - - frmGlobixMissingInput.vb - - - Form - - - True - True - GlobixDataset.xsd - - - MyDataset.xsd - - - - frmFlowSearch.vb - - - Form - - - - - - - - - - True - True - DSIDB_Stammdaten.xsd - - - - - frmAdmin_Start.vb - - - Form - - - frmFlowForm.vb - - - Form - - - frmGlobix_IndexFileList.vb - - - Form - - - frmGlobix_Index.vb - - - Form - - - frmSearchNeu.vb - - - Form - - - frmSearchPredefined.vb - - - Form - - - frmSearchStart.vb - - - Form - - - - - - True - True - Resources.resx - - - - - - - - - - frmConfigDatabase.vb - - - Form - - - frmSettings.vb - - - Form - - - frmSplash.vb - - - Form - - - True - Application.myapp - True - - - - - - - - - - - frmAdmin_ClipboardWatcher.vb - - - frmAdmin_GlobixRelations.vb - - - frmAdmin_IDBAttribute.vb - - - frmAdmin_IDBEntity.vb - - - frmAdmin_Globix.vb - - - frmAdmin_IDBObjectStore.vb - - - frmAdmin_IDBBERelations.vb - - - frmAdmin_SourceSQL.vb - - - frmSQLDesigner.vb - - - frmServiceConfig.vb - - - frmTest.vb - - - frmGlobixBasicConfig.vb - - - frmGlobixMissingInput.vb - - - frmGlobixNameconvention.vb - - - frmWaitForm.vb - - - frmFlowSearch.vb - - - frmAdmin_Start.vb - - - frmConfigDatabase.vb - - - frmFlowForm.vb - - - frmGlobix_IndexFileList.vb - - - frmGlobix_Index.vb - - - frmSearchNeu.vb - - - frmSearchPredefined.vb - - - frmSearchStart.vb - - - frmSettings.vb - - - frmSplash.vb - - - - VbMyResourcesResXFileCodeGenerator - My.Resources - Designer - Resources.Designer.vb - - - - DBCW_Stammdaten.xsd - - - Designer - MSDataSetGenerator - DBCW_Stammdaten.Designer.vb - - - DBCW_Stammdaten.xsd - - - DSDD_Stammdaten.xsd - - - Designer - MSDataSetGenerator - DSDD_Stammdaten.Designer.vb - - - DSDD_Stammdaten.xsd - - - MyDataset.xsd - - - Designer - MSDataSetGenerator - MyDataset.Designer.vb - - - MyDataset.xsd - - - DSIDB_Stammdaten.xsd - - - Designer - MSDataSetGenerator - DSIDB_Stammdaten.Designer.vb - - - DSIDB_Stammdaten.xsd - - - GlobixDataset.xsd - - - Designer - MSDataSetGenerator - GlobixDataset.Designer.vb - - - GlobixDataset.xsd - - - SettingsSingleFileGenerator - Settings.Designer.vb - - - True - Settings.settings - True - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - - - {0958cddf-4a16-41f6-8837-8335f71d599c} - DocumentViewer - - - {3dcd6d1a-c830-4241-b7e4-27430e7ea483} - LookupControl - - - {bcc6942f-cd4b-4b67-8200-1c0d002e7cc2} - RegexEditor - - - {3e7bc8a9-91ef-49b8-8110-2c01f664c24a} - SQLEditor - - - {8a8f20fc-c46e-41ac-bee7-218366cfff99} - Encryption - - - {B7D465A2-AE31-4CDF-A8B2-34B42D3EA84E} - ClipboardWatcher - - - {d20a6bf2-c7c6-4a7a-b34d-fa27d775a049} - Common - - - {40384b94-1f94-4249-9a5a-d02e0b346738} - GlobalIndexer - - - {44982F9B-6116-44E2-85D0-F39650B1EF99} - Config - - - {EAF0EA75-5FA7-485D-89C7-B2D843B03A96} - Database - - - {25017513-0d97-49d3-98d7-ba76d9b251b0} - EDMI.API - - - {991d0231-4623-496d-8bd0-9ca906029cbc} - Filesystem - - - {d3c8cfed-d6f6-43a8-9bdf-454145d0352f} - Language - - - {903B2D7D-3B80-4BE9-8713-7447B704E1B0} - Logging - - - {af664d85-0a4b-4bab-a2f8-83110c06553a} - Messaging - - - {7c3b0c7e-59fe-4e1a-a655-27ae119f9444} - Patterns - - - {81cac44f-3711-4c8f-ae98-e02a7448782a} - ZooFlow - - - {65efb268-c0e0-40c1-8981-9f70dee5c74a} - SQLConfig - - - {5efaef9b-90b9-4f05-9f70-f79ad77fff86} - Windows - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - False - Microsoft .NET Framework 4.6.1 %28x86 und x64%29 - true - - - False - .NET Framework 3.5 SP1 - false - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/GUIs.ZooFlow/frmConfigBasic.Designer.vb b/GUIs.ZooFlow/frmConfigBasic.Designer.vb index 43adfe93..b4ecd850 100644 --- a/GUIs.ZooFlow/frmConfigBasic.Designer.vb +++ b/GUIs.ZooFlow/frmConfigBasic.Designer.vb @@ -40,15 +40,14 @@ Partial Class frmConfigBasic Me.Quicksearch1CB_Pos = New DevExpress.XtraEditors.ComboBoxEdit() Me.Quicksearch1TitleTextBox = New DevExpress.XtraEditors.TextEdit() Me.ProcessManagerPathTextbox = New DevExpress.XtraEditors.TextEdit() + Me.ADRootPathTextBox = New DevExpress.XtraEditors.TextEdit() Me.Root = New DevExpress.XtraLayout.LayoutControlGroup() - Me.EmptySpaceItem1 = New DevExpress.XtraLayout.EmptySpaceItem() Me.LayoutControlGroup1 = New DevExpress.XtraLayout.LayoutControlGroup() Me.LayoutControlItem1 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem3 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem4 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlGroup2 = New DevExpress.XtraLayout.LayoutControlGroup() Me.LayoutControlItem2 = New DevExpress.XtraLayout.LayoutControlItem() - Me.ADRootPathTextBox = New DevExpress.XtraEditors.TextEdit() Me.LayoutControlItem5 = New DevExpress.XtraLayout.LayoutControlItem() CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).BeginInit() @@ -57,15 +56,14 @@ Partial Class frmConfigBasic CType(Me.Quicksearch1CB_Pos.Properties, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.Quicksearch1TitleTextBox.Properties, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.ProcessManagerPathTextbox.Properties, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.ADRootPathTextBox.Properties, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.Root, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.EmptySpaceItem1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlGroup1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem3, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem4, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlGroup2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem2, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.ADRootPathTextBox.Properties, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem5, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' @@ -176,15 +174,16 @@ Partial Class frmConfigBasic Me.ToggleSwitchDebug.Location = New System.Drawing.Point(12, 12) Me.ToggleSwitchDebug.MenuManager = Me.RibbonControl1 Me.ToggleSwitchDebug.Name = "ToggleSwitchDebug" + Me.ToggleSwitchDebug.Properties.AutoHeight = False Me.ToggleSwitchDebug.Properties.OffText = "DEBUG not active" Me.ToggleSwitchDebug.Properties.OnText = "DEBUG is active" - Me.ToggleSwitchDebug.Size = New System.Drawing.Size(536, 19) + Me.ToggleSwitchDebug.Size = New System.Drawing.Size(776, 46) Me.ToggleSwitchDebug.StyleController = Me.LayoutControl1 Me.ToggleSwitchDebug.TabIndex = 8 ' 'Quicksearch1CB_Pos ' - Me.Quicksearch1CB_Pos.Location = New System.Drawing.Point(181, 101) + Me.Quicksearch1CB_Pos.Location = New System.Drawing.Point(181, 128) Me.Quicksearch1CB_Pos.MenuManager = Me.RibbonControl1 Me.Quicksearch1CB_Pos.Name = "Quicksearch1CB_Pos" Me.Quicksearch1CB_Pos.Properties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}) @@ -195,7 +194,7 @@ Partial Class frmConfigBasic ' 'Quicksearch1TitleTextBox ' - Me.Quicksearch1TitleTextBox.Location = New System.Drawing.Point(181, 71) + Me.Quicksearch1TitleTextBox.Location = New System.Drawing.Point(181, 98) Me.Quicksearch1TitleTextBox.MenuManager = Me.RibbonControl1 Me.Quicksearch1TitleTextBox.Name = "Quicksearch1TitleTextBox" Me.Quicksearch1TitleTextBox.Size = New System.Drawing.Size(592, 20) @@ -204,35 +203,36 @@ Partial Class frmConfigBasic ' 'ProcessManagerPathTextbox ' - Me.ProcessManagerPathTextbox.Location = New System.Drawing.Point(178, 173) + Me.ProcessManagerPathTextbox.Location = New System.Drawing.Point(178, 200) Me.ProcessManagerPathTextbox.MenuManager = Me.RibbonControl1 Me.ProcessManagerPathTextbox.Name = "ProcessManagerPathTextbox" Me.ProcessManagerPathTextbox.Size = New System.Drawing.Size(598, 20) Me.ProcessManagerPathTextbox.StyleController = Me.LayoutControl1 Me.ProcessManagerPathTextbox.TabIndex = 9 ' + 'ADRootPathTextBox + ' + Me.ADRootPathTextBox.Location = New System.Drawing.Point(178, 224) + Me.ADRootPathTextBox.MenuManager = Me.RibbonControl1 + Me.ADRootPathTextBox.Name = "ADRootPathTextBox" + Me.ADRootPathTextBox.Size = New System.Drawing.Size(598, 20) + Me.ADRootPathTextBox.StyleController = Me.LayoutControl1 + Me.ADRootPathTextBox.TabIndex = 10 + ' 'Root ' Me.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[True] Me.Root.GroupBordersVisible = False - Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.EmptySpaceItem1, Me.LayoutControlGroup1, Me.LayoutControlItem4, Me.LayoutControlGroup2}) + Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlGroup1, Me.LayoutControlItem4, Me.LayoutControlGroup2}) Me.Root.Name = "Root" Me.Root.Size = New System.Drawing.Size(800, 268) Me.Root.TextVisible = False ' - 'EmptySpaceItem1 - ' - Me.EmptySpaceItem1.AllowHotTrack = False - Me.EmptySpaceItem1.Location = New System.Drawing.Point(540, 0) - Me.EmptySpaceItem1.Name = "EmptySpaceItem1" - Me.EmptySpaceItem1.Size = New System.Drawing.Size(240, 23) - Me.EmptySpaceItem1.TextSize = New System.Drawing.Size(0, 0) - ' 'LayoutControlGroup1 ' Me.LayoutControlGroup1.CustomizationFormText = "Schnellsuche 1" Me.LayoutControlGroup1.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem1, Me.LayoutControlItem3}) - Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 23) + Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 50) Me.LayoutControlGroup1.Name = "LayoutControlGroup1" Me.LayoutControlGroup1.Size = New System.Drawing.Size(780, 105) Me.LayoutControlGroup1.Text = "Konfiguration Schnellsuche 1" @@ -264,16 +264,16 @@ Partial Class frmConfigBasic Me.LayoutControlItem4.Control = Me.ToggleSwitchDebug Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 0) Me.LayoutControlItem4.Name = "LayoutControlItem4" - Me.LayoutControlItem4.Size = New System.Drawing.Size(540, 23) + Me.LayoutControlItem4.Size = New System.Drawing.Size(780, 50) Me.LayoutControlItem4.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem4.TextVisible = False ' 'LayoutControlGroup2 ' Me.LayoutControlGroup2.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem2, Me.LayoutControlItem5}) - Me.LayoutControlGroup2.Location = New System.Drawing.Point(0, 128) + Me.LayoutControlGroup2.Location = New System.Drawing.Point(0, 155) Me.LayoutControlGroup2.Name = "LayoutControlGroup2" - Me.LayoutControlGroup2.Size = New System.Drawing.Size(780, 120) + Me.LayoutControlGroup2.Size = New System.Drawing.Size(780, 93) Me.LayoutControlGroup2.Text = "Weitere Einstellungen" ' 'LayoutControlItem2 @@ -285,21 +285,12 @@ Partial Class frmConfigBasic Me.LayoutControlItem2.Text = "Pfad zum Process Manager" Me.LayoutControlItem2.TextSize = New System.Drawing.Size(142, 13) ' - 'ADRootPathTextBox - ' - Me.ADRootPathTextBox.Location = New System.Drawing.Point(178, 197) - Me.ADRootPathTextBox.MenuManager = Me.RibbonControl1 - Me.ADRootPathTextBox.Name = "ADRootPathTextBox" - Me.ADRootPathTextBox.Size = New System.Drawing.Size(598, 20) - Me.ADRootPathTextBox.StyleController = Me.LayoutControl1 - Me.ADRootPathTextBox.TabIndex = 10 - ' 'LayoutControlItem5 ' Me.LayoutControlItem5.Control = Me.ADRootPathTextBox Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 24) Me.LayoutControlItem5.Name = "LayoutControlItem5" - Me.LayoutControlItem5.Size = New System.Drawing.Size(756, 51) + Me.LayoutControlItem5.Size = New System.Drawing.Size(756, 24) Me.LayoutControlItem5.Text = "Active Directory Root Pfad" Me.LayoutControlItem5.TextSize = New System.Drawing.Size(142, 13) ' @@ -323,15 +314,14 @@ Partial Class frmConfigBasic CType(Me.Quicksearch1CB_Pos.Properties, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.Quicksearch1TitleTextBox.Properties, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.ProcessManagerPathTextbox.Properties, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.ADRootPathTextBox.Properties, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.Root, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.EmptySpaceItem1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlGroup1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem3, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem4, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlGroup2, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem2, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.ADRootPathTextBox.Properties, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem5, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) Me.PerformLayout() @@ -354,7 +344,6 @@ Partial Class frmConfigBasic Friend WithEvents SkinPaletteRibbonGalleryBarItem1 As DevExpress.XtraBars.SkinPaletteRibbonGalleryBarItem Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents SkinRibbonGalleryBarItem1 As DevExpress.XtraBars.SkinRibbonGalleryBarItem - Friend WithEvents EmptySpaceItem1 As DevExpress.XtraLayout.EmptySpaceItem Friend WithEvents ToggleSwitchDebug As DevExpress.XtraEditors.ToggleSwitch Friend WithEvents LayoutControlItem4 As DevExpress.XtraLayout.LayoutControlItem Friend WithEvents LayoutControlGroup1 As DevExpress.XtraLayout.LayoutControlGroup diff --git a/GUIs.ZooFlow/frmFlowForm.Designer.vb b/GUIs.ZooFlow/frmFlowForm.Designer.vb index 3d53c170..a419c2e0 100644 --- a/GUIs.ZooFlow/frmFlowForm.Designer.vb +++ b/GUIs.ZooFlow/frmFlowForm.Designer.vb @@ -38,7 +38,6 @@ Partial Class frmFlowForm Me.TestToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() Me.ToolStripSeparator2 = New System.Windows.Forms.ToolStripSeparator() Me.ZooFlowBeendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() - Me.TimerRefreshSidebarData = New System.Windows.Forms.Timer(Me.components) Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components) Me.PictureBoxPM = New DevExpress.XtraEditors.SvgImageBox() Me.PictureBoxSearch = New DevExpress.XtraEditors.SvgImageBox() @@ -156,10 +155,6 @@ Partial Class frmFlowForm Me.ZooFlowBeendenToolStripMenuItem.Size = New System.Drawing.Size(169, 22) Me.ZooFlowBeendenToolStripMenuItem.Text = "ZooFlow beenden" ' - 'TimerRefreshSidebarData - ' - Me.TimerRefreshSidebarData.Interval = 10000 - ' 'PictureBoxPM ' Me.PictureBoxPM.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) @@ -557,7 +552,6 @@ Partial Class frmFlowForm Friend WithEvents ContextMenuSystray As ContextMenuStrip Friend WithEvents VerwaltungToolStripMenuItem As ToolStripMenuItem Friend WithEvents ZooFlowBeendenToolStripMenuItem As ToolStripMenuItem - Friend WithEvents TimerRefreshSidebarData As Timer Friend WithEvents ToolTip1 As ToolTip Friend WithEvents ToolStripSeparator1 As ToolStripSeparator Friend WithEvents TimerFolderwatch As Timer diff --git a/GUIs.ZooFlow/frmFlowForm.resx b/GUIs.ZooFlow/frmFlowForm.resx index a6c59f48..1a234b61 100644 --- a/GUIs.ZooFlow/frmFlowForm.resx +++ b/GUIs.ZooFlow/frmFlowForm.resx @@ -1956,17 +1956,14 @@ AMADAADwDwAA - - 468, 17 - - 658, 17 + 468, 17 - 757, 17 + 567, 17 - 906, 17 + 716, 17 @@ -2042,6 +2039,6 @@ - 1031, 17 + 841, 17 \ No newline at end of file diff --git a/GUIs.ZooFlow/frmFlowForm.vb b/GUIs.ZooFlow/frmFlowForm.vb index 169df38e..1e592c53 100644 --- a/GUIs.ZooFlow/frmFlowForm.vb +++ b/GUIs.ZooFlow/frmFlowForm.vb @@ -206,12 +206,12 @@ Public Class frmFlowForm ' === Initialization === Init = New ClassInit(My.LogConfig, Me) AddHandler Init.Completed, Async Sub() Await Init_Completed(sender, e) - Init.InitializeApplication() ' === Register Sidebar === RegisterBar(ABEdge.ABE_RIGHT) + ' Disable Form until init has completed Enabled = False End Sub @@ -231,8 +231,9 @@ Public Class frmFlowForm ErrorHandler = New BaseErrorHandler(My.LogConfig, Logger, Me) Modules = New ClassModules(My.LogConfig, My.SystemConfig) FileEx = New Filesystem.File(My.LogConfig) - Search = New SearchRunner(My.LogConfig, Environment, "FlowSearch") - Search.BaseSearchSQL = DocResultBaseSearch + Search = New SearchRunner(My.LogConfig, Environment, "FlowSearch") With { + .BaseSearchSQL = DocResultBaseSearch + } ' === Initialize Theming === If My.Application.Palette = "" Then @@ -242,14 +243,13 @@ Public Class frmFlowForm End If ' === Setup Timers === - AddHandler TimerRefreshSidebarData.Tick, AddressOf TimerRefreshData_Tick - TimerRefreshSidebarData.Enabled = True + ' No timers right now ' === Setup Event Handlers === AddHandler KeyDown, AddressOf frmFlowForm_KeyDown AddHandler KeyUp, AddressOf frmFlowForm_KeyDown AddHandler Watcher.ClipboardChanged, AddressOf Watcher_ClipboardChanged - + AddHandler Search.Closed, AddressOf SearchRunner_Closed PictureBoxSearch.Visible = False For Each oRow As DataRow In My.Tables.DTIDB_COMMON_SQL.Rows @@ -259,12 +259,7 @@ Public Class frmFlowForm End If Next - Dim oSql = $"SELECT TOP 10 * FROM VWIDB_DOCRESULT_DE WHERE [Changed who] = '{My.Application.User.UserName}' ORDER BY [Changed when] DESC" - Dim AccessedFilesTable = Await My.Database.GetDatatableIDBAsync(oSql) - - GridControl1.DataSource = AccessedFilesTable - colPrimary.FieldName = "DisplayFileName" - colSecondary.FieldName = "Changed when" + Await Load_Recent_Files() If My.Application.ModulesActive.Contains(MODULE_CLIPBOARDWATCHER) Then Try @@ -354,6 +349,24 @@ Public Class frmFlowForm Enabled = True End Try End Function + + Private Async Sub SearchRunner_Closed(sender As Object, e As Integer) + Await Load_Recent_Files() + End Sub + + Private Async Function Load_Recent_Files() As Task + Try + Dim oSql = $"SELECT TOP 10 * FROM VWIDB_DOCRESULT_DE WHERE [Changed who] = '{My.Application.User.UserName}' ORDER BY [Changed when] DESC" + Dim AccessedFilesTable = Await My.Database.GetDatatableIDBAsync(oSql) + + GridControl1.DataSource = AccessedFilesTable + colPrimary.FieldName = "DisplayFileName" + colSecondary.FieldName = "Changed when" + Catch ex As Exception + ShowErrorMessage(ex) + End Try + End Function + Async Function ConfigureQuicksearch1(Reload As Boolean) As Threading.Tasks.Task If Reload Then Dim oSQL = $"SELECT * FROM TBIDB_CATALOG_USER WHERE USR_ID = {My.Application.User.UserId}" @@ -1144,7 +1157,18 @@ Public Class frmFlowForm End Sub Private Sub BarButtonItem6_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnServiceConfig.ItemClick - frmServiceConfig.ShowDialog() + Try + Dim oForm As New frmServiceConfig() With { + .ServiceAddress = My.Application.Service.Client.ServerAddress, + .ServiceOnline = My.Application.Service.Client.IsOnline + } + oForm.ShowDialog() + + My.SystemConfig.AppServerConfig = oForm.ServiceAddress + My.SystemConfigManager.Save() + Catch ex As Exception + ErrorHandler.ShowErrorMessage("Service Config") + End Try End Sub Private Async Sub BarButtonItem8_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnBasicConfig.ItemClick @@ -1217,24 +1241,6 @@ Public Class frmFlowForm CopyToDataTable() Search.Run(oResult, "Suche") - - 'Dim oParams = New DocumentResultList.Params() With { - ' .WindowGuid = "SingleDocument", - ' .WindowTitle = "Einzelnes Dokument", - ' .OperationModeOverride = DigitalData.Modules.ZooFlow.Constants.OperationMode.ZooFlow, - ' .ProfileGuid = 354521, - ' .ShowBackNavigation = False, - ' .ShowFileList = False, - ' .Results = New List(Of DocumentResultList.DocumentResult) From { - ' New DocumentResultList.DocumentResult() With { - ' .Title = "Einzelnes Dokument", - ' .Datatable = oResult - ' } - ' } - '} - - 'Dim oForm As New frmDocumentResultList(My.LogConfig, Environment, oParams) - 'oForm.Show() Catch ex As Exception ErrorHandler.ShowErrorMessage(ex, "Laden eines Dokuments") Finally diff --git a/GUIs.ZooFlow/frmServiceConfig.vb b/GUIs.ZooFlow/frmServiceConfig.vb index d33add26..ee2259df 100644 --- a/GUIs.ZooFlow/frmServiceConfig.vb +++ b/GUIs.ZooFlow/frmServiceConfig.vb @@ -11,21 +11,21 @@ Public Class frmServiceConfig Private ConnectionChanged As Boolean = False + Public Property ServiceAddress As String = "" + Public Property ServiceOnline As Boolean = False + Private Sub frmServiceConfig_Load(sender As Object, e As EventArgs) Handles Me.Load Logger = My.LogConfig.GetLogger() - If My.SystemConfig.AppServerConfig <> String.Empty Then - Dim oAddress = Client.ParseServiceAddress(My.SystemConfig.AppServerConfig) + If ServiceAddress <> String.Empty Then + Dim oAddress = Client.ParseServiceAddress(ServiceAddress) txtServiceAddress.Text = oAddress.Item1 txtServicePort.Text = oAddress.Item2 End If - If Not IsNothing(My.Application.Service.Client) Then - If My.Application.Service.Client.IsOnline Then - txtStatus.Text = STATUS_CONNECTED - End If + If ServiceOnline Then + txtStatus.Text = STATUS_CONNECTED End If - txtServiceAddress.Focus() End Sub @@ -41,11 +41,13 @@ Public Class frmServiceConfig Dim oResult = Client.Connect() If oResult = True Then - My.SystemConfig.AppServerConfig = $"{oIPAddress}:{oPort}" - My.SystemConfigManager.Save() + ServiceAddress = $"{oIPAddress}:{oPort}" + ServiceOnline = True txtStatus.Text = STATUS_CONNECTED Else + ServiceAddress = "" + ServiceOnline = True txtStatus.Text = STATUS_FAILED ' TODO: Make a connection test that is as elaborate as this one :D 'Select Case oResult From cf7a61891789220aa5959232347b128e88febad9 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 4 May 2022 15:56:28 +0200 Subject: [PATCH 4/6] SQLEditor: New Form --- .../My Project/Resources.Designer.vb | 30 + Controls.SQLEditor/My Project/Resources.resx | 23 +- Controls.SQLEditor/My Project/licenses.licx | 5 + Controls.SQLEditor/Resources/check.svg | 16 + .../Resources/editdatasource1.svg | 17 + .../Resources/updatedataextract3.svg | 16 + Controls.SQLEditor/SQLEditor.vbproj | 24 + .../SQLSyntaxHighlightService.vb | 154 ++++ Controls.SQLEditor/frmSQLEditor.Designer.vb | 654 ++++------------- Controls.SQLEditor/frmSQLEditor.resx | 246 +------ Controls.SQLEditor/frmSQLEditor.vb | 185 ++--- .../frmSQLEditor_old.Designer.vb | 660 ++++++++++++++++++ Controls.SQLEditor/frmSQLEditor_old.resx | 373 ++++++++++ Controls.SQLEditor/frmSQLEditor_old.vb | 146 ++++ 14 files changed, 1666 insertions(+), 883 deletions(-) create mode 100644 Controls.SQLEditor/Resources/check.svg create mode 100644 Controls.SQLEditor/Resources/editdatasource1.svg create mode 100644 Controls.SQLEditor/Resources/updatedataextract3.svg create mode 100644 Controls.SQLEditor/SQLSyntaxHighlightService.vb create mode 100644 Controls.SQLEditor/frmSQLEditor_old.Designer.vb create mode 100644 Controls.SQLEditor/frmSQLEditor_old.resx create mode 100644 Controls.SQLEditor/frmSQLEditor_old.vb diff --git a/Controls.SQLEditor/My Project/Resources.Designer.vb b/Controls.SQLEditor/My Project/Resources.Designer.vb index cbfc0b8a..bd814192 100644 --- a/Controls.SQLEditor/My Project/Resources.Designer.vb +++ b/Controls.SQLEditor/My Project/Resources.Designer.vb @@ -100,6 +100,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property check() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("check", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' @@ -110,6 +120,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property editdatasource1() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("editdatasource1", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' @@ -149,5 +169,15 @@ Namespace My.Resources Return CType(obj,DevExpress.Utils.Svg.SvgImage) End Get End Property + + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property updatedataextract3() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("updatedataextract3", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property End Module End Namespace diff --git a/Controls.SQLEditor/My Project/Resources.resx b/Controls.SQLEditor/My Project/Resources.resx index 6fb8d5e7..2e2bfdf3 100644 --- a/Controls.SQLEditor/My Project/Resources.resx +++ b/Controls.SQLEditor/My Project/Resources.resx @@ -121,8 +121,8 @@ ..\Resources\actions_database.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\editdatasource.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\updatedataextract1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\actions_check.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -130,19 +130,28 @@ ..\Resources\actions_database1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\updatedataextract1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\updatedataextract3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\editdatasource.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\updatedataextract2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\highimportance.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - ..\Resources\updatedataextract.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\highimportance.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\actions_checkcircled.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\check.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\editdatasource1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + \ No newline at end of file diff --git a/Controls.SQLEditor/My Project/licenses.licx b/Controls.SQLEditor/My Project/licenses.licx index e69de29b..c948fb7e 100644 --- a/Controls.SQLEditor/My Project/licenses.licx +++ b/Controls.SQLEditor/My Project/licenses.licx @@ -0,0 +1,5 @@ +DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraRichEdit.RichEditControl, DevExpress.XtraRichEdit.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a diff --git a/Controls.SQLEditor/Resources/check.svg b/Controls.SQLEditor/Resources/check.svg new file mode 100644 index 00000000..bc91b5a7 --- /dev/null +++ b/Controls.SQLEditor/Resources/check.svg @@ -0,0 +1,16 @@ + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/Resources/editdatasource1.svg b/Controls.SQLEditor/Resources/editdatasource1.svg new file mode 100644 index 00000000..6e46621c --- /dev/null +++ b/Controls.SQLEditor/Resources/editdatasource1.svg @@ -0,0 +1,17 @@ + + + + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/Resources/updatedataextract3.svg b/Controls.SQLEditor/Resources/updatedataextract3.svg new file mode 100644 index 00000000..e7dda038 --- /dev/null +++ b/Controls.SQLEditor/Resources/updatedataextract3.svg @@ -0,0 +1,16 @@ + + + + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/SQLEditor.vbproj b/Controls.SQLEditor/SQLEditor.vbproj index 222fe62e..ff6974bb 100644 --- a/Controls.SQLEditor/SQLEditor.vbproj +++ b/Controls.SQLEditor/SQLEditor.vbproj @@ -51,7 +51,11 @@ + + + + @@ -60,6 +64,7 @@ + @@ -105,6 +110,12 @@ Form + + frmSQLEditor_old.vb + + + Form + True @@ -121,11 +132,15 @@ Settings.settings True + frmSQLEditor.vb + + frmSQLEditor_old.vb + VbMyResourcesResXFileCodeGenerator @@ -196,5 +211,14 @@ Patterns + + + + + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/SQLSyntaxHighlightService.vb b/Controls.SQLEditor/SQLSyntaxHighlightService.vb new file mode 100644 index 00000000..69a68ca1 --- /dev/null +++ b/Controls.SQLEditor/SQLSyntaxHighlightService.vb @@ -0,0 +1,154 @@ +Imports System.Collections.Generic +Imports System.Drawing +Imports System.Windows.Forms +Imports DevExpress.Office.Utils +Imports DevExpress.XtraRichEdit.API.Native +Imports DevExpress.XtraRichEdit.Services +Imports System.Linq +Imports System.Text.RegularExpressions + +Public Class SQLSyntaxHighlightService + Implements ISyntaxHighlightService + + Private ReadOnly document As Document + + Private _keywords As Regex + Private _quotedString As New Regex("'([^']|'')*'") + Private _commentedString As New Regex("(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)") + + Private keywords As New List(Of String) From { + "INSERT", + "SELECT", + "CREATE", + "TABLE", + "USE", + "IDENTITY", + "JOIN", + "ON", + "OFF", + "NOT", + "NULL", + "WITH", + "SET", + "GO", + "DECLARE", + "EXECUTE", + "NVARCHAR", + "FROM", + "INTO", + "VALUES", + "WHERE", + "AND" + } + + Public Sub New(ByVal document As Document) + Me.document = document + + Me._keywords = New Regex("\b(" & String.Join("|", keywords.Select(Function(w) Regex.Escape(w))) & ")\b") + End Sub + Public Sub ForceExecute() Implements ISyntaxHighlightService.ForceExecute + Execute() + End Sub + Public Sub Execute() Implements ISyntaxHighlightService.Execute + Dim tSqltokens As List(Of SyntaxHighlightToken) = ParseTokens() + document.ApplySyntaxHighlight(tSqltokens) + End Sub + + Private Function ParseTokens() As List(Of SyntaxHighlightToken) + Dim tokens As New List(Of SyntaxHighlightToken)() + Dim ranges() As DocumentRange = Nothing + + ' search for quoted strings + ranges = TryCast(document.FindAll(_quotedString).GetAsFrozen(), DocumentRange()) + For i As Integer = 0 To ranges.Length - 1 + tokens.Add(CreateToken(ranges(i).Start.ToInt(), ranges(i).End.ToInt(), Color.Red)) + Next i + + 'Extract all keywords + ranges = TryCast(document.FindAll(_keywords).GetAsFrozen(), DocumentRange()) + For j As Integer = 0 To ranges.Length - 1 + If Not IsRangeInTokens(ranges(j), tokens) Then + tokens.Add(CreateToken(ranges(j).Start.ToInt(), ranges(j).End.ToInt(), Color.Blue)) + End If + Next j + + 'Find all comments + ranges = TryCast(document.FindAll(_commentedString).GetAsFrozen(), DocumentRange()) + For j As Integer = 0 To ranges.Length - 1 + If Not IsRangeInTokens(ranges(j), tokens) Then + tokens.Add(CreateToken(ranges(j).Start.ToInt(), ranges(j).End.ToInt(), Color.Green)) + End If + Next j + + ' order tokens by their start position + tokens.Sort(New SyntaxHighlightTokenComparer()) + + ' fill in gaps in document coverage + tokens = CombineWithPlainTextTokens(tokens) + Return tokens + End Function + + 'Parse the remaining text into tokens: + Private Function CombineWithPlainTextTokens(ByVal tokens As List(Of SyntaxHighlightToken)) As List(Of SyntaxHighlightToken) + Dim result As New List(Of SyntaxHighlightToken)(tokens.Count * 2 + 1) + Dim documentStart As Integer = Me.document.Range.Start.ToInt() + Dim documentEnd As Integer = Me.document.Range.End.ToInt() + If tokens.Count = 0 Then + result.Add(CreateToken(documentStart, documentEnd, Color.Black)) + Else + Dim firstToken As SyntaxHighlightToken = tokens(0) + If documentStart < firstToken.Start Then + result.Add(CreateToken(documentStart, firstToken.Start, Color.Black)) + End If + result.Add(firstToken) + For i As Integer = 1 To tokens.Count - 1 + Dim token As SyntaxHighlightToken = tokens(i) + Dim prevToken As SyntaxHighlightToken = tokens(i - 1) + If prevToken.End <> token.Start Then + result.Add(CreateToken(prevToken.End, token.Start, Color.Black)) + End If + result.Add(token) + Next i + Dim lastToken As SyntaxHighlightToken = tokens(tokens.Count - 1) + If documentEnd > lastToken.End Then + result.Add(CreateToken(lastToken.End, documentEnd, Color.Black)) + End If + End If + Return result + End Function + + 'Create a token from the retrieved range and specify its forecolor + Private Function CreateToken(ByVal start As Integer, ByVal [end] As Integer, ByVal foreColor As Color) As SyntaxHighlightToken + Dim properties As New SyntaxHighlightProperties() + properties.ForeColor = foreColor + Return New SyntaxHighlightToken(start, [end] - start, properties) + End Function + + 'Check whether tokens intersect each other + Private Function IsRangeInTokens(ByVal range As DocumentRange, ByVal tokens As List(Of SyntaxHighlightToken)) As Boolean + Return tokens.Any(Function(t) IsIntersect(range, t)) + End Function + Private Function IsIntersect(ByVal range As DocumentRange, ByVal token As SyntaxHighlightToken) As Boolean + Dim start As Integer = range.Start.ToInt() + If start >= token.Start AndAlso start < token.End Then + Return True + End If + Dim [end] As Integer = range.End.ToInt() - 1 + If [end] >= token.Start AndAlso [end] < token.End Then + Return True + End If + If start < token.Start AndAlso [end] >= token.End Then + Return True + End If + Return False + End Function +End Class + +'Compare token's initial positions to sort them +Public Class SyntaxHighlightTokenComparer + Implements IComparer(Of SyntaxHighlightToken) + + Public Function Compare(ByVal x As SyntaxHighlightToken, ByVal y As SyntaxHighlightToken) As Integer Implements IComparer(Of SyntaxHighlightToken).Compare + Return x.Start - y.Start + End Function +End Class \ No newline at end of file diff --git a/Controls.SQLEditor/frmSQLEditor.Designer.vb b/Controls.SQLEditor/frmSQLEditor.Designer.vb index 922dbfba..dab1befa 100644 --- a/Controls.SQLEditor/frmSQLEditor.Designer.vb +++ b/Controls.SQLEditor/frmSQLEditor.Designer.vb @@ -1,607 +1,229 @@ -Imports DigitalData.GUIs.Common.Base - - + Partial Class frmSQLEditor - Inherits BaseRibbonForm + Inherits DevExpress.XtraBars.Ribbon.RibbonForm - 'Form overrides dispose to clean up the component list. + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. Protected Overrides Sub Dispose(ByVal disposing As Boolean) - If disposing AndAlso components IsNot Nothing Then - components.Dispose() - End If - MyBase.Dispose(disposing) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try End Sub - 'Required by the Windows Form Designer + 'Wird vom Windows Form-Designer benötigt. Private components As System.ComponentModel.IContainer - 'NOTE: The following procedure is required by the Windows Form Designer - 'It can be modified using the Windows Form Designer. - 'Do not modify it using the code editor. + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. Private Sub InitializeComponent() Me.components = New System.ComponentModel.Container() - Dim EditorButtonImageOptions1 As DevExpress.XtraEditors.Controls.EditorButtonImageOptions = New DevExpress.XtraEditors.Controls.EditorButtonImageOptions() - Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmSQLEditor)) - Dim SerializableAppearanceObject1 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() - Dim SerializableAppearanceObject2 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() - Dim SerializableAppearanceObject3 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() - Dim SerializableAppearanceObject4 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() - Dim EditorButtonImageOptions2 As DevExpress.XtraEditors.Controls.EditorButtonImageOptions = New DevExpress.XtraEditors.Controls.EditorButtonImageOptions() - Dim SerializableAppearanceObject5 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() - Dim SerializableAppearanceObject6 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() - Dim SerializableAppearanceObject7 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() - Dim SerializableAppearanceObject8 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() - Me.RepositoryItemRibbonSearchEdit2 = New DevExpress.XtraBars.Ribbon.Internal.RepositoryItemRibbonSearchEdit() - Me.LayoutControl1 = New DevExpress.XtraLayout.LayoutControl() - Me.GridControlPlaceholders = New DevExpress.XtraGrid.GridControl() - Me.BindingSourcePlaceholder = New System.Windows.Forms.BindingSource(Me.components) - Me.GridViewPlaceholder = New DevExpress.XtraGrid.Views.Grid.GridView() - Me.colPlaceholder = New DevExpress.XtraGrid.Columns.GridColumn() - Me.colReplacement = New DevExpress.XtraGrid.Columns.GridColumn() Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl() + Me.RibbonGalleryBarItem1 = New DevExpress.XtraBars.RibbonGalleryBarItem() + Me.SvgImageCollection1 = New DevExpress.Utils.SvgImageCollection(Me.components) Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem() Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem() - Me.BarStaticItem1 = New DevExpress.XtraBars.BarStaticItem() - Me.BarStaticItem2 = New DevExpress.XtraBars.BarStaticItem() - Me.BarStaticItem3 = New DevExpress.XtraBars.BarStaticItem() Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() + Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() - Me.GridControlResult = New DevExpress.XtraGrid.GridControl() - Me.GridViewResult = New DevExpress.XtraGrid.Views.Grid.GridView() - Me.txtSQL = New DevExpress.XtraEditors.MemoEdit() - Me.DropDownButton1 = New DevExpress.XtraEditors.DropDownButton() - Me.DropDownButton11 = New DevExpress.XtraEditors.DropDownButton() - Me.RibbonControl11 = New DevExpress.XtraBars.Ribbon.RibbonControl() - Me.BarButtonItem11 = New DevExpress.XtraBars.BarButtonItem() - Me.BarButtonItem21 = New DevExpress.XtraBars.BarButtonItem() - Me.RibbonPage11 = New DevExpress.XtraBars.Ribbon.RibbonPage() - Me.RibbonPageGroup11 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() - Me.RibbonStatusBar11 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() - Me.DropDownButton2 = New DevExpress.XtraEditors.DropDownButton() - Me.DropDownButton3 = New DevExpress.XtraEditors.DropDownButton() - Me.cmbConnections = New DevExpress.XtraEditors.ComboBoxEdit() - Me.Root = New DevExpress.XtraLayout.LayoutControlGroup() - Me.LayoutControlItem3 = New DevExpress.XtraLayout.LayoutControlItem() - Me.LayoutControlItem2 = New DevExpress.XtraLayout.LayoutControlItem() - Me.LayoutControlItem4 = New DevExpress.XtraLayout.LayoutControlItem() - Me.SimpleLabelItem2 = New DevExpress.XtraLayout.SimpleLabelItem() - Me.LayoutControlItem1 = New DevExpress.XtraLayout.LayoutControlItem() - Me.LayoutControlItem5 = New DevExpress.XtraLayout.LayoutControlItem() - Me.LayoutControlItem6 = New DevExpress.XtraLayout.LayoutControlItem() - Me.LayoutControlItem7 = New DevExpress.XtraLayout.LayoutControlItem() - Me.LayoutControlItem8 = New DevExpress.XtraLayout.LayoutControlItem() - Me.SimpleSeparator1 = New DevExpress.XtraLayout.SimpleSeparator() - Me.SimpleLabelItem1 = New DevExpress.XtraLayout.SimpleLabelItem() - Me.SimpleSeparator2 = New DevExpress.XtraLayout.SimpleSeparator() Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage() - CType(Me.RepositoryItemRibbonSearchEdit2, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).BeginInit() - Me.LayoutControl1.SuspendLayout() - CType(Me.GridControlPlaceholders, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.BindingSourcePlaceholder, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.GridViewPlaceholder, System.ComponentModel.ISupportInitialize).BeginInit() + Me.RichEditControl1 = New DevExpress.XtraRichEdit.RichEditControl() + Me.SplitContainerControl1 = New DevExpress.XtraEditors.SplitContainerControl() + Me.GridControl1 = New DevExpress.XtraGrid.GridControl() + Me.GridView1 = New DevExpress.XtraGrid.Views.Grid.GridView() CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.GridControlResult, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.GridViewResult, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.txtSQL.Properties, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.RibbonControl11, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.cmbConnections.Properties, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.Root, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.LayoutControlItem3, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.LayoutControlItem2, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.LayoutControlItem4, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.SimpleLabelItem2, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.LayoutControlItem1, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.LayoutControlItem5, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.LayoutControlItem6, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.LayoutControlItem7, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.LayoutControlItem8, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.SimpleSeparator1, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.SimpleLabelItem1, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.SimpleSeparator2, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SplitContainerControl1.Panel1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SplitContainerControl1.Panel1.SuspendLayout() + CType(Me.SplitContainerControl1.Panel2, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SplitContainerControl1.Panel2.SuspendLayout() + Me.SplitContainerControl1.SuspendLayout() + CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.GridView1, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' - 'RepositoryItemRibbonSearchEdit2 - ' - Me.RepositoryItemRibbonSearchEdit2.AllowFocused = False - Me.RepositoryItemRibbonSearchEdit2.AutoHeight = False - Me.RepositoryItemRibbonSearchEdit2.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder - EditorButtonImageOptions1.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.[True] - EditorButtonImageOptions1.SvgImage = CType(resources.GetObject("EditorButtonImageOptions1.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.RepositoryItemRibbonSearchEdit2.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "", -1, True, True, True, EditorButtonImageOptions1, New DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), SerializableAppearanceObject1, SerializableAppearanceObject2, SerializableAppearanceObject3, SerializableAppearanceObject4, "", Nothing, Nothing, DevExpress.Utils.ToolTipAnchor.[Default]), New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Clear, "", -1, True, False, False, EditorButtonImageOptions2, New DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), SerializableAppearanceObject5, SerializableAppearanceObject6, SerializableAppearanceObject7, SerializableAppearanceObject8, "", Nothing, Nothing, DevExpress.Utils.ToolTipAnchor.[Default])}) - Me.RepositoryItemRibbonSearchEdit2.Name = "RepositoryItemRibbonSearchEdit2" - Me.RepositoryItemRibbonSearchEdit2.NullText = "Search" - ' - 'LayoutControl1 - ' - Me.LayoutControl1.Controls.Add(Me.GridControlPlaceholders) - Me.LayoutControl1.Controls.Add(Me.GridControlResult) - Me.LayoutControl1.Controls.Add(Me.txtSQL) - Me.LayoutControl1.Controls.Add(Me.DropDownButton1) - Me.LayoutControl1.Controls.Add(Me.DropDownButton11) - Me.LayoutControl1.Controls.Add(Me.DropDownButton2) - Me.LayoutControl1.Controls.Add(Me.DropDownButton3) - Me.LayoutControl1.Controls.Add(Me.cmbConnections) - Me.LayoutControl1.Dock = System.Windows.Forms.DockStyle.Fill - Me.LayoutControl1.Location = New System.Drawing.Point(0, 66) - Me.LayoutControl1.Name = "LayoutControl1" - Me.LayoutControl1.Root = Me.Root - Me.LayoutControl1.Size = New System.Drawing.Size(1283, 604) - Me.LayoutControl1.TabIndex = 0 - Me.LayoutControl1.Text = "LayoutControl1" - ' - 'GridControlPlaceholders - ' - Me.GridControlPlaceholders.DataSource = Me.BindingSourcePlaceholder - Me.GridControlPlaceholders.Location = New System.Drawing.Point(12, 347) - Me.GridControlPlaceholders.MainView = Me.GridViewPlaceholder - Me.GridControlPlaceholders.MenuManager = Me.RibbonControl1 - Me.GridControlPlaceholders.Name = "GridControlPlaceholders" - Me.GridControlPlaceholders.Size = New System.Drawing.Size(417, 245) - Me.GridControlPlaceholders.TabIndex = 7 - Me.GridControlPlaceholders.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewPlaceholder}) - ' - 'GridViewPlaceholder - ' - Me.GridViewPlaceholder.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colPlaceholder, Me.colReplacement}) - Me.GridViewPlaceholder.GridControl = Me.GridControlPlaceholders - Me.GridViewPlaceholder.Name = "GridViewPlaceholder" - ' - 'colPlaceholder - ' - Me.colPlaceholder.Caption = "Platzhalter" - Me.colPlaceholder.Name = "colPlaceholder" - Me.colPlaceholder.Visible = True - Me.colPlaceholder.VisibleIndex = 0 - ' - 'colReplacement - ' - Me.colReplacement.Caption = "Ersetzung" - Me.colReplacement.Name = "colReplacement" - Me.colReplacement.Visible = True - Me.colReplacement.VisibleIndex = 1 - ' 'RibbonControl1 ' - Me.RibbonControl1.CommandLayout = DevExpress.XtraBars.Ribbon.CommandLayout.Simplified Me.RibbonControl1.ExpandCollapseItem.Id = 0 - Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarStaticItem1, Me.BarStaticItem2, Me.BarStaticItem3, Me.BarButtonItem3}) + Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.RibbonGalleryBarItem1, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarButtonItem3}) Me.RibbonControl1.Location = New System.Drawing.Point(0, 0) - Me.RibbonControl1.MaxItemId = 8 + Me.RibbonControl1.MaxItemId = 5 Me.RibbonControl1.Name = "RibbonControl1" Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1}) - Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False] - Me.RibbonControl1.ShowPageHeadersMode = DevExpress.XtraBars.Ribbon.ShowPageHeadersMode.Hide - Me.RibbonControl1.ShowToolbarCustomizeItem = False - Me.RibbonControl1.Size = New System.Drawing.Size(1283, 66) + Me.RibbonControl1.Size = New System.Drawing.Size(1056, 158) Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1 - Me.RibbonControl1.Toolbar.ShowCustomizeItem = False ' - 'BarButtonItem1 + 'RibbonGalleryBarItem1 ' - Me.BarButtonItem1.Caption = "Speichern und schließen" - Me.BarButtonItem1.Id = 1 - Me.BarButtonItem1.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.BarButtonItem1.Name = "BarButtonItem1" + Me.RibbonGalleryBarItem1.Caption = "RibbonGalleryBarItem1" ' - 'BarButtonItem2 ' - Me.BarButtonItem2.Caption = "SQL testen" - Me.BarButtonItem2.Id = 2 - Me.BarButtonItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.BarButtonItem2.Name = "BarButtonItem2" ' - 'BarStaticItem1 + Me.RibbonGalleryBarItem1.Gallery.Images = Me.SvgImageCollection1 + Me.RibbonGalleryBarItem1.Gallery.ShowGroupCaption = True + Me.RibbonGalleryBarItem1.Gallery.ShowItemImage = False + Me.RibbonGalleryBarItem1.Gallery.ShowItemText = True + Me.RibbonGalleryBarItem1.Id = 1 + Me.RibbonGalleryBarItem1.Name = "RibbonGalleryBarItem1" + ' + 'SvgImageCollection1 ' - Me.BarStaticItem1.Caption = "Ergebnis" - Me.BarStaticItem1.Id = 3 - Me.BarStaticItem1.Name = "BarStaticItem1" + Me.SvgImageCollection1.Add("bo_list", "image://svgimages/business objects/bo_list.svg") ' - 'BarStaticItem2 + 'BarButtonItem1 ' - Me.BarStaticItem2.Caption = "Fehler bei Abfrage" - Me.BarStaticItem2.Id = 4 - Me.BarStaticItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarStaticItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.BarStaticItem2.Name = "BarStaticItem2" - Me.BarStaticItem2.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph + Me.BarButtonItem1.Caption = "Verbindungen" + Me.BarButtonItem1.Id = 2 + Me.BarButtonItem1.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.editdatasource1 + Me.BarButtonItem1.Name = "BarButtonItem1" ' - 'BarStaticItem3 + 'BarButtonItem2 ' - Me.BarStaticItem3.Caption = "Abfrage ausgeführt" - Me.BarStaticItem3.Id = 5 - Me.BarStaticItem3.ImageOptions.SvgImage = CType(resources.GetObject("BarStaticItem3.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.BarStaticItem3.Name = "BarStaticItem3" - Me.BarStaticItem3.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph + Me.BarButtonItem2.Caption = "Speichern" + Me.BarButtonItem2.Id = 3 + Me.BarButtonItem2.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.check + Me.BarButtonItem2.Name = "BarButtonItem2" ' 'BarButtonItem3 ' - Me.BarButtonItem3.Caption = "Verbindungen.." - Me.BarButtonItem3.Id = 7 - Me.BarButtonItem3.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem3.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarButtonItem3.Caption = "SQL Ausführen" + Me.BarButtonItem3.Id = 4 + Me.BarButtonItem3.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.updatedataextract3 Me.BarButtonItem3.Name = "BarButtonItem3" ' 'RibbonPage1 ' - Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2}) + Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3}) Me.RibbonPage1.Name = "RibbonPage1" Me.RibbonPage1.Text = "RibbonPage1" ' 'RibbonPageGroup1 ' - Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem1) - Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem2) + Me.RibbonPageGroup1.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far + Me.RibbonPageGroup1.ItemLinks.Add(Me.RibbonGalleryBarItem1) Me.RibbonPageGroup1.Name = "RibbonPageGroup1" - Me.RibbonPageGroup1.Text = "RibbonPageGroup1" + Me.RibbonPageGroup1.Text = "Platzhalter" ' 'RibbonPageGroup2 ' Me.RibbonPageGroup2.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far - Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem3) + Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem1) Me.RibbonPageGroup2.Name = "RibbonPageGroup2" - Me.RibbonPageGroup2.Text = "RibbonPageGroup2" + Me.RibbonPageGroup2.Text = "Datenbank" + ' + 'RibbonPageGroup3 + ' + Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem2) + Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem3) + Me.RibbonPageGroup3.Name = "RibbonPageGroup3" + Me.RibbonPageGroup3.Text = "Start" ' 'RibbonStatusBar1 ' - Me.RibbonStatusBar1.ItemLinks.Add(Me.BarStaticItem1) - Me.RibbonStatusBar1.ItemLinks.Add(Me.BarStaticItem2) - Me.RibbonStatusBar1.ItemLinks.Add(Me.BarStaticItem3) - Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 670) + Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 666) Me.RibbonStatusBar1.Name = "RibbonStatusBar1" Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1 - Me.RibbonStatusBar1.Size = New System.Drawing.Size(1283, 22) - ' - 'GridControlResult - ' - Me.GridControlResult.Location = New System.Drawing.Point(433, 347) - Me.GridControlResult.MainView = Me.GridViewResult - Me.GridControlResult.MenuManager = Me.RibbonControl1 - Me.GridControlResult.Name = "GridControlResult" - Me.GridControlResult.Size = New System.Drawing.Size(838, 245) - Me.GridControlResult.TabIndex = 5 - Me.GridControlResult.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewResult}) - ' - 'GridViewResult - ' - Me.GridViewResult.GridControl = Me.GridControlResult - Me.GridViewResult.Name = "GridViewResult" - ' - 'txtSQL - ' - Me.txtSQL.Location = New System.Drawing.Point(20, 99) - Me.txtSQL.MenuManager = Me.RibbonControl1 - Me.txtSQL.Name = "txtSQL" - Me.txtSQL.Properties.Appearance.Font = New System.Drawing.Font("Consolas", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtSQL.Properties.Appearance.Options.UseFont = True - Me.txtSQL.Size = New System.Drawing.Size(1243, 199) - Me.txtSQL.StyleController = Me.LayoutControl1 - Me.txtSQL.TabIndex = 4 - ' - 'DropDownButton1 - ' - Me.DropDownButton1.Location = New System.Drawing.Point(853, 12) - Me.DropDownButton1.MenuManager = Me.RibbonControl1 - Me.DropDownButton1.Name = "DropDownButton1" - Me.DropDownButton1.Size = New System.Drawing.Size(418, 22) - Me.DropDownButton1.StyleController = Me.LayoutControl1 - Me.DropDownButton1.TabIndex = 8 - Me.DropDownButton1.Text = "Dokument-Indizies" - ' - 'DropDownButton11 - ' - Me.DropDownButton11.Location = New System.Drawing.Point(433, 12) - Me.DropDownButton11.MenuManager = Me.RibbonControl11 - Me.DropDownButton11.Name = "DropDownButton11" - Me.DropDownButton11.Size = New System.Drawing.Size(416, 22) - Me.DropDownButton11.StyleController = Me.LayoutControl1 - Me.DropDownButton11.TabIndex = 8 - Me.DropDownButton11.Text = "Controls (zur Laufzeit ausgewertet)" - ' - 'RibbonControl11 - ' - Me.RibbonControl11.CommandLayout = DevExpress.XtraBars.Ribbon.CommandLayout.Simplified - Me.RibbonControl11.ExpandCollapseItem.Id = 0 - Me.RibbonControl11.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl11.ExpandCollapseItem, Me.RibbonControl11.SearchEditItem, Me.BarButtonItem11, Me.BarButtonItem21}) - Me.RibbonControl11.Location = New System.Drawing.Point(0, 0) - Me.RibbonControl11.MaxItemId = 3 - Me.RibbonControl11.Name = "RibbonControl11" - Me.RibbonControl11.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage11}) - Me.RibbonControl11.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemRibbonSearchEdit2}) - Me.RibbonControl11.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False] - Me.RibbonControl11.ShowPageHeadersMode = DevExpress.XtraBars.Ribbon.ShowPageHeadersMode.Hide - Me.RibbonControl11.ShowToolbarCustomizeItem = False - Me.RibbonControl11.Size = New System.Drawing.Size(1283, 55) - Me.RibbonControl11.StatusBar = Me.RibbonStatusBar11 - Me.RibbonControl11.Toolbar.ShowCustomizeItem = False - ' - 'BarButtonItem11 - ' - Me.BarButtonItem11.Caption = "Speichern und schließen" - Me.BarButtonItem11.Id = 1 - Me.BarButtonItem11.Name = "BarButtonItem11" - ' - 'BarButtonItem21 - ' - Me.BarButtonItem21.Caption = "SQL testen" - Me.BarButtonItem21.Id = 2 - Me.BarButtonItem21.Name = "BarButtonItem21" - ' - 'RibbonPage11 - ' - Me.RibbonPage11.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup11}) - Me.RibbonPage11.Name = "RibbonPage11" - Me.RibbonPage11.Text = "RibbonPage1" - ' - 'RibbonPageGroup11 - ' - Me.RibbonPageGroup11.ItemLinks.Add(Me.BarButtonItem11) - Me.RibbonPageGroup11.ItemLinks.Add(Me.BarButtonItem21) - Me.RibbonPageGroup11.Name = "RibbonPageGroup11" - Me.RibbonPageGroup11.Text = "RibbonPageGroup1" - ' - 'RibbonStatusBar11 - ' - Me.RibbonStatusBar11.Location = New System.Drawing.Point(0, 757) - Me.RibbonStatusBar11.Name = "RibbonStatusBar11" - Me.RibbonStatusBar11.Ribbon = Me.RibbonControl11 - Me.RibbonStatusBar11.Size = New System.Drawing.Size(1283, 22) - ' - 'DropDownButton2 - ' - Me.DropDownButton2.Location = New System.Drawing.Point(853, 38) - Me.DropDownButton2.MenuManager = Me.RibbonControl1 - Me.DropDownButton2.Name = "DropDownButton2" - Me.DropDownButton2.Size = New System.Drawing.Size(418, 22) - Me.DropDownButton2.StyleController = Me.LayoutControl1 - Me.DropDownButton2.TabIndex = 9 - Me.DropDownButton2.Text = "Anwendungsdaten" - ' - 'DropDownButton3 - ' - Me.DropDownButton3.Location = New System.Drawing.Point(433, 38) - Me.DropDownButton3.MenuManager = Me.RibbonControl1 - Me.DropDownButton3.Name = "DropDownButton3" - Me.DropDownButton3.Size = New System.Drawing.Size(416, 22) - Me.DropDownButton3.StyleController = Me.LayoutControl1 - Me.DropDownButton3.TabIndex = 10 - Me.DropDownButton3.Text = "Umgebungsinformationen" - ' - 'cmbConnections - ' - Me.cmbConnections.Location = New System.Drawing.Point(20, 39) - Me.cmbConnections.MenuManager = Me.RibbonControl1 - Me.cmbConnections.Name = "cmbConnections" - Me.cmbConnections.Properties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}) - Me.cmbConnections.Size = New System.Drawing.Size(401, 20) - Me.cmbConnections.StyleController = Me.LayoutControl1 - Me.cmbConnections.TabIndex = 6 - ' - 'Root - ' - Me.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[True] - Me.Root.GroupBordersVisible = False - Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem3, Me.LayoutControlItem2, Me.LayoutControlItem4, Me.SimpleLabelItem2, Me.LayoutControlItem1, Me.LayoutControlItem5, Me.LayoutControlItem6, Me.LayoutControlItem7, Me.LayoutControlItem8, Me.SimpleSeparator1, Me.SimpleLabelItem1, Me.SimpleSeparator2}) - Me.Root.Name = "Root" - Me.Root.Size = New System.Drawing.Size(1283, 604) - Me.Root.TextVisible = False - ' - 'LayoutControlItem3 - ' - Me.LayoutControlItem3.Control = Me.cmbConnections - Me.LayoutControlItem3.ImageOptions.SvgImage = CType(resources.GetObject("LayoutControlItem3.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.LayoutControlItem3.ImageOptions.SvgImageSize = New System.Drawing.Size(16, 16) - Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 0) - Me.LayoutControlItem3.Name = "LayoutControlItem3" - Me.LayoutControlItem3.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) - Me.LayoutControlItem3.Size = New System.Drawing.Size(421, 59) - Me.LayoutControlItem3.Text = "SQL Verbindung" - Me.LayoutControlItem3.TextLocation = DevExpress.Utils.Locations.Top - Me.LayoutControlItem3.TextSize = New System.Drawing.Size(105, 16) - ' - 'LayoutControlItem2 - ' - Me.LayoutControlItem2.Control = Me.GridControlResult - Me.LayoutControlItem2.Location = New System.Drawing.Point(421, 335) - Me.LayoutControlItem2.Name = "LayoutControlItem2" - Me.LayoutControlItem2.Size = New System.Drawing.Size(842, 249) - Me.LayoutControlItem2.TextSize = New System.Drawing.Size(0, 0) - Me.LayoutControlItem2.TextVisible = False - ' - 'LayoutControlItem4 - ' - Me.LayoutControlItem4.Control = Me.GridControlPlaceholders - Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 335) - Me.LayoutControlItem4.Name = "LayoutControlItem4" - Me.LayoutControlItem4.Size = New System.Drawing.Size(421, 249) - Me.LayoutControlItem4.TextSize = New System.Drawing.Size(0, 0) - Me.LayoutControlItem4.TextVisible = False - ' - 'SimpleLabelItem2 - ' - Me.SimpleLabelItem2.AllowHotTrack = False - Me.SimpleLabelItem2.ImageOptions.SvgImage = CType(resources.GetObject("SimpleLabelItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.SimpleLabelItem2.ImageOptions.SvgImageSize = New System.Drawing.Size(16, 16) - Me.SimpleLabelItem2.Location = New System.Drawing.Point(421, 299) - Me.SimpleLabelItem2.Name = "SimpleLabelItem2" - Me.SimpleLabelItem2.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) - Me.SimpleLabelItem2.Size = New System.Drawing.Size(842, 36) - Me.SimpleLabelItem2.Text = "Ergebnis" - Me.SimpleLabelItem2.TextSize = New System.Drawing.Size(105, 16) - ' - 'LayoutControlItem1 - ' - Me.LayoutControlItem1.Control = Me.txtSQL - Me.LayoutControlItem1.ImageOptions.SvgImage = CType(resources.GetObject("LayoutControlItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.LayoutControlItem1.ImageOptions.SvgImageSize = New System.Drawing.Size(16, 16) - Me.LayoutControlItem1.Location = New System.Drawing.Point(0, 60) - Me.LayoutControlItem1.Name = "LayoutControlItem1" - Me.LayoutControlItem1.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) - Me.LayoutControlItem1.Size = New System.Drawing.Size(1263, 238) - Me.LayoutControlItem1.Text = "SQL Abfrage" - Me.LayoutControlItem1.TextLocation = DevExpress.Utils.Locations.Top - Me.LayoutControlItem1.TextSize = New System.Drawing.Size(105, 16) - ' - 'LayoutControlItem5 - ' - Me.LayoutControlItem5.Control = Me.DropDownButton1 - Me.LayoutControlItem5.Location = New System.Drawing.Point(841, 0) - Me.LayoutControlItem5.Name = "LayoutControlItem5" - Me.LayoutControlItem5.Size = New System.Drawing.Size(422, 26) - Me.LayoutControlItem5.TextSize = New System.Drawing.Size(0, 0) - Me.LayoutControlItem5.TextVisible = False - ' - 'LayoutControlItem6 - ' - Me.LayoutControlItem6.Control = Me.DropDownButton11 - Me.LayoutControlItem6.ControlAlignment = System.Drawing.ContentAlignment.TopLeft - Me.LayoutControlItem6.CustomizationFormText = "LayoutControlItem5" - Me.LayoutControlItem6.Location = New System.Drawing.Point(421, 0) - Me.LayoutControlItem6.Name = "LayoutControlItem6" - Me.LayoutControlItem6.Size = New System.Drawing.Size(420, 26) - Me.LayoutControlItem6.Text = "LayoutControlItem5" - Me.LayoutControlItem6.TextSize = New System.Drawing.Size(0, 0) - Me.LayoutControlItem6.TextVisible = False - ' - 'LayoutControlItem7 - ' - Me.LayoutControlItem7.Control = Me.DropDownButton2 - Me.LayoutControlItem7.Location = New System.Drawing.Point(841, 26) - Me.LayoutControlItem7.Name = "LayoutControlItem7" - Me.LayoutControlItem7.Size = New System.Drawing.Size(422, 33) - Me.LayoutControlItem7.TextSize = New System.Drawing.Size(0, 0) - Me.LayoutControlItem7.TextVisible = False - ' - 'LayoutControlItem8 - ' - Me.LayoutControlItem8.Control = Me.DropDownButton3 - Me.LayoutControlItem8.Location = New System.Drawing.Point(421, 26) - Me.LayoutControlItem8.Name = "LayoutControlItem8" - Me.LayoutControlItem8.Size = New System.Drawing.Size(420, 33) - Me.LayoutControlItem8.TextSize = New System.Drawing.Size(0, 0) - Me.LayoutControlItem8.TextVisible = False - ' - 'SimpleSeparator1 - ' - Me.SimpleSeparator1.AllowHotTrack = False - Me.SimpleSeparator1.Location = New System.Drawing.Point(0, 298) - Me.SimpleSeparator1.Name = "SimpleSeparator1" - Me.SimpleSeparator1.Size = New System.Drawing.Size(1263, 1) - ' - 'SimpleLabelItem1 - ' - Me.SimpleLabelItem1.AllowHotTrack = False - Me.SimpleLabelItem1.ImageOptions.SvgImage = CType(resources.GetObject("SimpleLabelItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.SimpleLabelItem1.ImageOptions.SvgImageSize = New System.Drawing.Size(16, 16) - Me.SimpleLabelItem1.Location = New System.Drawing.Point(0, 299) - Me.SimpleLabelItem1.Name = "SimpleLabelItem1" - Me.SimpleLabelItem1.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) - Me.SimpleLabelItem1.Size = New System.Drawing.Size(421, 36) - Me.SimpleLabelItem1.Text = "Platzhalter" - Me.SimpleLabelItem1.TextSize = New System.Drawing.Size(105, 16) - ' - 'SimpleSeparator2 - ' - Me.SimpleSeparator2.AllowHotTrack = False - Me.SimpleSeparator2.Location = New System.Drawing.Point(0, 59) - Me.SimpleSeparator2.Name = "SimpleSeparator2" - Me.SimpleSeparator2.Size = New System.Drawing.Size(1263, 1) + Me.RibbonStatusBar1.Size = New System.Drawing.Size(1056, 24) ' 'RibbonPage2 ' Me.RibbonPage2.Name = "RibbonPage2" Me.RibbonPage2.Text = "RibbonPage2" ' - 'frmSQLEditor + 'RichEditControl1 + ' + Me.RichEditControl1.Dock = System.Windows.Forms.DockStyle.Fill + Me.RichEditControl1.Location = New System.Drawing.Point(0, 0) + Me.RichEditControl1.MenuManager = Me.RibbonControl1 + Me.RichEditControl1.Name = "RichEditControl1" + Me.RichEditControl1.Size = New System.Drawing.Size(737, 508) + Me.RichEditControl1.TabIndex = 2 + ' + 'SplitContainerControl1 + ' + Me.SplitContainerControl1.Dock = System.Windows.Forms.DockStyle.Fill + Me.SplitContainerControl1.Location = New System.Drawing.Point(0, 158) + Me.SplitContainerControl1.Name = "SplitContainerControl1" + ' + 'SplitContainerControl1.Panel1 + ' + Me.SplitContainerControl1.Panel1.Controls.Add(Me.RichEditControl1) + Me.SplitContainerControl1.Panel1.Text = "Panel1" + ' + 'SplitContainerControl1.Panel2 + ' + Me.SplitContainerControl1.Panel2.Controls.Add(Me.GridControl1) + Me.SplitContainerControl1.Panel2.Text = "Panel2" + Me.SplitContainerControl1.Size = New System.Drawing.Size(1056, 508) + Me.SplitContainerControl1.SplitterPosition = 737 + Me.SplitContainerControl1.TabIndex = 4 + ' + 'GridControl1 + ' + Me.GridControl1.Dock = System.Windows.Forms.DockStyle.Fill + Me.GridControl1.Location = New System.Drawing.Point(0, 0) + Me.GridControl1.MainView = Me.GridView1 + Me.GridControl1.MenuManager = Me.RibbonControl1 + Me.GridControl1.Name = "GridControl1" + Me.GridControl1.Size = New System.Drawing.Size(309, 508) + Me.GridControl1.TabIndex = 0 + Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView1}) + ' + 'GridView1 + ' + Me.GridView1.GridControl = Me.GridControl1 + Me.GridView1.Name = "GridView1" + ' + 'Form1 ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.ClientSize = New System.Drawing.Size(1283, 692) - Me.Controls.Add(Me.LayoutControl1) + Me.ClientSize = New System.Drawing.Size(1056, 690) + Me.Controls.Add(Me.SplitContainerControl1) Me.Controls.Add(Me.RibbonStatusBar1) Me.Controls.Add(Me.RibbonControl1) - Me.IconOptions.SvgImage = CType(resources.GetObject("frmSQLEditor.IconOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.Name = "frmSQLEditor" + Me.Name = "Form1" Me.Ribbon = Me.RibbonControl1 Me.StatusBar = Me.RibbonStatusBar1 - Me.Text = "SQL Editor" - CType(Me.RepositoryItemRibbonSearchEdit2, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).EndInit() - Me.LayoutControl1.ResumeLayout(False) - CType(Me.GridControlPlaceholders, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.BindingSourcePlaceholder, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.GridViewPlaceholder, System.ComponentModel.ISupportInitialize).EndInit() + Me.Text = "SQL Connector" CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.GridControlResult, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.GridViewResult, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.txtSQL.Properties, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.RibbonControl11, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.cmbConnections.Properties, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.Root, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.LayoutControlItem3, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.LayoutControlItem2, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.LayoutControlItem4, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.SimpleLabelItem2, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.LayoutControlItem1, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.LayoutControlItem5, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.LayoutControlItem6, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.LayoutControlItem7, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.LayoutControlItem8, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.SimpleSeparator1, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.SimpleLabelItem1, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.SimpleSeparator2, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SplitContainerControl1.Panel1, System.ComponentModel.ISupportInitialize).EndInit() + Me.SplitContainerControl1.Panel1.ResumeLayout(False) + CType(Me.SplitContainerControl1.Panel2, System.ComponentModel.ISupportInitialize).EndInit() + Me.SplitContainerControl1.Panel2.ResumeLayout(False) + CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).EndInit() + Me.SplitContainerControl1.ResumeLayout(False) + CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.GridView1, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) Me.PerformLayout() End Sub - Friend WithEvents LayoutControl1 As DevExpress.XtraLayout.LayoutControl - Friend WithEvents Root As DevExpress.XtraLayout.LayoutControlGroup Friend WithEvents RibbonControl1 As DevExpress.XtraBars.Ribbon.RibbonControl Friend WithEvents RibbonPage1 As DevExpress.XtraBars.Ribbon.RibbonPage Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents RibbonStatusBar1 As DevExpress.XtraBars.Ribbon.RibbonStatusBar Friend WithEvents RibbonPage2 As DevExpress.XtraBars.Ribbon.RibbonPage + Friend WithEvents RibbonGalleryBarItem1 As DevExpress.XtraBars.RibbonGalleryBarItem + Friend WithEvents SvgImageCollection1 As DevExpress.Utils.SvgImageCollection + Friend WithEvents RichEditControl1 As DevExpress.XtraRichEdit.RichEditControl + Friend WithEvents SplitContainerControl1 As DevExpress.XtraEditors.SplitContainerControl + Friend WithEvents GridControl1 As DevExpress.XtraGrid.GridControl + Friend WithEvents GridView1 As DevExpress.XtraGrid.Views.Grid.GridView Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem - Friend WithEvents GridControlResult As DevExpress.XtraGrid.GridControl - Friend WithEvents GridViewResult As DevExpress.XtraGrid.Views.Grid.GridView - Friend WithEvents txtSQL As DevExpress.XtraEditors.MemoEdit - Friend WithEvents LayoutControlItem1 As DevExpress.XtraLayout.LayoutControlItem - Friend WithEvents LayoutControlItem2 As DevExpress.XtraLayout.LayoutControlItem - Friend WithEvents LayoutControlItem3 As DevExpress.XtraLayout.LayoutControlItem - Friend WithEvents GridControlPlaceholders As DevExpress.XtraGrid.GridControl - Friend WithEvents GridViewPlaceholder As DevExpress.XtraGrid.Views.Grid.GridView - Friend WithEvents DropDownButton1 As DevExpress.XtraEditors.DropDownButton - Friend WithEvents LayoutControlItem4 As DevExpress.XtraLayout.LayoutControlItem - Friend WithEvents SimpleLabelItem2 As DevExpress.XtraLayout.SimpleLabelItem - Friend WithEvents SimpleLabelItem1 As DevExpress.XtraLayout.SimpleLabelItem - Friend WithEvents LayoutControlItem5 As DevExpress.XtraLayout.LayoutControlItem - Friend WithEvents DropDownButton11 As DevExpress.XtraEditors.DropDownButton - Friend WithEvents RibbonControl11 As DevExpress.XtraBars.Ribbon.RibbonControl - Friend WithEvents BarButtonItem11 As DevExpress.XtraBars.BarButtonItem - Friend WithEvents BarButtonItem21 As DevExpress.XtraBars.BarButtonItem - Friend WithEvents RibbonPage11 As DevExpress.XtraBars.Ribbon.RibbonPage - Friend WithEvents RibbonPageGroup11 As DevExpress.XtraBars.Ribbon.RibbonPageGroup - Friend WithEvents RibbonStatusBar11 As DevExpress.XtraBars.Ribbon.RibbonStatusBar - Friend WithEvents DropDownButton2 As DevExpress.XtraEditors.DropDownButton - Friend WithEvents DropDownButton3 As DevExpress.XtraEditors.DropDownButton - Friend WithEvents LayoutControlItem6 As DevExpress.XtraLayout.LayoutControlItem - Friend WithEvents LayoutControlItem7 As DevExpress.XtraLayout.LayoutControlItem - Friend WithEvents LayoutControlItem8 As DevExpress.XtraLayout.LayoutControlItem - Friend WithEvents RepositoryItemRibbonSearchEdit2 As DevExpress.XtraBars.Ribbon.Internal.RepositoryItemRibbonSearchEdit - Friend WithEvents colPlaceholder As DevExpress.XtraGrid.Columns.GridColumn - Friend WithEvents colReplacement As DevExpress.XtraGrid.Columns.GridColumn - Friend WithEvents BarStaticItem1 As DevExpress.XtraBars.BarStaticItem - Friend WithEvents BarStaticItem2 As DevExpress.XtraBars.BarStaticItem - Friend WithEvents BarStaticItem3 As DevExpress.XtraBars.BarStaticItem Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem - Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup - Friend WithEvents BindingSourcePlaceholder As BindingSource - Friend WithEvents SimpleSeparator1 As DevExpress.XtraLayout.SimpleSeparator - Friend WithEvents SimpleSeparator2 As DevExpress.XtraLayout.SimpleSeparator - Friend WithEvents cmbConnections As DevExpress.XtraEditors.ComboBoxEdit + Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup End Class diff --git a/Controls.SQLEditor/frmSQLEditor.resx b/Controls.SQLEditor/frmSQLEditor.resx index 62ec0477..f722219e 100644 --- a/Controls.SQLEditor/frmSQLEditor.resx +++ b/Controls.SQLEditor/frmSQLEditor.resx @@ -117,251 +117,7 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFUCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAxNiAxNiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxNiAxNiI+DQogIDxz - dHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CgkuTWFza3tmaWxsOiM3MDcwNzA7fQoJLnN0MHtvcGFjaXR5OjAu - NTt9Cjwvc3R5bGU+DQogIDxnIGlkPSJJbnNpZGVfQm9yZGVyIj4NCiAgICA8cGF0aCBkPSJNOS41LDJD - NywyLDUsNCw1LDYuNWMwLDEsMC4zLDEuOSwwLjksMi42bC00LjQsNC40bDEsMWw0LjQtNC40QzcuNiwx - MC43LDguNSwxMSw5LjUsMTFDMTIsMTEsMTQsOSwxNCw2LjUgICBTMTIsMiw5LjUsMnogTTkuNSwxMEM3 - LjYsMTAsNiw4LjQsNiw2LjVTNy42LDMsOS41LDNTMTMsNC42LDEzLDYuNVMxMS40LDEwLDkuNSwxMHoi - IGNsYXNzPSJNYXNrIiAvPg0KICA8L2c+DQogIDxnIGlkPSJMYXllcl8yIiAvPg0KPC9zdmc+Cw== - - - + 17, 17 - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACQCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z - ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkdyZWVue2ZpbGw6IzAz - OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cgkuc3Qwe29wYWNpdHk6MC43NTt9Cgkuc3Qxe29wYWNp - dHk6MC41O30KPC9zdHlsZT4NCiAgPGcgaWQ9IkNoZWNrIj4NCiAgICA8cG9seWdvbiBwb2ludHM9IjI3 - LDUgMTEsMjEgNSwxNSAyLDE4IDExLDI3IDMwLDggICIgY2xhc3M9IkdyZWVuIiAvPg0KICA8L2c+DQo8 - L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFoEAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD - MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iVXBkYXRlRGF0YUV4dHJhY3QiPg0KICAgIDxwYXRo - IGQ9Ik00LDEwVjZjMC0yLjIsNC41LTQsMTAtNHMxMCwxLjgsMTAsNHY0YzAsMi4yLTQuNSw0LTEwLDRT - NCwxMi4yLDQsMTB6IE0xNCwyMGMwLjUsMCwxLjEsMCwxLjYtMC4xICAgYzEuNi0yLjQsNC4zLTMuOSw3 - LjQtMy45YzAuMywwLDAuNywwLDEsMC4xYzAsMCwwLDAsMC0wLjF2LTRjMCwyLjItNC41LDQtMTAsNFM0 - LDE0LjIsNCwxMnY0QzQsMTguMiw4LjUsMjAsMTQsMjB6IE0xNCwyNEwxNCwyNCAgIGMwLjEtMC43LDAu - My0xLjQsMC41LTJjLTAuMiwwLTAuNCwwLTAuNSwwYy01LjUsMC0xMC0xLjgtMTAtNHY0YzAsMi4yLDQu - NSw0LDEwLDRWMjR6IiBjbGFzcz0iWWVsbG93IiAvPg0KICAgIDxwYXRoIGQ9Ik0zMCwxOHY2aC0wLjFI - MjRsMi41LTIuNUMyNS42LDIwLjYsMjQuNCwyMCwyMywyMGMtMi40LDAtNC40LDEuNy00LjksNGgtMmMw - LjUtMy40LDMuNC02LDYuOS02ICAgYzEuOSwwLDMuNywwLjgsNC45LDIuMUwzMCwxOHogTTIzLDMwYy0x - LjQsMC0yLjYtMC42LTMuNS0xLjVMMjIsMjZoLTUuOUgxNnY2bDIuMS0yLjFjMS4zLDEuMywzLDIuMSw0 - LjksMi4xYzMuNSwwLDYuNC0yLjYsNi45LTYgICBoLTJDMjcuNCwyOC4zLDI1LjQsMzAsMjMsMzB6IiBj - bGFzcz0iR3JlZW4iIC8+DQogIDwvZz4NCjwvc3ZnPgs= - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABIDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD - MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw - MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu - bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iSGlnaEltcG9ydGFuY2UiPg0KICAg - IDxwYXRoIGQ9Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMy - My43LDIsMTYsMnogTTE2LDI0Yy0xLjEsMC0yLTAuOS0yLTJzMC45LTIsMi0yczIsMC45LDIsMiAgIFMx - Ny4xLDI0LDE2LDI0eiBNMTgsMThoLTRWOGg0VjE4eiIgY2xhc3M9IlJlZCIgLz4NCiAgPC9nPg0KPC9z - dmc+Cw== - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAHICAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z - ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkdyZWVue2ZpbGw6IzAz - OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cgkuc3Qwe29wYWNpdHk6MC43NTt9Cgkuc3Qxe29wYWNp - dHk6MC41O30KPC9zdHlsZT4NCiAgPGcgaWQ9IkNoZWNrQ2lyY2xlZCI+DQogICAgPHBhdGggZD0iTTE2 - LDRDOS40LDQsNCw5LjQsNCwxNmMwLDYuNiw1LjQsMTIsMTIsMTJzMTItNS40LDEyLTEyQzI4LDkuNCwy - Mi42LDQsMTYsNHogTTE0LDIybC02LTZsMi0ybDQsNGw4LThsMiwyICAgTDE0LDIyeiIgY2xhc3M9Ikdy - ZWVuIiAvPg0KICA8L2c+DQo8L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAAoEAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 - RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm - aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iRWRpdENvbm5lY3Rpb24iPg0K - ICAgIDxwYXRoIGQ9Ik0xOCwyNS45QzE3LjQsMjYsMTYuNywyNiwxNiwyNnMtMS40LDAtMi0wLjFWMjho - LTR2NGg0aDRoNHYtNGgtNFYyNS45eiIgY2xhc3M9IkdyZWVuIiAvPg0KICAgIDxwYXRoIGQ9Ik02LDEw - VjZjMC0yLjIsNC41LTQsMTAtNHMxMCwxLjgsMTAsNHY0YzAsMi4yLTQuNSw0LTEwLDRTNiwxMi4yLDYs - MTB6IE0xNiwxNmMtNS41LDAtMTAtMS44LTEwLTR2NCAgIGMwLDIuMiw0LjUsNCwxMCw0czEwLTEuOCwx - MC00di00QzI2LDE0LjIsMjEuNSwxNiwxNiwxNnogTTE2LDIyYy01LjUsMC0xMC0xLjgtMTAtNHY0YzAs - Mi4yLDQuNSw0LDEwLDRzMTAtMS44LDEwLTR2LTQgICBDMjYsMjAuMiwyMS41LDIyLDE2LDIyeiIgY2xh - c3M9IlllbGxvdyIgLz4NCiAgICA8ZyBjbGFzcz0ic3QxIj4NCiAgICAgIDxwYXRoIGQ9Ik0xMCwzMkgy - di00aDhWMzJ6IE0zMCwyOGgtOHY0aDhWMjh6IiBjbGFzcz0iQmxhY2siIC8+DQogICAgPC9nPg0KICA8 - L2c+DQo8L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAAoEAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 - RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm - aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iRWRpdENvbm5lY3Rpb24iPg0K - ICAgIDxwYXRoIGQ9Ik0xOCwyNS45QzE3LjQsMjYsMTYuNywyNiwxNiwyNnMtMS40LDAtMi0wLjFWMjho - LTR2NGg0aDRoNHYtNGgtNFYyNS45eiIgY2xhc3M9IkdyZWVuIiAvPg0KICAgIDxwYXRoIGQ9Ik02LDEw - VjZjMC0yLjIsNC41LTQsMTAtNHMxMCwxLjgsMTAsNHY0YzAsMi4yLTQuNSw0LTEwLDRTNiwxMi4yLDYs - MTB6IE0xNiwxNmMtNS41LDAtMTAtMS44LTEwLTR2NCAgIGMwLDIuMiw0LjUsNCwxMCw0czEwLTEuOCwx - MC00di00QzI2LDE0LjIsMjEuNSwxNiwxNiwxNnogTTE2LDIyYy01LjUsMC0xMC0xLjgtMTAtNHY0YzAs - Mi4yLDQuNSw0LDEwLDRzMTAtMS44LDEwLTR2LTQgICBDMjYsMjAuMiwyMS41LDIyLDE2LDIyeiIgY2xh - c3M9IlllbGxvdyIgLz4NCiAgICA8ZyBjbGFzcz0ic3QxIj4NCiAgICAgIDxwYXRoIGQ9Ik0xMCwzMkgy - di00aDhWMzJ6IE0zMCwyOGgtOHY0aDhWMjh6IiBjbGFzcz0iQmxhY2siIC8+DQogICAgPC9nPg0KICA8 - L2c+DQo8L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAGYCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iRmllbGRfSGVhZGVycyIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5l - dyAwIDAgMzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3 - O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLnN0MHtvcGFjaXR5OjAuNTt9Cjwvc3R5bGU+DQogIDxn - IGNsYXNzPSJzdDAiPg0KICAgIDxwYXRoIGQ9Ik0yMCwxOGgtOHYtNmg4VjE4eiBNMzAsMTJoLTh2Nmg4 - VjEyeiBNMjAsMjBoLTh2Nmg4VjIweiBNMTAsMjBIMnY2aDhWMjB6IE0zMCwyMGgtOHY2aDhWMjB6IiBj - bGFzcz0iQmxhY2siIC8+DQogIDwvZz4NCiAgPHBhdGggZD0iTTEyLDR2NmgxOFY0SDEyeiBNMTYsOGwt - Mi0yaDRMMTYsOHogTTIsMTJ2Nmg4di02SDJ6IE02LDE2bC0yLTJoNEw2LDE2eiIgY2xhc3M9IkJsdWUi - IC8+DQo8L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAJkDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 - RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm - aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iRmlsdGVyUXVlcnkiPg0KICAg - IDxwYXRoIGQ9Ik04LDEwSDB2Nmg4VjEweiBNOCwySDB2Nmg4VjJ6IE0xOCwyaC04djZoOFYyeiBNMTgs - MTBoLTh2Nmg4VjEweiIgY2xhc3M9IkdyZWVuIiAvPg0KICAgIDxnIGNsYXNzPSJzdDEiPg0KICAgICAg - PHBhdGggZD0iTTI4LDE2aC04di02aDhWMTZ6IE0yOCwyaC04djZoOFYyeiBNMCwyNGg4di02SDBWMjR6 - IE0xNC4zLDIxLjFjLTAuMi0wLjItMC4zLTAuNC0wLjMtMC43VjE4aC00djZoNy4yICAgIEwxNC4zLDIx - LjF6IiBjbGFzcz0iQmxhY2siIC8+DQogICAgPC9nPg0KICAgIDxwb2x5Z29uIHBvaW50cz0iMTYsMTgg - MzIsMTggMzIsMjAgMjYsMjYgMjYsMzIgMjIsMzIgMjIsMjYgMTYsMjAgICIgY2xhc3M9IlllbGxvdyIg - Lz4NCiAgPC9nPg0KPC9zdmc+Cw== - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPcEAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 - RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm - aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iVGl0bGVfMV8iPg0KICAgIDxw - YXRoIGQ9Ik0yOSwxNEgxYy0wLjUsMC0xLDAuNS0xLDF2MTJjMCwwLjUsMC41LDEsMSwxaDI4YzAuNSww - LDEtMC41LDEtMVYxNUMzMCwxNC41LDI5LjUsMTQsMjksMTR6ICAgIE0yOCwyNkgyVjE2aDI2VjI2eiBN - MjIuOSwxMS4yQzIzLjcsMTAuNiwyNCwxMCwyNCw5YzAtMC42LTAuMi0xLjItMC43LTEuNmMtMC41LTAu - NC0xLjEtMC43LTEuOC0wLjhjMC42LTAuMiwxLjEtMC41LDEuNS0wLjkgICBjMC40LTAuNCwwLjYtMC45 - LDAuNi0xLjRjMC0wLjctMC4zLTEuMy0wLjktMS43QzIyLjEsMi4yLDIxLjEsMiwxOS45LDJIMTZ2OS45 - VjEyaDRDMjEuMiwxMiwyMi4zLDExLjgsMjIuOSwxMS4yeiBNMTguNCwzLjdoMC45ICAgYzEuMSwwLDEu - NywwLjQsMS43LDEuMWMwLDAuNC0wLjEsMC43LTAuNCwwLjlDMjAuNCw1LjksMjAsNiwxOS41LDZoLTEu - MVYzLjd6IE0xOC40LDEwLjJWNy42aDEuM2MwLjUsMCwwLjksMC4xLDEuMywwLjMgICBjMC4zLDAuMiww - LjUsMC42LDAuNSwwLjljMCwwLjQtMC4xLDAuNy0wLjUsMWMtMC4zLDAuMi0wLjgsMC40LTEuMywwLjRI - MTguNHogTTguOSw5LjhoMy4ybDAuNiwyLjNIMTVMMTEuOCwySDkuNEw2LjEsMTJoMi4yICAgTDguOSw5 - Ljh6IE0xMC40LDQuN2MwLjEtMC4zLDAuMS0wLjYsMC4xLTAuOWgwLjFjMCwwLjMsMC4xLDAuNiwwLjEs - MC45bDEsMy4zSDkuNEwxMC40LDQuN3oiIGlkPSJUaXRsZSIgY2xhc3M9IkJsYWNrIiAvPg0KICA8L2c+ - DQo8L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAOwDAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkdyZWVue2ZpbGw6IzAzOUMyMzt9Cgku - QmxhY2t7ZmlsbDojNzI3MjcyO30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5ZZWxsb3d7ZmlsbDojRkZC - MTE1O30KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iRWRpdERhdGFT - b3VyY2UiPg0KICAgIDxwYXRoIGQ9Ik00LDEwVjZjMC0yLjIsNC41LTQsMTAtNHMxMCwxLjgsMTAsNHY0 - YzAsMi4yLTQuNSw0LTEwLDRTNCwxMi4yLDQsMTB6IE0yNCwxOEwyNCwxOEMyNCwxOCwyNCwxOCwyNCwx - OCAgIEMyNCwxOCwyNCwxOCwyNCwxOHogTTE0LDIwYzUuNSwwLDEwLTEuOCwxMC00di00YzAsMi4yLTQu - NSw0LTEwLDRTNCwxNC4yLDQsMTJ2NEM0LDE4LjIsOC41LDIwLDE0LDIweiBNMTUuMiwyNmw0LjgtNC44 - ICAgYy0xLjcsMC41LTMuNywwLjgtNiwwLjhjLTUuNSwwLTEwLTEuOC0xMC00djRjMCwyLjIsNC41LDQs - MTAsNEMxNC40LDI2LDE0LjgsMjYsMTUuMiwyNnoiIGNsYXNzPSJZZWxsb3ciIC8+DQogICAgPHBhdGgg - ZD0iTTI5LDIzbC04LDhsLTQtNGw4LThMMjksMjN6IE0zMCwyMmwxLjctMS43YzAuNC0wLjQsMC40LTEs - MC0xLjNMMjksMTYuM2MtMC40LTAuNC0xLTAuNC0xLjMsMEwyNiwxOEwzMCwyMnogICAgTTE2LDI4djRo - NEwxNiwyOHoiIGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+DQo8L3N2Zz4L - - \ No newline at end of file diff --git a/Controls.SQLEditor/frmSQLEditor.vb b/Controls.SQLEditor/frmSQLEditor.vb index 68a984ae..2e5cdbd3 100644 --- a/Controls.SQLEditor/frmSQLEditor.vb +++ b/Controls.SQLEditor/frmSQLEditor.vb @@ -1,146 +1,101 @@ -Imports DigitalData.Modules.Database +Imports DevExpress.XtraBars.Ribbon +Imports DevExpress.XtraRichEdit.API.Native +Imports DevExpress.XtraRichEdit.Services +Imports DigitalData.Modules.Database Imports DigitalData.Modules.Logging Imports DigitalData.Modules.Patterns -Imports DigitalData.Modules.Language.Utils -Imports DigitalData.GUIs.Common -Imports DevExpress.XtraGrid.Views.Grid Public Class frmSQLEditor - Public SQLString As String + Private Patterns As ClassPatterns Private LogConfig As LogConfig - Private SQLServer As MSSQLServer - Private CurrentPosition As String - - Private Placeholders As New List(Of Placeholder) - Private Connections As New List(Of Connection) + Private Database As MSSQLServer - Private Patterns As ClassPatterns + Public Enum PlaceholderCollection + Globix + Zooflow + End Enum - Friend Class Placeholder - Public Property Placeholder As String - Public Property Replacement As String - End Class + Public Sub SetPlaceholders() - Friend Class Connection - Public Property Guid As Integer - Public Property Name As String - Public Property Description As String - Public Property Provider As String - Public Property Server As String - Public Property Database As String - Public Property Username As String - Public Property Password As String - - Public Overrides Function ToString() As String - Return Name - End Function - End Class + End Sub - Public Sub New(LogConfig As LogConfig, SQLServer As MSSQLServer) + Public Sub New(pLogConfig As LogConfig, pDatabase As MSSQLServer) + ' Dieser Aufruf ist für den Designer erforderlich. InitializeComponent() - Me.LogConfig = LogConfig - Me.SQLServer = SQLServer - Patterns = New ClassPatterns(LogConfig) + ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. + LogConfig = pLogConfig End Sub - Private Sub frmSQLEditor_Load(sender As Object, e As EventArgs) Handles MyBase.Load - Try - InitializeBaseForm(LogConfig) + Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Patterns = New ClassPatterns(LogConfig) + + Dim oGroup1 = New GalleryItemGroup() With {.Caption = "Gruppe 1"} + Dim oGroup2 = New GalleryItemGroup() With {.Caption = "Gruppe 2"} + Dim oGroup3 = New GalleryItemGroup() With {.Caption = "Gruppe 3"} - txtSQL.Text = SQLString + Dim oItems As New List(Of GalleryItem)() From { + GetGalleryItem(New Placeholder("StringValue1", "Index", Placeholder.PlaceholderType.FileFlow, "StringValue1")), + GetGalleryItem(New Placeholder("StringValue2", "Index", Placeholder.PlaceholderType.FileFlow, "StringValue2")), + GetGalleryItem(New Placeholder("StringValue3", "Index", Placeholder.PlaceholderType.FileFlow, "StringValue3")), + GetGalleryItem(New Placeholder("StringValue4", "Index", Placeholder.PlaceholderType.FileFlow, "StringValue4")), + GetGalleryItem(New Placeholder("StringValue5", "Index", Placeholder.PlaceholderType.FileFlow, "StringValue5")) + } - BindingSourcePlaceholder.DataSource = Placeholders - Placeholders.Clear() + oGroup1.Items.AddRange(oItems.ToArray) + oGroup2.Items.AddRange(oItems.ToArray) + oGroup3.Items.AddRange(oItems.ToArray) - Connections = Load_SQLConnections() + RibbonGalleryBarItem1.Gallery.Groups.AddRange(New List(Of GalleryItemGroup)() From {oGroup1, oGroup2, oGroup3}.ToArray) - Dim oViews As New List(Of GridView) From {GridViewResult, GridViewPlaceholder} - Dim oGridBuilder As New GridBuilder(oViews) - oGridBuilder. - WithDefaults(). - WithReadOnlyOptions(GridViewResult) + RichEditControl1.Options.Search.RegExResultMaxGuaranteedLength = 500 + RichEditControl1.ReplaceService(Of ISyntaxHighlightService)(New SQLSyntaxHighlightService(RichEditControl1.Document)) + RichEditControl1.ActiveViewType = DevExpress.XtraRichEdit.RichEditViewType.Draft + RichEditControl1.Document.Sections(0).Page.Width = DevExpress.Office.Utils.Units.InchesToDocumentsF(80.0F) - cmbConnections.Properties.Items.Clear() - For Each oConnection In Connections - cmbConnections.Properties.Items.Add(oConnection) - Next - Catch ex As Exception - ShowErrorMessage(ex) - End Try + RichEditControl1.Document.DefaultCharacterProperties.FontName = "Courier New" + RichEditControl1.Document.DefaultCharacterProperties.FontSize = 12 End Sub - Private Function Load_SQLConnections() - Try - Dim oSQL As String = "SELECT * FROM TBDD_CONNECTION" - Dim oTable As DataTable = SQLServer.GetDatatable(oSQL) - Dim oConnections As New List(Of Connection) - - For Each oRow As DataRow In oTable.Rows - oConnections.Add(New Connection With { - .Guid = NotNull(oRow.Item("GUID"), String.Empty), - .Name = NotNull(oRow.Item("BEZEICHNUNG"), String.Empty), - .Provider = NotNull(oRow.Item("SQL_PROVIDER"), String.Empty), - .Database = NotNull(oRow.Item("DATENBANK"), String.Empty), - .Description = NotNull(oRow.Item("BEMERKUNG"), String.Empty), - .Password = NotNull(oRow.Item("PASSWORD"), String.Empty), - .Server = NotNull(oRow.Item("SERVER"), String.Empty), - .Username = NotNull(oRow.Item("USERNAME"), String.Empty) - }) - Next - - Return oConnections - Catch ex As Exception - ShowErrorMessage(ex) - Return New List(Of Connection) - End Try - End Function + Private Sub RibbonGalleryBarItem1_GalleryItemClick(sender As Object, e As GalleryItemClickEventArgs) Handles RibbonGalleryBarItem1.GalleryItemClick + Dim oPlaceholder As Placeholder = e.Item.Tag + MsgBox(oPlaceholder.Name) - Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick - SQLString = txtSQL.Text - DialogResult = DialogResult.OK - Close() + Dim pPosition = RichEditControl1.Document.CaretPosition + RichEditControl1.Document.InsertSingleLineText(pPosition, oPlaceholder.Value) End Sub - Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick - If cmbConnections.SelectedItem Is Nothing Then - ShowErrorMessage("Bitte wählen sie eine Datenbank Verbindung!") - Exit Sub - End If - - Try - Dim oSQL As String = txtSQL.EditValue.ToString - Dim oConnection As Connection = cmbConnections.SelectedItem - Dim oConnectionString = SQLServer.GetConnectionString(oConnection.Server, oConnection.Database, oConnection.Username, oConnection.Password) - Dim oTable As DataTable = SQLServer.GetDatatableWithConnection(oSQL, oConnectionString) - - GridControlResult.DataSource = oTable - Catch ex As Exception - ShowErrorMessage(ex) - End Try - End Sub + Private Class Placeholder + Public Type As PlaceholderType + Public Name As String + Public Description As String + Public Value As String + + Public Enum PlaceholderType + FileFlow + End Enum + + Public Sub New(pName As String, pDescription As String, pType As PlaceholderType, pValue As String) + Name = pName + Description = pDescription + Type = pType + Value = pValue + End Sub + End Class - Private Sub txtSQL_EditValueChanged(sender As Object, e As EventArgs) Handles txtSQL.EditValueChanged - CurrentPosition = txtSQL.SelectionStart - Dim oValue = txtSQL.EditValue.ToString.Trim + Private Function GetGalleryItem(pPlaceholder As Placeholder) As GalleryItem + Return New GalleryItem(Nothing, pPlaceholder.Name, pPlaceholder.Description) With { + .Tag = pPlaceholder + } + End Function - If oValue.Length > 0 Then - GridControlPlaceholders.Enabled = True - CheckForPlaceholders(txtSQL.EditValue) - Else - GridControlPlaceholders.Enabled = False - End If + Private Sub RichEditControl1_ContentChanged(sender As Object, e As EventArgs) Handles RichEditControl1.ContentChanged + Dim oSqlText = RichEditControl1.Document.Text + Dim oPatterns = Patterns.GetAllPatterns(oSqlText) End Sub - Private Sub CheckForPlaceholders(Text As String) - Placeholders.Clear() + Private Sub RibbonControl1_Click(sender As Object, e As EventArgs) Handles RibbonControl1.Click - For Each oPattern In Patterns.GetAllPatterns(Text) - Placeholders.Add(New Placeholder With { - .Placeholder = oPattern.ToString, - .Replacement = "" - }) - Next End Sub End Class diff --git a/Controls.SQLEditor/frmSQLEditor_old.Designer.vb b/Controls.SQLEditor/frmSQLEditor_old.Designer.vb new file mode 100644 index 00000000..86335469 --- /dev/null +++ b/Controls.SQLEditor/frmSQLEditor_old.Designer.vb @@ -0,0 +1,660 @@ +Imports DigitalData.GUIs.Common.Base + + +Partial Class frmSQLEditor_old + Inherits BaseRibbonForm + + 'Form overrides dispose to clean up the component list. + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + MyBase.Dispose(disposing) + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim EditorButtonImageOptions1 As DevExpress.XtraEditors.Controls.EditorButtonImageOptions = New DevExpress.XtraEditors.Controls.EditorButtonImageOptions() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmSQLEditor_old)) + Dim SerializableAppearanceObject1 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() + Dim SerializableAppearanceObject2 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() + Dim SerializableAppearanceObject3 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() + Dim SerializableAppearanceObject4 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() + Dim EditorButtonImageOptions2 As DevExpress.XtraEditors.Controls.EditorButtonImageOptions = New DevExpress.XtraEditors.Controls.EditorButtonImageOptions() + Dim SerializableAppearanceObject5 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() + Dim SerializableAppearanceObject6 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() + Dim SerializableAppearanceObject7 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() + Dim SerializableAppearanceObject8 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject() + Dim GalleryItemGroup1 As DevExpress.XtraBars.Ribbon.GalleryItemGroup = New DevExpress.XtraBars.Ribbon.GalleryItemGroup() + Dim GalleryItem1 As DevExpress.XtraBars.Ribbon.GalleryItem = New DevExpress.XtraBars.Ribbon.GalleryItem() + Dim GalleryItem2 As DevExpress.XtraBars.Ribbon.GalleryItem = New DevExpress.XtraBars.Ribbon.GalleryItem() + Dim GalleryItem3 As DevExpress.XtraBars.Ribbon.GalleryItem = New DevExpress.XtraBars.Ribbon.GalleryItem() + Dim GalleryItem4 As DevExpress.XtraBars.Ribbon.GalleryItem = New DevExpress.XtraBars.Ribbon.GalleryItem() + Dim GalleryItem5 As DevExpress.XtraBars.Ribbon.GalleryItem = New DevExpress.XtraBars.Ribbon.GalleryItem() + Dim GalleryItem6 As DevExpress.XtraBars.Ribbon.GalleryItem = New DevExpress.XtraBars.Ribbon.GalleryItem() + Me.RepositoryItemRibbonSearchEdit2 = New DevExpress.XtraBars.Ribbon.Internal.RepositoryItemRibbonSearchEdit() + Me.LayoutControl1 = New DevExpress.XtraLayout.LayoutControl() + Me.GridControlPlaceholders = New DevExpress.XtraGrid.GridControl() + Me.BindingSourcePlaceholder = New System.Windows.Forms.BindingSource(Me.components) + Me.GridViewPlaceholder = New DevExpress.XtraGrid.Views.Grid.GridView() + Me.colPlaceholder = New DevExpress.XtraGrid.Columns.GridColumn() + Me.colReplacement = New DevExpress.XtraGrid.Columns.GridColumn() + Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl() + Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem() + Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem() + Me.BarStaticItem1 = New DevExpress.XtraBars.BarStaticItem() + Me.BarStaticItem2 = New DevExpress.XtraBars.BarStaticItem() + Me.BarStaticItem3 = New DevExpress.XtraBars.BarStaticItem() + Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem() + Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() + Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() + Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() + Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() + Me.GridControlResult = New DevExpress.XtraGrid.GridControl() + Me.GridViewResult = New DevExpress.XtraGrid.Views.Grid.GridView() + Me.txtSQL = New DevExpress.XtraEditors.MemoEdit() + Me.DropDownButton1 = New DevExpress.XtraEditors.DropDownButton() + Me.DropDownButton11 = New DevExpress.XtraEditors.DropDownButton() + Me.RibbonControl11 = New DevExpress.XtraBars.Ribbon.RibbonControl() + Me.BarButtonItem11 = New DevExpress.XtraBars.BarButtonItem() + Me.BarButtonItem21 = New DevExpress.XtraBars.BarButtonItem() + Me.RibbonPage11 = New DevExpress.XtraBars.Ribbon.RibbonPage() + Me.RibbonPageGroup11 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() + Me.RibbonStatusBar11 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() + Me.DropDownButton2 = New DevExpress.XtraEditors.DropDownButton() + Me.DropDownButton3 = New DevExpress.XtraEditors.DropDownButton() + Me.cmbConnections = New DevExpress.XtraEditors.ComboBoxEdit() + Me.Root = New DevExpress.XtraLayout.LayoutControlGroup() + Me.LayoutControlItem3 = New DevExpress.XtraLayout.LayoutControlItem() + Me.LayoutControlItem2 = New DevExpress.XtraLayout.LayoutControlItem() + Me.LayoutControlItem4 = New DevExpress.XtraLayout.LayoutControlItem() + Me.SimpleLabelItem2 = New DevExpress.XtraLayout.SimpleLabelItem() + Me.LayoutControlItem1 = New DevExpress.XtraLayout.LayoutControlItem() + Me.LayoutControlItem5 = New DevExpress.XtraLayout.LayoutControlItem() + Me.LayoutControlItem6 = New DevExpress.XtraLayout.LayoutControlItem() + Me.LayoutControlItem7 = New DevExpress.XtraLayout.LayoutControlItem() + Me.LayoutControlItem8 = New DevExpress.XtraLayout.LayoutControlItem() + Me.SimpleSeparator1 = New DevExpress.XtraLayout.SimpleSeparator() + Me.SimpleLabelItem1 = New DevExpress.XtraLayout.SimpleLabelItem() + Me.SimpleSeparator2 = New DevExpress.XtraLayout.SimpleSeparator() + Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage() + Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() + Me.RibbonGalleryBarItem1 = New DevExpress.XtraBars.RibbonGalleryBarItem() + Me.GalleryDropDown1 = New DevExpress.XtraBars.Ribbon.GalleryDropDown(Me.components) + Me.GalleryDropDown2 = New DevExpress.XtraBars.Ribbon.GalleryDropDown(Me.components) + CType(Me.RepositoryItemRibbonSearchEdit2, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.LayoutControl1.SuspendLayout() + CType(Me.GridControlPlaceholders, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.BindingSourcePlaceholder, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.GridViewPlaceholder, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.GridControlResult, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.GridViewResult, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.txtSQL.Properties, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.RibbonControl11, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.cmbConnections.Properties, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.Root, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.LayoutControlItem3, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.LayoutControlItem2, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.LayoutControlItem4, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SimpleLabelItem2, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.LayoutControlItem1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.LayoutControlItem5, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.LayoutControlItem6, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.LayoutControlItem7, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.LayoutControlItem8, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SimpleSeparator1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SimpleLabelItem1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SimpleSeparator2, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.GalleryDropDown1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.GalleryDropDown2, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'RepositoryItemRibbonSearchEdit2 + ' + Me.RepositoryItemRibbonSearchEdit2.AllowFocused = False + Me.RepositoryItemRibbonSearchEdit2.AutoHeight = False + Me.RepositoryItemRibbonSearchEdit2.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder + EditorButtonImageOptions1.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.[True] + EditorButtonImageOptions1.SvgImage = CType(resources.GetObject("EditorButtonImageOptions1.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.RepositoryItemRibbonSearchEdit2.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "", -1, True, True, True, EditorButtonImageOptions1, New DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), SerializableAppearanceObject1, SerializableAppearanceObject2, SerializableAppearanceObject3, SerializableAppearanceObject4, "", Nothing, Nothing, DevExpress.Utils.ToolTipAnchor.[Default]), New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Clear, "", -1, True, False, False, EditorButtonImageOptions2, New DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), SerializableAppearanceObject5, SerializableAppearanceObject6, SerializableAppearanceObject7, SerializableAppearanceObject8, "", Nothing, Nothing, DevExpress.Utils.ToolTipAnchor.[Default])}) + Me.RepositoryItemRibbonSearchEdit2.Name = "RepositoryItemRibbonSearchEdit2" + Me.RepositoryItemRibbonSearchEdit2.NullText = "Search" + ' + 'LayoutControl1 + ' + Me.LayoutControl1.Controls.Add(Me.GridControlPlaceholders) + Me.LayoutControl1.Controls.Add(Me.GridControlResult) + Me.LayoutControl1.Controls.Add(Me.txtSQL) + Me.LayoutControl1.Controls.Add(Me.DropDownButton1) + Me.LayoutControl1.Controls.Add(Me.DropDownButton11) + Me.LayoutControl1.Controls.Add(Me.DropDownButton2) + Me.LayoutControl1.Controls.Add(Me.DropDownButton3) + Me.LayoutControl1.Controls.Add(Me.cmbConnections) + Me.LayoutControl1.Dock = System.Windows.Forms.DockStyle.Fill + Me.LayoutControl1.Location = New System.Drawing.Point(0, 132) + Me.LayoutControl1.Name = "LayoutControl1" + Me.LayoutControl1.Root = Me.Root + Me.LayoutControl1.Size = New System.Drawing.Size(1283, 536) + Me.LayoutControl1.TabIndex = 0 + Me.LayoutControl1.Text = "LayoutControl1" + ' + 'GridControlPlaceholders + ' + Me.GridControlPlaceholders.DataSource = Me.BindingSourcePlaceholder + Me.GridControlPlaceholders.Location = New System.Drawing.Point(12, 316) + Me.GridControlPlaceholders.MainView = Me.GridViewPlaceholder + Me.GridControlPlaceholders.MenuManager = Me.RibbonControl1 + Me.GridControlPlaceholders.Name = "GridControlPlaceholders" + Me.GridControlPlaceholders.Size = New System.Drawing.Size(417, 208) + Me.GridControlPlaceholders.TabIndex = 7 + Me.GridControlPlaceholders.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewPlaceholder}) + ' + 'GridViewPlaceholder + ' + Me.GridViewPlaceholder.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colPlaceholder, Me.colReplacement}) + Me.GridViewPlaceholder.GridControl = Me.GridControlPlaceholders + Me.GridViewPlaceholder.Name = "GridViewPlaceholder" + ' + 'colPlaceholder + ' + Me.colPlaceholder.Caption = "Platzhalter" + Me.colPlaceholder.Name = "colPlaceholder" + Me.colPlaceholder.Visible = True + Me.colPlaceholder.VisibleIndex = 0 + ' + 'colReplacement + ' + Me.colReplacement.Caption = "Ersetzung" + Me.colReplacement.Name = "colReplacement" + Me.colReplacement.Visible = True + Me.colReplacement.VisibleIndex = 1 + ' + 'RibbonControl1 + ' + Me.RibbonControl1.ExpandCollapseItem.Id = 0 + Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarStaticItem1, Me.BarStaticItem2, Me.BarStaticItem3, Me.BarButtonItem3, Me.RibbonGalleryBarItem1}) + Me.RibbonControl1.Location = New System.Drawing.Point(0, 0) + Me.RibbonControl1.MaxItemId = 9 + Me.RibbonControl1.Name = "RibbonControl1" + Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1}) + Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False] + Me.RibbonControl1.ShowPageHeadersMode = DevExpress.XtraBars.Ribbon.ShowPageHeadersMode.Hide + Me.RibbonControl1.ShowToolbarCustomizeItem = False + Me.RibbonControl1.Size = New System.Drawing.Size(1283, 132) + Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1 + Me.RibbonControl1.Toolbar.ShowCustomizeItem = False + ' + 'BarButtonItem1 + ' + Me.BarButtonItem1.Caption = "Speichern und schließen" + Me.BarButtonItem1.Id = 1 + Me.BarButtonItem1.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarButtonItem1.Name = "BarButtonItem1" + ' + 'BarButtonItem2 + ' + Me.BarButtonItem2.Caption = "SQL testen" + Me.BarButtonItem2.Id = 2 + Me.BarButtonItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarButtonItem2.Name = "BarButtonItem2" + ' + 'BarStaticItem1 + ' + Me.BarStaticItem1.Caption = "Ergebnis" + Me.BarStaticItem1.Id = 3 + Me.BarStaticItem1.Name = "BarStaticItem1" + ' + 'BarStaticItem2 + ' + Me.BarStaticItem2.Caption = "Fehler bei Abfrage" + Me.BarStaticItem2.Id = 4 + Me.BarStaticItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarStaticItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarStaticItem2.Name = "BarStaticItem2" + Me.BarStaticItem2.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph + ' + 'BarStaticItem3 + ' + Me.BarStaticItem3.Caption = "Abfrage ausgeführt" + Me.BarStaticItem3.Id = 5 + Me.BarStaticItem3.ImageOptions.SvgImage = CType(resources.GetObject("BarStaticItem3.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarStaticItem3.Name = "BarStaticItem3" + Me.BarStaticItem3.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph + ' + 'BarButtonItem3 + ' + Me.BarButtonItem3.Caption = "Verbindungen.." + Me.BarButtonItem3.Id = 7 + Me.BarButtonItem3.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem3.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarButtonItem3.Name = "BarButtonItem3" + ' + 'RibbonPage1 + ' + Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3}) + Me.RibbonPage1.Name = "RibbonPage1" + Me.RibbonPage1.Text = "RibbonPage1" + ' + 'RibbonPageGroup1 + ' + Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem1) + Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem2) + Me.RibbonPageGroup1.Name = "RibbonPageGroup1" + Me.RibbonPageGroup1.Text = "RibbonPageGroup1" + ' + 'RibbonPageGroup2 + ' + Me.RibbonPageGroup2.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far + Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem3) + Me.RibbonPageGroup2.Name = "RibbonPageGroup2" + Me.RibbonPageGroup2.Text = "RibbonPageGroup2" + ' + 'RibbonStatusBar1 + ' + Me.RibbonStatusBar1.ItemLinks.Add(Me.BarStaticItem1) + Me.RibbonStatusBar1.ItemLinks.Add(Me.BarStaticItem2) + Me.RibbonStatusBar1.ItemLinks.Add(Me.BarStaticItem3) + Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 668) + Me.RibbonStatusBar1.Name = "RibbonStatusBar1" + Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1 + Me.RibbonStatusBar1.Size = New System.Drawing.Size(1283, 24) + ' + 'GridControlResult + ' + Me.GridControlResult.Location = New System.Drawing.Point(433, 316) + Me.GridControlResult.MainView = Me.GridViewResult + Me.GridControlResult.MenuManager = Me.RibbonControl1 + Me.GridControlResult.Name = "GridControlResult" + Me.GridControlResult.Size = New System.Drawing.Size(838, 208) + Me.GridControlResult.TabIndex = 5 + Me.GridControlResult.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewResult}) + ' + 'GridViewResult + ' + Me.GridViewResult.GridControl = Me.GridControlResult + Me.GridViewResult.Name = "GridViewResult" + ' + 'txtSQL + ' + Me.txtSQL.Location = New System.Drawing.Point(20, 99) + Me.txtSQL.MenuManager = Me.RibbonControl1 + Me.txtSQL.Name = "txtSQL" + Me.txtSQL.Properties.Appearance.Font = New System.Drawing.Font("Consolas", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.txtSQL.Properties.Appearance.Options.UseFont = True + Me.txtSQL.Size = New System.Drawing.Size(1243, 168) + Me.txtSQL.StyleController = Me.LayoutControl1 + Me.txtSQL.TabIndex = 4 + ' + 'DropDownButton1 + ' + Me.DropDownButton1.Location = New System.Drawing.Point(853, 12) + Me.DropDownButton1.MenuManager = Me.RibbonControl1 + Me.DropDownButton1.Name = "DropDownButton1" + Me.DropDownButton1.Size = New System.Drawing.Size(418, 22) + Me.DropDownButton1.StyleController = Me.LayoutControl1 + Me.DropDownButton1.TabIndex = 8 + Me.DropDownButton1.Text = "Dokument-Indizies" + ' + 'DropDownButton11 + ' + Me.DropDownButton11.Location = New System.Drawing.Point(433, 12) + Me.DropDownButton11.MenuManager = Me.RibbonControl11 + Me.DropDownButton11.Name = "DropDownButton11" + Me.DropDownButton11.Size = New System.Drawing.Size(416, 22) + Me.DropDownButton11.StyleController = Me.LayoutControl1 + Me.DropDownButton11.TabIndex = 8 + Me.DropDownButton11.Text = "Controls (zur Laufzeit ausgewertet)" + ' + 'RibbonControl11 + ' + Me.RibbonControl11.CommandLayout = DevExpress.XtraBars.Ribbon.CommandLayout.Simplified + Me.RibbonControl11.ExpandCollapseItem.Id = 0 + Me.RibbonControl11.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl11.ExpandCollapseItem, Me.RibbonControl11.SearchEditItem, Me.BarButtonItem11, Me.BarButtonItem21}) + Me.RibbonControl11.Location = New System.Drawing.Point(0, 0) + Me.RibbonControl11.MaxItemId = 3 + Me.RibbonControl11.Name = "RibbonControl11" + Me.RibbonControl11.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage11}) + Me.RibbonControl11.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemRibbonSearchEdit2}) + Me.RibbonControl11.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False] + Me.RibbonControl11.ShowPageHeadersMode = DevExpress.XtraBars.Ribbon.ShowPageHeadersMode.Hide + Me.RibbonControl11.ShowToolbarCustomizeItem = False + Me.RibbonControl11.Size = New System.Drawing.Size(1283, 0) + Me.RibbonControl11.StatusBar = Me.RibbonStatusBar11 + Me.RibbonControl11.Toolbar.ShowCustomizeItem = False + ' + 'BarButtonItem11 + ' + Me.BarButtonItem11.Caption = "Speichern und schließen" + Me.BarButtonItem11.Id = 1 + Me.BarButtonItem11.Name = "BarButtonItem11" + ' + 'BarButtonItem21 + ' + Me.BarButtonItem21.Caption = "SQL testen" + Me.BarButtonItem21.Id = 2 + Me.BarButtonItem21.Name = "BarButtonItem21" + ' + 'RibbonPage11 + ' + Me.RibbonPage11.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup11}) + Me.RibbonPage11.Name = "RibbonPage11" + Me.RibbonPage11.Text = "RibbonPage1" + ' + 'RibbonPageGroup11 + ' + Me.RibbonPageGroup11.ItemLinks.Add(Me.BarButtonItem11) + Me.RibbonPageGroup11.ItemLinks.Add(Me.BarButtonItem21) + Me.RibbonPageGroup11.Name = "RibbonPageGroup11" + Me.RibbonPageGroup11.Text = "RibbonPageGroup1" + ' + 'RibbonStatusBar11 + ' + Me.RibbonStatusBar11.Location = New System.Drawing.Point(0, 752) + Me.RibbonStatusBar11.Name = "RibbonStatusBar11" + Me.RibbonStatusBar11.Ribbon = Me.RibbonControl11 + Me.RibbonStatusBar11.Size = New System.Drawing.Size(1283, 27) + ' + 'DropDownButton2 + ' + Me.DropDownButton2.Location = New System.Drawing.Point(853, 38) + Me.DropDownButton2.MenuManager = Me.RibbonControl1 + Me.DropDownButton2.Name = "DropDownButton2" + Me.DropDownButton2.Size = New System.Drawing.Size(418, 22) + Me.DropDownButton2.StyleController = Me.LayoutControl1 + Me.DropDownButton2.TabIndex = 9 + Me.DropDownButton2.Text = "Anwendungsdaten" + ' + 'DropDownButton3 + ' + Me.DropDownButton3.Location = New System.Drawing.Point(433, 38) + Me.DropDownButton3.MenuManager = Me.RibbonControl1 + Me.DropDownButton3.Name = "DropDownButton3" + Me.DropDownButton3.Size = New System.Drawing.Size(416, 22) + Me.DropDownButton3.StyleController = Me.LayoutControl1 + Me.DropDownButton3.TabIndex = 10 + Me.DropDownButton3.Text = "Umgebungsinformationen" + ' + 'cmbConnections + ' + Me.cmbConnections.Location = New System.Drawing.Point(20, 39) + Me.cmbConnections.MenuManager = Me.RibbonControl1 + Me.cmbConnections.Name = "cmbConnections" + Me.cmbConnections.Properties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}) + Me.cmbConnections.Size = New System.Drawing.Size(401, 20) + Me.cmbConnections.StyleController = Me.LayoutControl1 + Me.cmbConnections.TabIndex = 6 + ' + 'Root + ' + Me.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[True] + Me.Root.GroupBordersVisible = False + Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem3, Me.LayoutControlItem2, Me.LayoutControlItem4, Me.SimpleLabelItem2, Me.LayoutControlItem1, Me.LayoutControlItem5, Me.LayoutControlItem6, Me.LayoutControlItem7, Me.LayoutControlItem8, Me.SimpleSeparator1, Me.SimpleLabelItem1, Me.SimpleSeparator2}) + Me.Root.Name = "Root" + Me.Root.Size = New System.Drawing.Size(1283, 536) + Me.Root.TextVisible = False + ' + 'LayoutControlItem3 + ' + Me.LayoutControlItem3.Control = Me.cmbConnections + Me.LayoutControlItem3.ImageOptions.SvgImage = CType(resources.GetObject("LayoutControlItem3.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.LayoutControlItem3.ImageOptions.SvgImageSize = New System.Drawing.Size(16, 16) + Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 0) + Me.LayoutControlItem3.Name = "LayoutControlItem3" + Me.LayoutControlItem3.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) + Me.LayoutControlItem3.Size = New System.Drawing.Size(421, 59) + Me.LayoutControlItem3.Text = "SQL Verbindung" + Me.LayoutControlItem3.TextLocation = DevExpress.Utils.Locations.Top + Me.LayoutControlItem3.TextSize = New System.Drawing.Size(97, 16) + ' + 'LayoutControlItem2 + ' + Me.LayoutControlItem2.Control = Me.GridControlResult + Me.LayoutControlItem2.Location = New System.Drawing.Point(421, 304) + Me.LayoutControlItem2.Name = "LayoutControlItem2" + Me.LayoutControlItem2.Size = New System.Drawing.Size(842, 212) + Me.LayoutControlItem2.TextSize = New System.Drawing.Size(0, 0) + Me.LayoutControlItem2.TextVisible = False + ' + 'LayoutControlItem4 + ' + Me.LayoutControlItem4.Control = Me.GridControlPlaceholders + Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 304) + Me.LayoutControlItem4.Name = "LayoutControlItem4" + Me.LayoutControlItem4.Size = New System.Drawing.Size(421, 212) + Me.LayoutControlItem4.TextSize = New System.Drawing.Size(0, 0) + Me.LayoutControlItem4.TextVisible = False + ' + 'SimpleLabelItem2 + ' + Me.SimpleLabelItem2.AllowHotTrack = False + Me.SimpleLabelItem2.ImageOptions.SvgImage = CType(resources.GetObject("SimpleLabelItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.SimpleLabelItem2.ImageOptions.SvgImageSize = New System.Drawing.Size(16, 16) + Me.SimpleLabelItem2.Location = New System.Drawing.Point(421, 268) + Me.SimpleLabelItem2.Name = "SimpleLabelItem2" + Me.SimpleLabelItem2.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) + Me.SimpleLabelItem2.Size = New System.Drawing.Size(842, 36) + Me.SimpleLabelItem2.Text = "Ergebnis" + Me.SimpleLabelItem2.TextSize = New System.Drawing.Size(97, 16) + ' + 'LayoutControlItem1 + ' + Me.LayoutControlItem1.Control = Me.txtSQL + Me.LayoutControlItem1.ImageOptions.SvgImage = CType(resources.GetObject("LayoutControlItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.LayoutControlItem1.ImageOptions.SvgImageSize = New System.Drawing.Size(16, 16) + Me.LayoutControlItem1.Location = New System.Drawing.Point(0, 60) + Me.LayoutControlItem1.Name = "LayoutControlItem1" + Me.LayoutControlItem1.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) + Me.LayoutControlItem1.Size = New System.Drawing.Size(1263, 207) + Me.LayoutControlItem1.Text = "SQL Abfrage" + Me.LayoutControlItem1.TextLocation = DevExpress.Utils.Locations.Top + Me.LayoutControlItem1.TextSize = New System.Drawing.Size(97, 16) + ' + 'LayoutControlItem5 + ' + Me.LayoutControlItem5.Control = Me.DropDownButton1 + Me.LayoutControlItem5.Location = New System.Drawing.Point(841, 0) + Me.LayoutControlItem5.Name = "LayoutControlItem5" + Me.LayoutControlItem5.Size = New System.Drawing.Size(422, 26) + Me.LayoutControlItem5.TextSize = New System.Drawing.Size(0, 0) + Me.LayoutControlItem5.TextVisible = False + ' + 'LayoutControlItem6 + ' + Me.LayoutControlItem6.Control = Me.DropDownButton11 + Me.LayoutControlItem6.ControlAlignment = System.Drawing.ContentAlignment.TopLeft + Me.LayoutControlItem6.CustomizationFormText = "LayoutControlItem5" + Me.LayoutControlItem6.Location = New System.Drawing.Point(421, 0) + Me.LayoutControlItem6.Name = "LayoutControlItem6" + Me.LayoutControlItem6.Size = New System.Drawing.Size(420, 26) + Me.LayoutControlItem6.Text = "LayoutControlItem5" + Me.LayoutControlItem6.TextSize = New System.Drawing.Size(0, 0) + Me.LayoutControlItem6.TextVisible = False + ' + 'LayoutControlItem7 + ' + Me.LayoutControlItem7.Control = Me.DropDownButton2 + Me.LayoutControlItem7.Location = New System.Drawing.Point(841, 26) + Me.LayoutControlItem7.Name = "LayoutControlItem7" + Me.LayoutControlItem7.Size = New System.Drawing.Size(422, 33) + Me.LayoutControlItem7.TextSize = New System.Drawing.Size(0, 0) + Me.LayoutControlItem7.TextVisible = False + ' + 'LayoutControlItem8 + ' + Me.LayoutControlItem8.Control = Me.DropDownButton3 + Me.LayoutControlItem8.Location = New System.Drawing.Point(421, 26) + Me.LayoutControlItem8.Name = "LayoutControlItem8" + Me.LayoutControlItem8.Size = New System.Drawing.Size(420, 33) + Me.LayoutControlItem8.TextSize = New System.Drawing.Size(0, 0) + Me.LayoutControlItem8.TextVisible = False + ' + 'SimpleSeparator1 + ' + Me.SimpleSeparator1.AllowHotTrack = False + Me.SimpleSeparator1.Location = New System.Drawing.Point(0, 267) + Me.SimpleSeparator1.Name = "SimpleSeparator1" + Me.SimpleSeparator1.Size = New System.Drawing.Size(1263, 1) + ' + 'SimpleLabelItem1 + ' + Me.SimpleLabelItem1.AllowHotTrack = False + Me.SimpleLabelItem1.ImageOptions.SvgImage = CType(resources.GetObject("SimpleLabelItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.SimpleLabelItem1.ImageOptions.SvgImageSize = New System.Drawing.Size(16, 16) + Me.SimpleLabelItem1.Location = New System.Drawing.Point(0, 268) + Me.SimpleLabelItem1.Name = "SimpleLabelItem1" + Me.SimpleLabelItem1.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10) + Me.SimpleLabelItem1.Size = New System.Drawing.Size(421, 36) + Me.SimpleLabelItem1.Text = "Platzhalter" + Me.SimpleLabelItem1.TextSize = New System.Drawing.Size(97, 16) + ' + 'SimpleSeparator2 + ' + Me.SimpleSeparator2.AllowHotTrack = False + Me.SimpleSeparator2.Location = New System.Drawing.Point(0, 59) + Me.SimpleSeparator2.Name = "SimpleSeparator2" + Me.SimpleSeparator2.Size = New System.Drawing.Size(1263, 1) + ' + 'RibbonPage2 + ' + Me.RibbonPage2.Name = "RibbonPage2" + Me.RibbonPage2.Text = "RibbonPage2" + ' + 'RibbonPageGroup3 + ' + Me.RibbonPageGroup3.ItemLinks.Add(Me.RibbonGalleryBarItem1) + Me.RibbonPageGroup3.Name = "RibbonPageGroup3" + Me.RibbonPageGroup3.Text = "RibbonPageGroup3" + ' + 'RibbonGalleryBarItem1 + ' + Me.RibbonGalleryBarItem1.Caption = "RibbonGalleryBarItem1" + Me.RibbonGalleryBarItem1.GalleryDropDown = Me.GalleryDropDown1 + Me.RibbonGalleryBarItem1.Id = 8 + Me.RibbonGalleryBarItem1.Name = "RibbonGalleryBarItem1" + ' + 'GalleryDropDown1 + ' + Me.GalleryDropDown1.Name = "GalleryDropDown1" + Me.GalleryDropDown1.Ribbon = Me.RibbonControl1 + ' + 'GalleryDropDown2 + ' + ' + ' + ' + GalleryItemGroup1.Caption = "Group1" + GalleryItem1.Caption = "Item1" + GalleryItem2.Caption = "Item2" + GalleryItem3.Caption = "Item3" + GalleryItem4.Caption = "Item4" + GalleryItem5.Caption = "Item5" + GalleryItem6.Caption = "Item6" + GalleryItemGroup1.Items.AddRange(New DevExpress.XtraBars.Ribbon.GalleryItem() {GalleryItem1, GalleryItem2, GalleryItem3, GalleryItem4, GalleryItem5, GalleryItem6}) + Me.GalleryDropDown2.Gallery.Groups.AddRange(New DevExpress.XtraBars.Ribbon.GalleryItemGroup() {GalleryItemGroup1}) + Me.GalleryDropDown2.Name = "GalleryDropDown2" + Me.GalleryDropDown2.Ribbon = Me.RibbonControl1 + ' + 'frmSQLEditor + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(1283, 692) + Me.Controls.Add(Me.LayoutControl1) + Me.Controls.Add(Me.RibbonStatusBar1) + Me.Controls.Add(Me.RibbonControl1) + Me.IconOptions.SvgImage = CType(resources.GetObject("frmSQLEditor.IconOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.Name = "frmSQLEditor" + Me.Ribbon = Me.RibbonControl1 + Me.StatusBar = Me.RibbonStatusBar1 + Me.Text = "SQL Editor" + CType(Me.RepositoryItemRibbonSearchEdit2, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).EndInit() + Me.LayoutControl1.ResumeLayout(False) + CType(Me.GridControlPlaceholders, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.BindingSourcePlaceholder, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.GridViewPlaceholder, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.GridControlResult, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.GridViewResult, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.txtSQL.Properties, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.RibbonControl11, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.cmbConnections.Properties, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.Root, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.LayoutControlItem3, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.LayoutControlItem2, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.LayoutControlItem4, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SimpleLabelItem2, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.LayoutControlItem1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.LayoutControlItem5, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.LayoutControlItem6, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.LayoutControlItem7, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.LayoutControlItem8, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SimpleSeparator1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SimpleLabelItem1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SimpleSeparator2, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.GalleryDropDown1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.GalleryDropDown2, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + + Friend WithEvents LayoutControl1 As DevExpress.XtraLayout.LayoutControl + Friend WithEvents Root As DevExpress.XtraLayout.LayoutControlGroup + Friend WithEvents RibbonControl1 As DevExpress.XtraBars.Ribbon.RibbonControl + Friend WithEvents RibbonPage1 As DevExpress.XtraBars.Ribbon.RibbonPage + Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup + Friend WithEvents RibbonStatusBar1 As DevExpress.XtraBars.Ribbon.RibbonStatusBar + Friend WithEvents RibbonPage2 As DevExpress.XtraBars.Ribbon.RibbonPage + Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents GridControlResult As DevExpress.XtraGrid.GridControl + Friend WithEvents GridViewResult As DevExpress.XtraGrid.Views.Grid.GridView + Friend WithEvents txtSQL As DevExpress.XtraEditors.MemoEdit + Friend WithEvents LayoutControlItem1 As DevExpress.XtraLayout.LayoutControlItem + Friend WithEvents LayoutControlItem2 As DevExpress.XtraLayout.LayoutControlItem + Friend WithEvents LayoutControlItem3 As DevExpress.XtraLayout.LayoutControlItem + Friend WithEvents GridControlPlaceholders As DevExpress.XtraGrid.GridControl + Friend WithEvents GridViewPlaceholder As DevExpress.XtraGrid.Views.Grid.GridView + Friend WithEvents DropDownButton1 As DevExpress.XtraEditors.DropDownButton + Friend WithEvents LayoutControlItem4 As DevExpress.XtraLayout.LayoutControlItem + Friend WithEvents SimpleLabelItem2 As DevExpress.XtraLayout.SimpleLabelItem + Friend WithEvents SimpleLabelItem1 As DevExpress.XtraLayout.SimpleLabelItem + Friend WithEvents LayoutControlItem5 As DevExpress.XtraLayout.LayoutControlItem + Friend WithEvents DropDownButton11 As DevExpress.XtraEditors.DropDownButton + Friend WithEvents RibbonControl11 As DevExpress.XtraBars.Ribbon.RibbonControl + Friend WithEvents BarButtonItem11 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents BarButtonItem21 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents RibbonPage11 As DevExpress.XtraBars.Ribbon.RibbonPage + Friend WithEvents RibbonPageGroup11 As DevExpress.XtraBars.Ribbon.RibbonPageGroup + Friend WithEvents RibbonStatusBar11 As DevExpress.XtraBars.Ribbon.RibbonStatusBar + Friend WithEvents DropDownButton2 As DevExpress.XtraEditors.DropDownButton + Friend WithEvents DropDownButton3 As DevExpress.XtraEditors.DropDownButton + Friend WithEvents LayoutControlItem6 As DevExpress.XtraLayout.LayoutControlItem + Friend WithEvents LayoutControlItem7 As DevExpress.XtraLayout.LayoutControlItem + Friend WithEvents LayoutControlItem8 As DevExpress.XtraLayout.LayoutControlItem + Friend WithEvents RepositoryItemRibbonSearchEdit2 As DevExpress.XtraBars.Ribbon.Internal.RepositoryItemRibbonSearchEdit + Friend WithEvents colPlaceholder As DevExpress.XtraGrid.Columns.GridColumn + Friend WithEvents colReplacement As DevExpress.XtraGrid.Columns.GridColumn + Friend WithEvents BarStaticItem1 As DevExpress.XtraBars.BarStaticItem + Friend WithEvents BarStaticItem2 As DevExpress.XtraBars.BarStaticItem + Friend WithEvents BarStaticItem3 As DevExpress.XtraBars.BarStaticItem + Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup + Friend WithEvents BindingSourcePlaceholder As BindingSource + Friend WithEvents SimpleSeparator1 As DevExpress.XtraLayout.SimpleSeparator + Friend WithEvents SimpleSeparator2 As DevExpress.XtraLayout.SimpleSeparator + Friend WithEvents cmbConnections As DevExpress.XtraEditors.ComboBoxEdit + Friend WithEvents RibbonGalleryBarItem1 As DevExpress.XtraBars.RibbonGalleryBarItem + Friend WithEvents GalleryDropDown1 As DevExpress.XtraBars.Ribbon.GalleryDropDown + Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup + Friend WithEvents GalleryDropDown2 As DevExpress.XtraBars.Ribbon.GalleryDropDown +End Class diff --git a/Controls.SQLEditor/frmSQLEditor_old.resx b/Controls.SQLEditor/frmSQLEditor_old.resx new file mode 100644 index 00000000..3be68a32 --- /dev/null +++ b/Controls.SQLEditor/frmSQLEditor_old.resx @@ -0,0 +1,373 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFUCAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAxNiAxNiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxNiAxNiI+DQogIDxz + dHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CgkuTWFza3tmaWxsOiM3MDcwNzA7fQoJLnN0MHtvcGFjaXR5OjAu + NTt9Cjwvc3R5bGU+DQogIDxnIGlkPSJJbnNpZGVfQm9yZGVyIj4NCiAgICA8cGF0aCBkPSJNOS41LDJD + NywyLDUsNCw1LDYuNWMwLDEsMC4zLDEuOSwwLjksMi42bC00LjQsNC40bDEsMWw0LjQtNC40QzcuNiwx + MC43LDguNSwxMSw5LjUsMTFDMTIsMTEsMTQsOSwxNCw2LjUgICBTMTIsMiw5LjUsMnogTTkuNSwxMEM3 + LjYsMTAsNiw4LjQsNiw2LjVTNy42LDMsOS41LDNTMTMsNC42LDEzLDYuNVMxMS40LDEwLDkuNSwxMHoi + IGNsYXNzPSJNYXNrIiAvPg0KICA8L2c+DQogIDxnIGlkPSJMYXllcl8yIiAvPg0KPC9zdmc+Cw== + + + + 17, 17 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACQCAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z + ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkdyZWVue2ZpbGw6IzAz + OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cgkuc3Qwe29wYWNpdHk6MC43NTt9Cgkuc3Qxe29wYWNp + dHk6MC41O30KPC9zdHlsZT4NCiAgPGcgaWQ9IkNoZWNrIj4NCiAgICA8cG9seWdvbiBwb2ludHM9IjI3 + LDUgMTEsMjEgNSwxNSAyLDE4IDExLDI3IDMwLDggICIgY2xhc3M9IkdyZWVuIiAvPg0KICA8L2c+DQo8 + L3N2Zz4L + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFoEAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ + LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD + MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh + Y2l0eTowLjU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iVXBkYXRlRGF0YUV4dHJhY3QiPg0KICAgIDxwYXRo + IGQ9Ik00LDEwVjZjMC0yLjIsNC41LTQsMTAtNHMxMCwxLjgsMTAsNHY0YzAsMi4yLTQuNSw0LTEwLDRT + NCwxMi4yLDQsMTB6IE0xNCwyMGMwLjUsMCwxLjEsMCwxLjYtMC4xICAgYzEuNi0yLjQsNC4zLTMuOSw3 + LjQtMy45YzAuMywwLDAuNywwLDEsMC4xYzAsMCwwLDAsMC0wLjF2LTRjMCwyLjItNC41LDQtMTAsNFM0 + LDE0LjIsNCwxMnY0QzQsMTguMiw4LjUsMjAsMTQsMjB6IE0xNCwyNEwxNCwyNCAgIGMwLjEtMC43LDAu + My0xLjQsMC41LTJjLTAuMiwwLTAuNCwwLTAuNSwwYy01LjUsMC0xMC0xLjgtMTAtNHY0YzAsMi4yLDQu + NSw0LDEwLDRWMjR6IiBjbGFzcz0iWWVsbG93IiAvPg0KICAgIDxwYXRoIGQ9Ik0zMCwxOHY2aC0wLjFI + MjRsMi41LTIuNUMyNS42LDIwLjYsMjQuNCwyMCwyMywyMGMtMi40LDAtNC40LDEuNy00LjksNGgtMmMw + LjUtMy40LDMuNC02LDYuOS02ICAgYzEuOSwwLDMuNywwLjgsNC45LDIuMUwzMCwxOHogTTIzLDMwYy0x + LjQsMC0yLjYtMC42LTMuNS0xLjVMMjIsMjZoLTUuOUgxNnY2bDIuMS0yLjFjMS4zLDEuMywzLDIuMSw0 + LjksMi4xYzMuNSwwLDYuNC0yLjYsNi45LTYgICBoLTJDMjcuNCwyOC4zLDI1LjQsMzAsMjMsMzB6IiBj + bGFzcz0iR3JlZW4iIC8+DQogIDwvZz4NCjwvc3ZnPgs= + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABIDAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ + LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD + MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh + Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw + MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu + bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iSGlnaEltcG9ydGFuY2UiPg0KICAg + IDxwYXRoIGQ9Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZzNi4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMy + My43LDIsMTYsMnogTTE2LDI0Yy0xLjEsMC0yLTAuOS0yLTJzMC45LTIsMi0yczIsMC45LDIsMiAgIFMx + Ny4xLDI0LDE2LDI0eiBNMTgsMThoLTRWOGg0VjE4eiIgY2xhc3M9IlJlZCIgLz4NCiAgPC9nPg0KPC9z + dmc+Cw== + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAHICAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z + ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkdyZWVue2ZpbGw6IzAz + OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cgkuc3Qwe29wYWNpdHk6MC43NTt9Cgkuc3Qxe29wYWNp + dHk6MC41O30KPC9zdHlsZT4NCiAgPGcgaWQ9IkNoZWNrQ2lyY2xlZCI+DQogICAgPHBhdGggZD0iTTE2 + LDRDOS40LDQsNCw5LjQsNCwxNmMwLDYuNiw1LjQsMTIsMTIsMTJzMTItNS40LDEyLTEyQzI4LDkuNCwy + Mi42LDQsMTYsNHogTTE0LDIybC02LTZsMi0ybDQsNGw4LThsMiwyICAgTDE0LDIyeiIgY2xhc3M9Ikdy + ZWVuIiAvPg0KICA8L2c+DQo8L3N2Zz4L + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAAoEAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ + LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 + RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh + Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm + aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iRWRpdENvbm5lY3Rpb24iPg0K + ICAgIDxwYXRoIGQ9Ik0xOCwyNS45QzE3LjQsMjYsMTYuNywyNiwxNiwyNnMtMS40LDAtMi0wLjFWMjho + LTR2NGg0aDRoNHYtNGgtNFYyNS45eiIgY2xhc3M9IkdyZWVuIiAvPg0KICAgIDxwYXRoIGQ9Ik02LDEw + VjZjMC0yLjIsNC41LTQsMTAtNHMxMCwxLjgsMTAsNHY0YzAsMi4yLTQuNSw0LTEwLDRTNiwxMi4yLDYs + MTB6IE0xNiwxNmMtNS41LDAtMTAtMS44LTEwLTR2NCAgIGMwLDIuMiw0LjUsNCwxMCw0czEwLTEuOCwx + MC00di00QzI2LDE0LjIsMjEuNSwxNiwxNiwxNnogTTE2LDIyYy01LjUsMC0xMC0xLjgtMTAtNHY0YzAs + Mi4yLDQuNSw0LDEwLDRzMTAtMS44LDEwLTR2LTQgICBDMjYsMjAuMiwyMS41LDIyLDE2LDIyeiIgY2xh + c3M9IlllbGxvdyIgLz4NCiAgICA8ZyBjbGFzcz0ic3QxIj4NCiAgICAgIDxwYXRoIGQ9Ik0xMCwzMkgy + di00aDhWMzJ6IE0zMCwyOGgtOHY0aDhWMjh6IiBjbGFzcz0iQmxhY2siIC8+DQogICAgPC9nPg0KICA8 + L2c+DQo8L3N2Zz4L + + + + 211, 17 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAAoEAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ + LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 + RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh + Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm + aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iRWRpdENvbm5lY3Rpb24iPg0K + ICAgIDxwYXRoIGQ9Ik0xOCwyNS45QzE3LjQsMjYsMTYuNywyNiwxNiwyNnMtMS40LDAtMi0wLjFWMjho + LTR2NGg0aDRoNHYtNGgtNFYyNS45eiIgY2xhc3M9IkdyZWVuIiAvPg0KICAgIDxwYXRoIGQ9Ik02LDEw + VjZjMC0yLjIsNC41LTQsMTAtNHMxMCwxLjgsMTAsNHY0YzAsMi4yLTQuNSw0LTEwLDRTNiwxMi4yLDYs + MTB6IE0xNiwxNmMtNS41LDAtMTAtMS44LTEwLTR2NCAgIGMwLDIuMiw0LjUsNCwxMCw0czEwLTEuOCwx + MC00di00QzI2LDE0LjIsMjEuNSwxNiwxNiwxNnogTTE2LDIyYy01LjUsMC0xMC0xLjgtMTAtNHY0YzAs + Mi4yLDQuNSw0LDEwLDRzMTAtMS44LDEwLTR2LTQgICBDMjYsMjAuMiwyMS41LDIyLDE2LDIyeiIgY2xh + c3M9IlllbGxvdyIgLz4NCiAgICA8ZyBjbGFzcz0ic3QxIj4NCiAgICAgIDxwYXRoIGQ9Ik0xMCwzMkgy + di00aDhWMzJ6IE0zMCwyOGgtOHY0aDhWMjh6IiBjbGFzcz0iQmxhY2siIC8+DQogICAgPC9nPg0KICA8 + L2c+DQo8L3N2Zz4L + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAGYCAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iRmllbGRfSGVhZGVycyIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5l + dyAwIDAgMzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3 + O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLnN0MHtvcGFjaXR5OjAuNTt9Cjwvc3R5bGU+DQogIDxn + IGNsYXNzPSJzdDAiPg0KICAgIDxwYXRoIGQ9Ik0yMCwxOGgtOHYtNmg4VjE4eiBNMzAsMTJoLTh2Nmg4 + VjEyeiBNMjAsMjBoLTh2Nmg4VjIweiBNMTAsMjBIMnY2aDhWMjB6IE0zMCwyMGgtOHY2aDhWMjB6IiBj + bGFzcz0iQmxhY2siIC8+DQogIDwvZz4NCiAgPHBhdGggZD0iTTEyLDR2NmgxOFY0SDEyeiBNMTYsOGwt + Mi0yaDRMMTYsOHogTTIsMTJ2Nmg4di02SDJ6IE02LDE2bC0yLTJoNEw2LDE2eiIgY2xhc3M9IkJsdWUi + IC8+DQo8L3N2Zz4L + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAJkDAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ + LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 + RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh + Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm + aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iRmlsdGVyUXVlcnkiPg0KICAg + IDxwYXRoIGQ9Ik04LDEwSDB2Nmg4VjEweiBNOCwySDB2Nmg4VjJ6IE0xOCwyaC04djZoOFYyeiBNMTgs + MTBoLTh2Nmg4VjEweiIgY2xhc3M9IkdyZWVuIiAvPg0KICAgIDxnIGNsYXNzPSJzdDEiPg0KICAgICAg + PHBhdGggZD0iTTI4LDE2aC04di02aDhWMTZ6IE0yOCwyaC04djZoOFYyeiBNMCwyNGg4di02SDBWMjR6 + IE0xNC4zLDIxLjFjLTAuMi0wLjItMC4zLTAuNC0wLjMtMC43VjE4aC00djZoNy4yICAgIEwxNC4zLDIx + LjF6IiBjbGFzcz0iQmxhY2siIC8+DQogICAgPC9nPg0KICAgIDxwb2x5Z29uIHBvaW50cz0iMTYsMTgg + MzIsMTggMzIsMjAgMjYsMjYgMjYsMzIgMjIsMzIgMjIsMjYgMTYsMjAgICIgY2xhc3M9IlllbGxvdyIg + Lz4NCiAgPC9nPg0KPC9zdmc+Cw== + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPcEAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ + LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 + RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh + Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm + aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iVGl0bGVfMV8iPg0KICAgIDxw + YXRoIGQ9Ik0yOSwxNEgxYy0wLjUsMC0xLDAuNS0xLDF2MTJjMCwwLjUsMC41LDEsMSwxaDI4YzAuNSww + LDEtMC41LDEtMVYxNUMzMCwxNC41LDI5LjUsMTQsMjksMTR6ICAgIE0yOCwyNkgyVjE2aDI2VjI2eiBN + MjIuOSwxMS4yQzIzLjcsMTAuNiwyNCwxMCwyNCw5YzAtMC42LTAuMi0xLjItMC43LTEuNmMtMC41LTAu + NC0xLjEtMC43LTEuOC0wLjhjMC42LTAuMiwxLjEtMC41LDEuNS0wLjkgICBjMC40LTAuNCwwLjYtMC45 + LDAuNi0xLjRjMC0wLjctMC4zLTEuMy0wLjktMS43QzIyLjEsMi4yLDIxLjEsMiwxOS45LDJIMTZ2OS45 + VjEyaDRDMjEuMiwxMiwyMi4zLDExLjgsMjIuOSwxMS4yeiBNMTguNCwzLjdoMC45ICAgYzEuMSwwLDEu + NywwLjQsMS43LDEuMWMwLDAuNC0wLjEsMC43LTAuNCwwLjlDMjAuNCw1LjksMjAsNiwxOS41LDZoLTEu + MVYzLjd6IE0xOC40LDEwLjJWNy42aDEuM2MwLjUsMCwwLjksMC4xLDEuMywwLjMgICBjMC4zLDAuMiww + LjUsMC42LDAuNSwwLjljMCwwLjQtMC4xLDAuNy0wLjUsMWMtMC4zLDAuMi0wLjgsMC40LTEuMywwLjRI + MTguNHogTTguOSw5LjhoMy4ybDAuNiwyLjNIMTVMMTEuOCwySDkuNEw2LjEsMTJoMi4yICAgTDguOSw5 + Ljh6IE0xMC40LDQuN2MwLjEtMC4zLDAuMS0wLjYsMC4xLTAuOWgwLjFjMCwwLjMsMC4xLDAuNiwwLjEs + MC45bDEsMy4zSDkuNEwxMC40LDQuN3oiIGlkPSJUaXRsZSIgY2xhc3M9IkJsYWNrIiAvPg0KICA8L2c+ + DQo8L3N2Zz4L + + + + 366, 17 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAOwDAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkdyZWVue2ZpbGw6IzAzOUMyMzt9Cgku + QmxhY2t7ZmlsbDojNzI3MjcyO30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5ZZWxsb3d7ZmlsbDojRkZC + MTE1O30KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh + Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iRWRpdERhdGFT + b3VyY2UiPg0KICAgIDxwYXRoIGQ9Ik00LDEwVjZjMC0yLjIsNC41LTQsMTAtNHMxMCwxLjgsMTAsNHY0 + YzAsMi4yLTQuNSw0LTEwLDRTNCwxMi4yLDQsMTB6IE0yNCwxOEwyNCwxOEMyNCwxOCwyNCwxOCwyNCwx + OCAgIEMyNCwxOCwyNCwxOCwyNCwxOHogTTE0LDIwYzUuNSwwLDEwLTEuOCwxMC00di00YzAsMi4yLTQu + NSw0LTEwLDRTNCwxNC4yLDQsMTJ2NEM0LDE4LjIsOC41LDIwLDE0LDIweiBNMTUuMiwyNmw0LjgtNC44 + ICAgYy0xLjcsMC41LTMuNywwLjgtNiwwLjhjLTUuNSwwLTEwLTEuOC0xMC00djRjMCwyLjIsNC41LDQs + MTAsNEMxNC40LDI2LDE0LjgsMjYsMTUuMiwyNnoiIGNsYXNzPSJZZWxsb3ciIC8+DQogICAgPHBhdGgg + ZD0iTTI5LDIzbC04LDhsLTQtNGw4LThMMjksMjN6IE0zMCwyMmwxLjctMS43YzAuNC0wLjQsMC40LTEs + MC0xLjNMMjksMTYuM2MtMC40LTAuNC0xLTAuNC0xLjMsMEwyNiwxOEwzMCwyMnogICAgTTE2LDI4djRo + NEwxNiwyOHoiIGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+DQo8L3N2Zz4L + + + \ No newline at end of file diff --git a/Controls.SQLEditor/frmSQLEditor_old.vb b/Controls.SQLEditor/frmSQLEditor_old.vb new file mode 100644 index 00000000..3f278974 --- /dev/null +++ b/Controls.SQLEditor/frmSQLEditor_old.vb @@ -0,0 +1,146 @@ +Imports DigitalData.Modules.Database +Imports DigitalData.Modules.Logging +Imports DigitalData.Modules.Patterns +Imports DigitalData.Modules.Language.Utils +Imports DigitalData.GUIs.Common +Imports DevExpress.XtraGrid.Views.Grid + +Public Class frmSQLEditor_old + Public SQLString As String + + Private LogConfig As LogConfig + Private SQLServer As MSSQLServer + Private CurrentPosition As String + + Private Placeholders As New List(Of Placeholder) + Private Connections As New List(Of Connection) + + Private Patterns As ClassPatterns + + Friend Class Placeholder + Public Property Placeholder As String + Public Property Replacement As String + End Class + + Friend Class Connection + Public Property Guid As Integer + Public Property Name As String + Public Property Description As String + Public Property Provider As String + Public Property Server As String + Public Property Database As String + Public Property Username As String + Public Property Password As String + + Public Overrides Function ToString() As String + Return Name + End Function + End Class + + Public Sub New(LogConfig As LogConfig, SQLServer As MSSQLServer) + InitializeComponent() + + Me.LogConfig = LogConfig + Me.SQLServer = SQLServer + Patterns = New ClassPatterns(LogConfig) + End Sub + + Private Sub frmSQLEditor_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Try + InitializeBaseForm(LogConfig) + + txtSQL.Text = SQLString + + BindingSourcePlaceholder.DataSource = Placeholders + Placeholders.Clear() + + Connections = Load_SQLConnections() + + Dim oViews As New List(Of GridView) From {GridViewResult, GridViewPlaceholder} + Dim oGridBuilder As New GridBuilder(oViews) + oGridBuilder. + WithDefaults(). + WithReadOnlyOptions(GridViewResult) + + cmbConnections.Properties.Items.Clear() + For Each oConnection In Connections + cmbConnections.Properties.Items.Add(oConnection) + Next + Catch ex As Exception + ShowErrorMessage(ex) + End Try + End Sub + + Private Function Load_SQLConnections() + Try + Dim oSQL As String = "SELECT * FROM TBDD_CONNECTION" + Dim oTable As DataTable = SQLServer.GetDatatable(oSQL) + Dim oConnections As New List(Of Connection) + + For Each oRow As DataRow In oTable.Rows + oConnections.Add(New Connection With { + .Guid = NotNull(oRow.Item("GUID"), String.Empty), + .Name = NotNull(oRow.Item("BEZEICHNUNG"), String.Empty), + .Provider = NotNull(oRow.Item("SQL_PROVIDER"), String.Empty), + .Database = NotNull(oRow.Item("DATENBANK"), String.Empty), + .Description = NotNull(oRow.Item("BEMERKUNG"), String.Empty), + .Password = NotNull(oRow.Item("PASSWORD"), String.Empty), + .Server = NotNull(oRow.Item("SERVER"), String.Empty), + .Username = NotNull(oRow.Item("USERNAME"), String.Empty) + }) + Next + + Return oConnections + Catch ex As Exception + ShowErrorMessage(ex) + Return New List(Of Connection) + End Try + End Function + + Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick + SQLString = txtSQL.Text + DialogResult = DialogResult.OK + Close() + End Sub + + Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick + If cmbConnections.SelectedItem Is Nothing Then + ShowErrorMessage("Bitte wählen sie eine Datenbank Verbindung!") + Exit Sub + End If + + Try + Dim oSQL As String = txtSQL.EditValue.ToString + Dim oConnection As Connection = cmbConnections.SelectedItem + Dim oConnectionString = SQLServer.GetConnectionString(oConnection.Server, oConnection.Database, oConnection.Username, oConnection.Password) + Dim oTable As DataTable = SQLServer.GetDatatableWithConnection(oSQL, oConnectionString) + + GridControlResult.DataSource = oTable + Catch ex As Exception + ShowErrorMessage(ex) + End Try + End Sub + + Private Sub txtSQL_EditValueChanged(sender As Object, e As EventArgs) Handles txtSQL.EditValueChanged + CurrentPosition = txtSQL.SelectionStart + Dim oValue = txtSQL.EditValue.ToString.Trim + + If oValue.Length > 0 Then + GridControlPlaceholders.Enabled = True + CheckForPlaceholders(txtSQL.EditValue) + Else + GridControlPlaceholders.Enabled = False + End If + End Sub + + Private Sub CheckForPlaceholders(Text As String) + Placeholders.Clear() + + For Each oPattern In Patterns.GetAllPatterns(Text) + Placeholders.Add(New Placeholder With { + .Placeholder = oPattern.ToString, + .Replacement = "" + }) + Next + End Sub +End Class From 6a2bd3eabedb73933262b31cb12e15c302d17b5f Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 4 May 2022 16:50:04 +0200 Subject: [PATCH 5/6] TestGUI: update test gui --- Controls.SQLEditor/SQLEditor.vbproj | 9 + Controls.SQLEditor/frmSQLEditor.Designer.vb | 77 ++-- Controls.SQLEditor/frmSQLEditor.resx | 3 + Controls.SQLEditor/frmSQLEditor.vb | 41 ++- Controls.SQLEditor/frmSQLResult.Designer.vb | 62 ++++ Controls.SQLEditor/frmSQLResult.resx | 120 ++++++ Controls.SQLEditor/frmSQLResult.vb | 15 + .../My Project/Application.myapp | 2 +- .../My Project/Resources.Designer.vb | 40 ++ GUIs.Test.TestGUI/My Project/Resources.resx | 12 + GUIs.Test.TestGUI/My Project/licenses.licx | 3 + GUIs.Test.TestGUI/Resources/actions_send.svg | 15 + .../Resources/managedatasource.svg | 9 + GUIs.Test.TestGUI/Resources/save.svg | 16 + .../Resources/updatedataextract.svg | 16 + GUIs.Test.TestGUI/TestGUI.vbproj | 12 + GUIs.Test.TestGUI/TestGUI.vbproj.bak | 345 ------------------ GUIs.Test.TestGUI/frmStart.vb | 2 +- .../frmAdmin_ClipboardWatcher.vb | 4 +- 19 files changed, 421 insertions(+), 382 deletions(-) create mode 100644 Controls.SQLEditor/frmSQLResult.Designer.vb create mode 100644 Controls.SQLEditor/frmSQLResult.resx create mode 100644 Controls.SQLEditor/frmSQLResult.vb create mode 100644 GUIs.Test.TestGUI/Resources/actions_send.svg create mode 100644 GUIs.Test.TestGUI/Resources/managedatasource.svg create mode 100644 GUIs.Test.TestGUI/Resources/save.svg create mode 100644 GUIs.Test.TestGUI/Resources/updatedataextract.svg delete mode 100644 GUIs.Test.TestGUI/TestGUI.vbproj.bak diff --git a/Controls.SQLEditor/SQLEditor.vbproj b/Controls.SQLEditor/SQLEditor.vbproj index ff6974bb..1037b070 100644 --- a/Controls.SQLEditor/SQLEditor.vbproj +++ b/Controls.SQLEditor/SQLEditor.vbproj @@ -116,6 +116,12 @@ Form + + frmSQLResult.vb + + + Form + True @@ -141,6 +147,9 @@ frmSQLEditor_old.vb + + frmSQLResult.vb + VbMyResourcesResXFileCodeGenerator diff --git a/Controls.SQLEditor/frmSQLEditor.Designer.vb b/Controls.SQLEditor/frmSQLEditor.Designer.vb index dab1befa..1ef40631 100644 --- a/Controls.SQLEditor/frmSQLEditor.Designer.vb +++ b/Controls.SQLEditor/frmSQLEditor.Designer.vb @@ -26,9 +26,9 @@ Partial Class frmSQLEditor Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl() Me.RibbonGalleryBarItem1 = New DevExpress.XtraBars.RibbonGalleryBarItem() Me.SvgImageCollection1 = New DevExpress.Utils.SvgImageCollection(Me.components) - Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem() - Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem() - Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem() + Me.btnEditConnections = New DevExpress.XtraBars.BarButtonItem() + Me.btnSave = New DevExpress.XtraBars.BarButtonItem() + Me.btnExecuteSQL = New DevExpress.XtraBars.BarButtonItem() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() @@ -39,6 +39,8 @@ Partial Class frmSQLEditor Me.SplitContainerControl1 = New DevExpress.XtraEditors.SplitContainerControl() Me.GridControl1 = New DevExpress.XtraGrid.GridControl() Me.GridView1 = New DevExpress.XtraGrid.Views.Grid.GridView() + Me.colPattern = New DevExpress.XtraGrid.Columns.GridColumn() + Me.colValue = New DevExpress.XtraGrid.Columns.GridColumn() CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit() @@ -54,7 +56,7 @@ Partial Class frmSQLEditor 'RibbonControl1 ' Me.RibbonControl1.ExpandCollapseItem.Id = 0 - Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.RibbonGalleryBarItem1, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarButtonItem3}) + Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.RibbonGalleryBarItem1, Me.btnEditConnections, Me.btnSave, Me.btnExecuteSQL}) Me.RibbonControl1.Location = New System.Drawing.Point(0, 0) Me.RibbonControl1.MaxItemId = 5 Me.RibbonControl1.Name = "RibbonControl1" @@ -79,26 +81,26 @@ Partial Class frmSQLEditor ' Me.SvgImageCollection1.Add("bo_list", "image://svgimages/business objects/bo_list.svg") ' - 'BarButtonItem1 + 'btnEditConnections ' - Me.BarButtonItem1.Caption = "Verbindungen" - Me.BarButtonItem1.Id = 2 - Me.BarButtonItem1.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.editdatasource1 - Me.BarButtonItem1.Name = "BarButtonItem1" + Me.btnEditConnections.Caption = "Verbindungen" + Me.btnEditConnections.Id = 2 + Me.btnEditConnections.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.editdatasource1 + Me.btnEditConnections.Name = "btnEditConnections" ' - 'BarButtonItem2 + 'btnSave ' - Me.BarButtonItem2.Caption = "Speichern" - Me.BarButtonItem2.Id = 3 - Me.BarButtonItem2.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.check - Me.BarButtonItem2.Name = "BarButtonItem2" + Me.btnSave.Caption = "Speichern" + Me.btnSave.Id = 3 + Me.btnSave.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.check + Me.btnSave.Name = "btnSave" ' - 'BarButtonItem3 + 'btnExecuteSQL ' - Me.BarButtonItem3.Caption = "SQL Ausführen" - Me.BarButtonItem3.Id = 4 - Me.BarButtonItem3.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.updatedataextract3 - Me.BarButtonItem3.Name = "BarButtonItem3" + Me.btnExecuteSQL.Caption = "SQL Ausführen" + Me.btnExecuteSQL.Id = 4 + Me.btnExecuteSQL.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.updatedataextract3 + Me.btnExecuteSQL.Name = "btnExecuteSQL" ' 'RibbonPage1 ' @@ -116,14 +118,14 @@ Partial Class frmSQLEditor 'RibbonPageGroup2 ' Me.RibbonPageGroup2.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far - Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem1) + Me.RibbonPageGroup2.ItemLinks.Add(Me.btnEditConnections) Me.RibbonPageGroup2.Name = "RibbonPageGroup2" Me.RibbonPageGroup2.Text = "Datenbank" ' 'RibbonPageGroup3 ' - Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem2) - Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem3) + Me.RibbonPageGroup3.ItemLinks.Add(Me.btnSave) + Me.RibbonPageGroup3.ItemLinks.Add(Me.btnExecuteSQL) Me.RibbonPageGroup3.Name = "RibbonPageGroup3" Me.RibbonPageGroup3.Text = "Start" ' @@ -180,10 +182,29 @@ Partial Class frmSQLEditor ' 'GridView1 ' + Me.GridView1.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colPattern, Me.colValue}) Me.GridView1.GridControl = Me.GridControl1 Me.GridView1.Name = "GridView1" ' - 'Form1 + 'colPattern + ' + Me.colPattern.Caption = "Platzhalter" + Me.colPattern.FieldName = "Pattern" + Me.colPattern.Name = "colPattern" + Me.colPattern.OptionsColumn.AllowEdit = False + Me.colPattern.OptionsColumn.ReadOnly = True + Me.colPattern.Visible = True + Me.colPattern.VisibleIndex = 0 + ' + 'colValue + ' + Me.colValue.Caption = "Wert" + Me.colValue.FieldName = "Value" + Me.colValue.Name = "colValue" + Me.colValue.Visible = True + Me.colValue.VisibleIndex = 1 + ' + 'frmSQLEditor ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font @@ -191,7 +212,7 @@ Partial Class frmSQLEditor Me.Controls.Add(Me.SplitContainerControl1) Me.Controls.Add(Me.RibbonStatusBar1) Me.Controls.Add(Me.RibbonControl1) - Me.Name = "Form1" + Me.Name = "frmSQLEditor" Me.Ribbon = Me.RibbonControl1 Me.StatusBar = Me.RibbonStatusBar1 Me.Text = "SQL Connector" @@ -221,9 +242,11 @@ Partial Class frmSQLEditor Friend WithEvents SplitContainerControl1 As DevExpress.XtraEditors.SplitContainerControl Friend WithEvents GridControl1 As DevExpress.XtraGrid.GridControl Friend WithEvents GridView1 As DevExpress.XtraGrid.Views.Grid.GridView - Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents btnEditConnections As DevExpress.XtraBars.BarButtonItem Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup - Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem - Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents btnSave As DevExpress.XtraBars.BarButtonItem + Friend WithEvents btnExecuteSQL As DevExpress.XtraBars.BarButtonItem Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup + Friend WithEvents colPattern As DevExpress.XtraGrid.Columns.GridColumn + Friend WithEvents colValue As DevExpress.XtraGrid.Columns.GridColumn End Class diff --git a/Controls.SQLEditor/frmSQLEditor.resx b/Controls.SQLEditor/frmSQLEditor.resx index f722219e..1a6c0395 100644 --- a/Controls.SQLEditor/frmSQLEditor.resx +++ b/Controls.SQLEditor/frmSQLEditor.resx @@ -120,4 +120,7 @@ 17, 17 + + 17, 17 + \ No newline at end of file diff --git a/Controls.SQLEditor/frmSQLEditor.vb b/Controls.SQLEditor/frmSQLEditor.vb index 2e5cdbd3..92f579c7 100644 --- a/Controls.SQLEditor/frmSQLEditor.vb +++ b/Controls.SQLEditor/frmSQLEditor.vb @@ -26,6 +26,7 @@ Public Class frmSQLEditor ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. LogConfig = pLogConfig + Database = pDatabase End Sub Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load @@ -68,19 +69,22 @@ Public Class frmSQLEditor Private Class Placeholder Public Type As PlaceholderType - Public Name As String + Public Property Name As String + Public Property Value As String + Public Property Pattern As Pattern + + Public Category As String Public Description As String - Public Value As String Public Enum PlaceholderType FileFlow End Enum - Public Sub New(pName As String, pDescription As String, pType As PlaceholderType, pValue As String) + Public Sub New(pName As String, pDescription As String, pType As PlaceholderType, pCategory As String) Name = pName Description = pDescription Type = pType - Value = pValue + Category = pCategory End Sub End Class @@ -90,12 +94,37 @@ Public Class frmSQLEditor } End Function + Private Property LastPatterns As New List(Of Pattern) + Private Sub RichEditControl1_ContentChanged(sender As Object, e As EventArgs) Handles RichEditControl1.ContentChanged Dim oSqlText = RichEditControl1.Document.Text Dim oPatterns = Patterns.GetAllPatterns(oSqlText) - End Sub - Private Sub RibbonControl1_Click(sender As Object, e As EventArgs) Handles RibbonControl1.Click + If oPatterns.Count = 0 Then + Exit Sub + End If + + If oPatterns.SequenceEqual(LastPatterns) Then + Exit Sub + End If + + GridControl1.DataSource = oPatterns.Select(Function(pattern) + Return New Placeholder(pattern.Value, pattern.Type, Placeholder.PlaceholderType.FileFlow, "") With {.Pattern = pattern} + End Function).ToList() + + + LastPatterns = oPatterns + + End Sub + Private Async Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnExecuteSQL.ItemClick + Try + Dim oSql = RichEditControl1.Document.Text + Dim oDatatable = Await Database.GetDatatableAsync(oSql) + Dim oForm As New frmSQLResult(oDatatable) + oForm.Show() + Catch ex As Exception + MsgBox(ex.Message, MsgBoxStyle.Critical, Text) + End Try End Sub End Class diff --git a/Controls.SQLEditor/frmSQLResult.Designer.vb b/Controls.SQLEditor/frmSQLResult.Designer.vb new file mode 100644 index 00000000..6ecd114f --- /dev/null +++ b/Controls.SQLEditor/frmSQLResult.Designer.vb @@ -0,0 +1,62 @@ + _ +Partial Class frmSQLResult + Inherits DevExpress.XtraEditors.XtraForm + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.GridControlResult = New DevExpress.XtraGrid.GridControl() + Me.GridViewResult = New DevExpress.XtraGrid.Views.Grid.GridView() + CType(Me.GridControlResult, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.GridViewResult, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'GridControlResult + ' + Me.GridControlResult.Dock = System.Windows.Forms.DockStyle.Fill + Me.GridControlResult.Location = New System.Drawing.Point(0, 0) + Me.GridControlResult.MainView = Me.GridViewResult + Me.GridControlResult.Name = "GridControlResult" + Me.GridControlResult.Size = New System.Drawing.Size(800, 450) + Me.GridControlResult.TabIndex = 0 + Me.GridControlResult.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewResult}) + ' + 'GridViewResult + ' + Me.GridViewResult.GridControl = Me.GridControlResult + Me.GridViewResult.Name = "GridViewResult" + ' + 'frmSQLResult + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(800, 450) + Me.Controls.Add(Me.GridControlResult) + Me.Name = "frmSQLResult" + Me.Text = "SQL Ergebnis" + CType(Me.GridControlResult, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.GridViewResult, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + + End Sub + + Friend WithEvents GridControlResult As DevExpress.XtraGrid.GridControl + Friend WithEvents GridViewResult As DevExpress.XtraGrid.Views.Grid.GridView +End Class diff --git a/Controls.SQLEditor/frmSQLResult.resx b/Controls.SQLEditor/frmSQLResult.resx new file mode 100644 index 00000000..1af7de15 --- /dev/null +++ b/Controls.SQLEditor/frmSQLResult.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Controls.SQLEditor/frmSQLResult.vb b/Controls.SQLEditor/frmSQLResult.vb new file mode 100644 index 00000000..72c96da8 --- /dev/null +++ b/Controls.SQLEditor/frmSQLResult.vb @@ -0,0 +1,15 @@ +Public Class frmSQLResult + Private ReadOnly Table As DataTable + + Public Sub New(pTable As DataTable) + ' Dieser Aufruf ist für den Designer erforderlich. + InitializeComponent() + + ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. + Table = pTable + End Sub + + Private Sub frmSQLResult_Load(sender As Object, e As EventArgs) Handles MyBase.Load + GridControlResult.DataSource = Table + End Sub +End Class \ No newline at end of file diff --git a/GUIs.Test.TestGUI/My Project/Application.myapp b/GUIs.Test.TestGUI/My Project/Application.myapp index a1da81d5..0f12f323 100644 --- a/GUIs.Test.TestGUI/My Project/Application.myapp +++ b/GUIs.Test.TestGUI/My Project/Application.myapp @@ -1,7 +1,7 @@  true - frmStart + Form1 false 0 true diff --git a/GUIs.Test.TestGUI/My Project/Resources.Designer.vb b/GUIs.Test.TestGUI/My Project/Resources.Designer.vb index d69a1a29..cd2e2168 100644 --- a/GUIs.Test.TestGUI/My Project/Resources.Designer.vb +++ b/GUIs.Test.TestGUI/My Project/Resources.Designer.vb @@ -60,6 +60,16 @@ Namespace My.Resources End Set End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property actions_send() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("actions_send", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' @@ -69,5 +79,35 @@ Namespace My.Resources Return CType(obj,DevExpress.Utils.Svg.SvgImage) End Get End Property + + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property managedatasource() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("managedatasource", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property save() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("save", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property updatedataextract() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("updatedataextract", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property End Module End Namespace diff --git a/GUIs.Test.TestGUI/My Project/Resources.resx b/GUIs.Test.TestGUI/My Project/Resources.resx index 13330b3d..ff426c32 100644 --- a/GUIs.Test.TestGUI/My Project/Resources.resx +++ b/GUIs.Test.TestGUI/My Project/Resources.resx @@ -118,7 +118,19 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + ..\Resources\managedatasource.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\alignhorizontalbottom.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\updatedataextract.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\save.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\actions_send.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + \ No newline at end of file diff --git a/GUIs.Test.TestGUI/My Project/licenses.licx b/GUIs.Test.TestGUI/My Project/licenses.licx index 78d6cc83..fce612c6 100644 --- a/GUIs.Test.TestGUI/My Project/licenses.licx +++ b/GUIs.Test.TestGUI/My Project/licenses.licx @@ -1 +1,4 @@ +DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraSpreadsheet.SpreadsheetControl, DevExpress.XtraSpreadsheet.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraRichEdit.RichEditControl, DevExpress.XtraRichEdit.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a diff --git a/GUIs.Test.TestGUI/Resources/actions_send.svg b/GUIs.Test.TestGUI/Resources/actions_send.svg new file mode 100644 index 00000000..c0372ba0 --- /dev/null +++ b/GUIs.Test.TestGUI/Resources/actions_send.svg @@ -0,0 +1,15 @@ + + + + + + + \ No newline at end of file diff --git a/GUIs.Test.TestGUI/Resources/managedatasource.svg b/GUIs.Test.TestGUI/Resources/managedatasource.svg new file mode 100644 index 00000000..d08be544 --- /dev/null +++ b/GUIs.Test.TestGUI/Resources/managedatasource.svg @@ -0,0 +1,9 @@ + + + + + + \ No newline at end of file diff --git a/GUIs.Test.TestGUI/Resources/save.svg b/GUIs.Test.TestGUI/Resources/save.svg new file mode 100644 index 00000000..b09d6ee8 --- /dev/null +++ b/GUIs.Test.TestGUI/Resources/save.svg @@ -0,0 +1,16 @@ + + + + + \ No newline at end of file diff --git a/GUIs.Test.TestGUI/Resources/updatedataextract.svg b/GUIs.Test.TestGUI/Resources/updatedataextract.svg new file mode 100644 index 00000000..e7dda038 --- /dev/null +++ b/GUIs.Test.TestGUI/Resources/updatedataextract.svg @@ -0,0 +1,16 @@ + + + + + + + + \ No newline at end of file diff --git a/GUIs.Test.TestGUI/TestGUI.vbproj b/GUIs.Test.TestGUI/TestGUI.vbproj index 8ae86e86..f98e4215 100644 --- a/GUIs.Test.TestGUI/TestGUI.vbproj +++ b/GUIs.Test.TestGUI/TestGUI.vbproj @@ -378,5 +378,17 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/GUIs.Test.TestGUI/TestGUI.vbproj.bak b/GUIs.Test.TestGUI/TestGUI.vbproj.bak deleted file mode 100644 index b43683fa..00000000 --- a/GUIs.Test.TestGUI/TestGUI.vbproj.bak +++ /dev/null @@ -1,345 +0,0 @@ - - - - - Debug - AnyCPU - {93130E7D-A950-4CBD-A0D9-7A6FAF94DDC0} - WinExe - TestGUI.My.MyApplication - TestGUI - TestGUI - 512 - WindowsForms - v4.7.2 - true - - - - AnyCPU - true - full - true - true - bin\Debug\ - TestGUI.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - - - AnyCPU - pdbonly - false - true - true - bin\Release\ - TestGUI.xml - 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 - - - On - - - Binary - - - Off - - - On - - - My Project\app.manifest - - - - - - - - - - - - - - - - - - - - - - - - False - D:\ProgramFiles\GdPicture.NET 14\Redist\GdPicture.NET (.NET Framework 4.5)\GdPicture.NET.14.dll - - - P:\Visual Studio Projekte\Bibliotheken\Limilabs\Mail.dll\Mail.dll - - - - ..\packages\Microsoft.Extensions.Logging.Abstractions.2.1.1\lib\netstandard2.0\Microsoft.Extensions.Logging.Abstractions.dll - - - ..\packages\NLog.4.7.10\lib\net45\NLog.dll - - - ..\packages\Quartz.3.3.2\lib\net472\Quartz.dll - - - - ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll - - - - - - ..\packages\System.Diagnostics.DiagnosticSource.4.7.1\lib\net46\System.Diagnostics.DiagnosticSource.dll - - - - - ..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll - - - - ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll - - - ..\packages\System.Runtime.CompilerServices.Unsafe.4.5.3\lib\net461\System.Runtime.CompilerServices.Unsafe.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - frmChecksum.vb - - - Form - - - frmConfigTest.vb - - - Form - - - frmDocView.vb - - - Form - - - frmDocViewPure.vb - - - Form - - - frmEmail.vb - - - Form - - - frmFilesystem.vb - - - Form - - - frmFolderWatcher.vb - - - Form - - - frmLookup.vb - - - Form - - - frmMail.vb - - - Form - - - Form - - - frmOld.vb - Form - - - frmRelations.vb - - - Form - - - frmStart.vb - - - Form - - - - True - Application.myapp - True - - - True - True - Resources.resx - - - True - Settings.settings - True - - - - - frmChecksum.vb - - - frmConfigTest.vb - - - frmDocView.vb - - - frmDocViewPure.vb - - - frmEmail.vb - - - frmFilesystem.vb - - - frmFolderWatcher.vb - - - frmLookup.vb - - - frmMail.vb - - - frmOld.vb - - - frmRelations.vb - - - frmStart.vb - - - - VbMyResourcesResXFileCodeGenerator - Resources.Designer.vb - My.Resources - Designer - - - - - - MyApplicationCodeGenerator - Application.Designer.vb - - - SettingsSingleFileGenerator - My - Settings.Designer.vb - - - - - - - - - - {0958cddf-4a16-41f6-8837-8335f71d599c} - DocumentViewer - - - {3dcd6d1a-c830-4241-b7e4-27430e7ea483} - LookupControl - - - {3e7bc8a9-91ef-49b8-8110-2c01f664c24a} - SQLEditor - - - {D20A6BF2-C7C6-4A7A-B34D-FA27D775A049} - Common - - - {44982f9b-6116-44e2-85d0-f39650b1ef99} - Config - - - {eaf0ea75-5fa7-485d-89c7-b2d843b03a96} - Database - - - {991d0231-4623-496d-8bd0-9ca906029cbc} - Filesystem - - - {903b2d7d-3b80-4be9-8713-7447b704e1b0} - Logging - - - {af664d85-0a4b-4bab-a2f8-83110c06553a} - Messaging - - - {4c86df8f-a280-40d4-85b0-10b1bf66c15c} - Windream - - - {a8c3f298-76ab-4359-ab3c-986e313b4336} - EDMIService - - - {5efaef9b-90b9-4f05-9f70-f79ad77fff86} - Windows - - - - - - - \ No newline at end of file diff --git a/GUIs.Test.TestGUI/frmStart.vb b/GUIs.Test.TestGUI/frmStart.vb index 4c10286d..6dd134be 100644 --- a/GUIs.Test.TestGUI/frmStart.vb +++ b/GUIs.Test.TestGUI/frmStart.vb @@ -13,7 +13,7 @@ Public Class frmStart .ProductName = "TestGUI", .CompanyName = "Digital Data" }) - Database = New MSSQLServer(LogConfig, "Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM_TEST;Persist Security Info=True;User ID=sa;Password=dd") + Database = New MSSQLServer(LogConfig, "Data Source=SDD-VMP04-SQL17\DD_DEVELOP01;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd") End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click diff --git a/GUIs.ZooFlow/Administration/frmAdmin_ClipboardWatcher.vb b/GUIs.ZooFlow/Administration/frmAdmin_ClipboardWatcher.vb index 54f4e0c2..01a5dcf9 100644 --- a/GUIs.ZooFlow/Administration/frmAdmin_ClipboardWatcher.vb +++ b/GUIs.ZooFlow/Administration/frmAdmin_ClipboardWatcher.vb @@ -220,7 +220,7 @@ Public Class frmAdmin_ClipboardWatcher Dim oTextEdit As TextEdit = sender If e.Button.Tag = BUTTON_SEARCH_SQL Then - Dim oForm As New frmSQLEditor(My.LogConfig, My.DatabaseECM) With {.SQLString = oTextEdit.EditValue} + Dim oForm As New frmSQLEditor_old(My.LogConfig, My.DatabaseECM) With {.SQLString = oTextEdit.EditValue} Dim oResult = oForm.ShowDialog() If oResult = DialogResult.OK Then @@ -233,7 +233,7 @@ Public Class frmAdmin_ClipboardWatcher Dim oTextEdit As TextEdit = sender If e.Button.Tag = BUTTON_COUNT_SQL Then - Dim oForm As New frmSQLEditor(My.LogConfig, My.DatabaseECM) With {.SQLString = oTextEdit.EditValue} + Dim oForm As New frmSQLEditor_old(My.LogConfig, My.DatabaseECM) With {.SQLString = oTextEdit.EditValue} Dim oResult = oForm.ShowDialog() If oResult = DialogResult.OK Then From 02f61b1e3f2b79eb464977ded316159e3d3c05ec Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Thu, 5 May 2022 16:34:56 +0200 Subject: [PATCH 6/6] SQLEditor: lots of stuff --- .../My Project/Resources.Designer.vb | 60 +++++++ Controls.SQLEditor/My Project/Resources.resx | 56 ++++-- Controls.SQLEditor/Placeholder.vb | 45 +++++ Controls.SQLEditor/Placeholders.vb | 54 ++++++ .../Resources/actions_database2.svg | 17 ++ Controls.SQLEditor/Resources/actions_user.svg | 16 ++ Controls.SQLEditor/Resources/clearall.svg | 9 + .../Resources/cleartablestyle.svg | 14 ++ .../Resources/electronics_desktopmac.svg | 9 + .../Resources/removegroupheader.svg | 22 +++ Controls.SQLEditor/SQLEditor.vbproj | 20 +++ .../SQLSyntaxHighlightService.vb | 11 +- Controls.SQLEditor/frmSQLEditor.Designer.vb | 117 +++++++----- Controls.SQLEditor/frmSQLEditor.vb | 166 ++++++++++++------ 14 files changed, 502 insertions(+), 114 deletions(-) create mode 100644 Controls.SQLEditor/Placeholder.vb create mode 100644 Controls.SQLEditor/Placeholders.vb create mode 100644 Controls.SQLEditor/Resources/actions_database2.svg create mode 100644 Controls.SQLEditor/Resources/actions_user.svg create mode 100644 Controls.SQLEditor/Resources/clearall.svg create mode 100644 Controls.SQLEditor/Resources/cleartablestyle.svg create mode 100644 Controls.SQLEditor/Resources/electronics_desktopmac.svg create mode 100644 Controls.SQLEditor/Resources/removegroupheader.svg diff --git a/Controls.SQLEditor/My Project/Resources.Designer.vb b/Controls.SQLEditor/My Project/Resources.Designer.vb index bd814192..7c8f1584 100644 --- a/Controls.SQLEditor/My Project/Resources.Designer.vb +++ b/Controls.SQLEditor/My Project/Resources.Designer.vb @@ -100,6 +100,26 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property actions_database2() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("actions_database2", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property actions_user() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("actions_user", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' @@ -110,6 +130,26 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property clearall() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("clearall", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property cleartablestyle() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("cleartablestyle", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' @@ -130,6 +170,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property electronics_desktopmac() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("electronics_desktopmac", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' @@ -140,6 +190,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property removegroupheader() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("removegroupheader", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' diff --git a/Controls.SQLEditor/My Project/Resources.resx b/Controls.SQLEditor/My Project/Resources.resx index 2e2bfdf3..f30ca6ae 100644 --- a/Controls.SQLEditor/My Project/Resources.resx +++ b/Controls.SQLEditor/My Project/Resources.resx @@ -118,40 +118,58 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - ..\Resources\actions_database.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - - ..\Resources\updatedataextract1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - - ..\Resources\actions_check.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\updatedataextract2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\actions_database1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\removegroupheader.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\updatedataextract3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\actions_user.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\editdatasource.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\updatedataextract2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\actions_check.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\updatedataextract.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\check.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\highimportance.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\actions_database.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\electronics_desktopmac.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\clearall.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\actions_database2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\updatedataextract1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\updatedataextract3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\actions_checkcircled.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\check.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - ..\Resources\editdatasource1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\updatedataextract.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\actions_database1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\cleartablestyle.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + \ No newline at end of file diff --git a/Controls.SQLEditor/Placeholder.vb b/Controls.SQLEditor/Placeholder.vb new file mode 100644 index 00000000..1588548f --- /dev/null +++ b/Controls.SQLEditor/Placeholder.vb @@ -0,0 +1,45 @@ +Imports DigitalData.Modules.Patterns + +Public Class Placeholder + ''' + ''' The internal Category of the placeholder, ie. the INT Part of {#INT#USERNAME} + ''' + Public Property [Module] As String + + ''' + ''' The internal Name of the placeholder, ie. the USERNAME Part of {#INT#USERNAME} + ''' + Public Property Name As String + + ''' + ''' The Value that this palceholder is replaced by, user entry. + ''' + ''' + Public Property Value As String + + ''' + ''' The internal pattern object + ''' + ''' + Public Property Pattern As Pattern + + Public Title As String + Public Description As String + + Public Enum PlaceholderType + FileFlow + End Enum + + Public Sub New(pTitle As String, pDescription As String, pModule As String, pName As String) + Title = pTitle + Description = pDescription + + Name = pName + [Module] = pModule + End Sub + + Public Overrides Function Equals(obj As Object) As Boolean + Return DirectCast(obj, Placeholder).Module = [Module] And + DirectCast(obj, Placeholder).Name = Name + End Function +End Class \ No newline at end of file diff --git a/Controls.SQLEditor/Placeholders.vb b/Controls.SQLEditor/Placeholders.vb new file mode 100644 index 00000000..6a08e747 --- /dev/null +++ b/Controls.SQLEditor/Placeholders.vb @@ -0,0 +1,54 @@ +Imports DevExpress.Utils.Svg +Imports DevExpress.XtraBars.Ribbon + +Public Class Placeholders + Public Function GetInternalGroup() As GalleryItemGroup + Dim oModule = "INT" + Dim oImage = My.Resources.electronics_desktopmac + + Dim oItems As New List(Of GalleryItem)() From { + GetGalleryItem(New Placeholder("USERNAME", "Benutzername", oModule, "USERNAME"), oImage), + GetGalleryItem(New Placeholder("MACHINE", "Aktuelles Datum", oModule, "MACHINE"), oImage), + GetGalleryItem(New Placeholder("DOMAIN", "Email-Adresse", oModule, "DOMAIN"), oImage), + GetGalleryItem(New Placeholder("DATE", "Vorname", oModule, "DATE"), oImage) + } + Dim oGroup1 = New GalleryItemGroup() With {.Caption = "Intern"} + + oGroup1.Items.AddRange(oItems.ToArray) + Return oGroup1 + End Function + + Public Function GetUserGroup() As GalleryItemGroup + Dim oModule = "USER" + Dim oImage = My.Resources.actions_user + + Dim oItems As New List(Of GalleryItem)() From { + GetGalleryItem(New Placeholder("PRENAME", "Vorname", oModule, "PRENAME"), oImage), + GetGalleryItem(New Placeholder("SURNAME", "Nachname", oModule, "SURNAME"), oImage), + GetGalleryItem(New Placeholder("EMAIL", "Email-Adresse", oModule, "EMAIL"), oImage), + GetGalleryItem(New Placeholder("USER_ID", "Benutzer-ID", oModule, "USER_ID"), oImage), + GetGalleryItem(New Placeholder("PROFILE_ID", "Profil-ID", oModule, "PROFILE_ID"), oImage), + GetGalleryItem(New Placeholder("PROFILE_TITLE", "Profil-Name", oModule, "PROFILE_TITLE"), oImage), + GetGalleryItem(New Placeholder("LANGUAGE", "Sprache", oModule, "LANGUAGE"), oImage) + } + Dim oGroup1 = New GalleryItemGroup() With {.Caption = "Benutzer"} + + oGroup1.Items.AddRange(oItems.ToArray) + Return oGroup1 + End Function + + Private Function GetGalleryItem(pPlaceholder As Placeholder) As GalleryItem + Return New GalleryItem(Nothing, pPlaceholder.Title, pPlaceholder.Description) With { + .Tag = pPlaceholder + } + End Function + + Private Function GetGalleryItem(pPlaceholder As Placeholder, pImage As SvgImage) As GalleryItem + Dim oItem = New GalleryItem(Nothing, pPlaceholder.Title, pPlaceholder.Description) With { + .Tag = pPlaceholder + } + oItem.ImageOptions.SvgImage = pImage + + Return oItem + End Function +End Class diff --git a/Controls.SQLEditor/Resources/actions_database2.svg b/Controls.SQLEditor/Resources/actions_database2.svg new file mode 100644 index 00000000..af7a23c1 --- /dev/null +++ b/Controls.SQLEditor/Resources/actions_database2.svg @@ -0,0 +1,17 @@ + + + + + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/Resources/actions_user.svg b/Controls.SQLEditor/Resources/actions_user.svg new file mode 100644 index 00000000..8c183040 --- /dev/null +++ b/Controls.SQLEditor/Resources/actions_user.svg @@ -0,0 +1,16 @@ + + + + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/Resources/clearall.svg b/Controls.SQLEditor/Resources/clearall.svg new file mode 100644 index 00000000..0ebb0456 --- /dev/null +++ b/Controls.SQLEditor/Resources/clearall.svg @@ -0,0 +1,9 @@ + + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/Resources/cleartablestyle.svg b/Controls.SQLEditor/Resources/cleartablestyle.svg new file mode 100644 index 00000000..f5becce1 --- /dev/null +++ b/Controls.SQLEditor/Resources/cleartablestyle.svg @@ -0,0 +1,14 @@ + + + + + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/Resources/electronics_desktopmac.svg b/Controls.SQLEditor/Resources/electronics_desktopmac.svg new file mode 100644 index 00000000..919cfe4d --- /dev/null +++ b/Controls.SQLEditor/Resources/electronics_desktopmac.svg @@ -0,0 +1,9 @@ + + + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/Resources/removegroupheader.svg b/Controls.SQLEditor/Resources/removegroupheader.svg new file mode 100644 index 00000000..beb2c741 --- /dev/null +++ b/Controls.SQLEditor/Resources/removegroupheader.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/SQLEditor.vbproj b/Controls.SQLEditor/SQLEditor.vbproj index 1037b070..a66ced1a 100644 --- a/Controls.SQLEditor/SQLEditor.vbproj +++ b/Controls.SQLEditor/SQLEditor.vbproj @@ -138,6 +138,8 @@ Settings.settings True + + @@ -229,5 +231,23 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Controls.SQLEditor/SQLSyntaxHighlightService.vb b/Controls.SQLEditor/SQLSyntaxHighlightService.vb index 69a68ca1..d4cc1ea8 100644 --- a/Controls.SQLEditor/SQLSyntaxHighlightService.vb +++ b/Controls.SQLEditor/SQLSyntaxHighlightService.vb @@ -15,8 +15,9 @@ Public Class SQLSyntaxHighlightService Private _keywords As Regex Private _quotedString As New Regex("'([^']|'')*'") Private _commentedString As New Regex("(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)") + Private _placeholderString As New Regex("{#(\w+)#([\:\.\w\s_/-]+)}") - Private keywords As New List(Of String) From { + Private ReadOnly keywords As New List(Of String) From { "INSERT", "SELECT", "CREATE", @@ -72,6 +73,14 @@ Public Class SQLSyntaxHighlightService End If Next j + 'Find all placeholders + ranges = TryCast(document.FindAll(_placeholderString).GetAsFrozen(), DocumentRange()) + For j As Integer = 0 To ranges.Length - 1 + If Not IsRangeInTokens(ranges(j), tokens) Then + tokens.Add(CreateToken(ranges(j).Start.ToInt(), ranges(j).End.ToInt(), Color.DarkTurquoise)) + End If + Next j + 'Find all comments ranges = TryCast(document.FindAll(_commentedString).GetAsFrozen(), DocumentRange()) For j As Integer = 0 To ranges.Length - 1 diff --git a/Controls.SQLEditor/frmSQLEditor.Designer.vb b/Controls.SQLEditor/frmSQLEditor.Designer.vb index 1ef40631..428abeb2 100644 --- a/Controls.SQLEditor/frmSQLEditor.Designer.vb +++ b/Controls.SQLEditor/frmSQLEditor.Designer.vb @@ -29,16 +29,19 @@ Partial Class frmSQLEditor Me.btnEditConnections = New DevExpress.XtraBars.BarButtonItem() Me.btnSave = New DevExpress.XtraBars.BarButtonItem() Me.btnExecuteSQL = New DevExpress.XtraBars.BarButtonItem() + Me.RibbonGalleryBarItem2 = New DevExpress.XtraBars.RibbonGalleryBarItem() + Me.chkClearPlaceholders = New DevExpress.XtraBars.BarCheckItem() + Me.btnClearPlaceholders = New DevExpress.XtraBars.BarButtonItem() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() - Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() - Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() + Me.RibbonPageGroup4 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() + Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RichEditControl1 = New DevExpress.XtraRichEdit.RichEditControl() Me.SplitContainerControl1 = New DevExpress.XtraEditors.SplitContainerControl() - Me.GridControl1 = New DevExpress.XtraGrid.GridControl() - Me.GridView1 = New DevExpress.XtraGrid.Views.Grid.GridView() + Me.GridPlaceholders = New DevExpress.XtraGrid.GridControl() + Me.ViewPlaceholders = New DevExpress.XtraGrid.Views.Grid.GridView() Me.colPattern = New DevExpress.XtraGrid.Columns.GridColumn() Me.colValue = New DevExpress.XtraGrid.Columns.GridColumn() CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit() @@ -49,16 +52,16 @@ Partial Class frmSQLEditor CType(Me.SplitContainerControl1.Panel2, System.ComponentModel.ISupportInitialize).BeginInit() Me.SplitContainerControl1.Panel2.SuspendLayout() Me.SplitContainerControl1.SuspendLayout() - CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.GridView1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.GridPlaceholders, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.ViewPlaceholders, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' 'RibbonControl1 ' Me.RibbonControl1.ExpandCollapseItem.Id = 0 - Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.RibbonGalleryBarItem1, Me.btnEditConnections, Me.btnSave, Me.btnExecuteSQL}) + Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.RibbonGalleryBarItem1, Me.btnEditConnections, Me.btnSave, Me.btnExecuteSQL, Me.RibbonGalleryBarItem2, Me.chkClearPlaceholders, Me.btnClearPlaceholders}) Me.RibbonControl1.Location = New System.Drawing.Point(0, 0) - Me.RibbonControl1.MaxItemId = 5 + Me.RibbonControl1.MaxItemId = 11 Me.RibbonControl1.Name = "RibbonControl1" Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1}) Me.RibbonControl1.Size = New System.Drawing.Size(1056, 158) @@ -72,7 +75,6 @@ Partial Class frmSQLEditor ' Me.RibbonGalleryBarItem1.Gallery.Images = Me.SvgImageCollection1 Me.RibbonGalleryBarItem1.Gallery.ShowGroupCaption = True - Me.RibbonGalleryBarItem1.Gallery.ShowItemImage = False Me.RibbonGalleryBarItem1.Gallery.ShowItemText = True Me.RibbonGalleryBarItem1.Id = 1 Me.RibbonGalleryBarItem1.Name = "RibbonGalleryBarItem1" @@ -102,25 +104,37 @@ Partial Class frmSQLEditor Me.btnExecuteSQL.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.updatedataextract3 Me.btnExecuteSQL.Name = "btnExecuteSQL" ' - 'RibbonPage1 + 'RibbonGalleryBarItem2 ' - Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3}) - Me.RibbonPage1.Name = "RibbonPage1" - Me.RibbonPage1.Text = "RibbonPage1" + Me.RibbonGalleryBarItem2.Caption = "RibbonGalleryBarItem2" ' - 'RibbonPageGroup1 ' - Me.RibbonPageGroup1.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far - Me.RibbonPageGroup1.ItemLinks.Add(Me.RibbonGalleryBarItem1) - Me.RibbonPageGroup1.Name = "RibbonPageGroup1" - Me.RibbonPageGroup1.Text = "Platzhalter" ' - 'RibbonPageGroup2 + Me.RibbonGalleryBarItem2.Gallery.CheckDrawMode = DevExpress.XtraBars.Ribbon.Gallery.CheckDrawMode.ImageAndText + Me.RibbonGalleryBarItem2.Gallery.ItemCheckMode = DevExpress.XtraBars.Ribbon.Gallery.ItemCheckMode.SingleRadio + Me.RibbonGalleryBarItem2.Gallery.ShowItemText = True + Me.RibbonGalleryBarItem2.Id = 5 + Me.RibbonGalleryBarItem2.Name = "RibbonGalleryBarItem2" + ' + 'chkClearPlaceholders ' - Me.RibbonPageGroup2.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far - Me.RibbonPageGroup2.ItemLinks.Add(Me.btnEditConnections) - Me.RibbonPageGroup2.Name = "RibbonPageGroup2" - Me.RibbonPageGroup2.Text = "Datenbank" + Me.chkClearPlaceholders.Caption = "Platzhalter nach Ausführung leeren" + Me.chkClearPlaceholders.Id = 9 + Me.chkClearPlaceholders.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.cleartablestyle + Me.chkClearPlaceholders.Name = "chkClearPlaceholders" + ' + 'btnClearPlaceholders + ' + Me.btnClearPlaceholders.Caption = "Platzhalter jetzt leeren" + Me.btnClearPlaceholders.Id = 10 + Me.btnClearPlaceholders.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.clearall + Me.btnClearPlaceholders.Name = "btnClearPlaceholders" + ' + 'RibbonPage1 + ' + Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup3, Me.RibbonPageGroup4, Me.RibbonPageGroup1}) + Me.RibbonPage1.Name = "RibbonPage1" + Me.RibbonPage1.Text = "RibbonPage1" ' 'RibbonPageGroup3 ' @@ -129,6 +143,22 @@ Partial Class frmSQLEditor Me.RibbonPageGroup3.Name = "RibbonPageGroup3" Me.RibbonPageGroup3.Text = "Start" ' + 'RibbonPageGroup4 + ' + Me.RibbonPageGroup4.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far + Me.RibbonPageGroup4.ImageOptions.SvgImage = Global.DigitalData.Controls.SQLEditor.My.Resources.Resources.actions_database2 + Me.RibbonPageGroup4.ItemLinks.Add(Me.RibbonGalleryBarItem2) + Me.RibbonPageGroup4.Name = "RibbonPageGroup4" + Me.RibbonPageGroup4.Text = "Verbindungen" + ' + 'RibbonPageGroup1 + ' + Me.RibbonPageGroup1.ItemLinks.Add(Me.RibbonGalleryBarItem1) + Me.RibbonPageGroup1.ItemLinks.Add(Me.chkClearPlaceholders) + Me.RibbonPageGroup1.ItemLinks.Add(Me.btnClearPlaceholders) + Me.RibbonPageGroup1.Name = "RibbonPageGroup1" + Me.RibbonPageGroup1.Text = "Platzhalter" + ' 'RibbonStatusBar1 ' Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 666) @@ -163,28 +193,28 @@ Partial Class frmSQLEditor ' 'SplitContainerControl1.Panel2 ' - Me.SplitContainerControl1.Panel2.Controls.Add(Me.GridControl1) + Me.SplitContainerControl1.Panel2.Controls.Add(Me.GridPlaceholders) Me.SplitContainerControl1.Panel2.Text = "Panel2" Me.SplitContainerControl1.Size = New System.Drawing.Size(1056, 508) Me.SplitContainerControl1.SplitterPosition = 737 Me.SplitContainerControl1.TabIndex = 4 ' - 'GridControl1 + 'GridPlaceholders ' - Me.GridControl1.Dock = System.Windows.Forms.DockStyle.Fill - Me.GridControl1.Location = New System.Drawing.Point(0, 0) - Me.GridControl1.MainView = Me.GridView1 - Me.GridControl1.MenuManager = Me.RibbonControl1 - Me.GridControl1.Name = "GridControl1" - Me.GridControl1.Size = New System.Drawing.Size(309, 508) - Me.GridControl1.TabIndex = 0 - Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView1}) + Me.GridPlaceholders.Dock = System.Windows.Forms.DockStyle.Fill + Me.GridPlaceholders.Location = New System.Drawing.Point(0, 0) + Me.GridPlaceholders.MainView = Me.ViewPlaceholders + Me.GridPlaceholders.MenuManager = Me.RibbonControl1 + Me.GridPlaceholders.Name = "GridPlaceholders" + Me.GridPlaceholders.Size = New System.Drawing.Size(309, 508) + Me.GridPlaceholders.TabIndex = 0 + Me.GridPlaceholders.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.ViewPlaceholders}) ' - 'GridView1 + 'ViewPlaceholders ' - Me.GridView1.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colPattern, Me.colValue}) - Me.GridView1.GridControl = Me.GridControl1 - Me.GridView1.Name = "GridView1" + Me.ViewPlaceholders.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colPattern, Me.colValue}) + Me.ViewPlaceholders.GridControl = Me.GridPlaceholders + Me.ViewPlaceholders.Name = "ViewPlaceholders" ' 'colPattern ' @@ -224,8 +254,8 @@ Partial Class frmSQLEditor Me.SplitContainerControl1.Panel2.ResumeLayout(False) CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).EndInit() Me.SplitContainerControl1.ResumeLayout(False) - CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.GridView1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.GridPlaceholders, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.ViewPlaceholders, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) Me.PerformLayout() @@ -240,13 +270,16 @@ Partial Class frmSQLEditor Friend WithEvents SvgImageCollection1 As DevExpress.Utils.SvgImageCollection Friend WithEvents RichEditControl1 As DevExpress.XtraRichEdit.RichEditControl Friend WithEvents SplitContainerControl1 As DevExpress.XtraEditors.SplitContainerControl - Friend WithEvents GridControl1 As DevExpress.XtraGrid.GridControl - Friend WithEvents GridView1 As DevExpress.XtraGrid.Views.Grid.GridView + Friend WithEvents GridPlaceholders As DevExpress.XtraGrid.GridControl + Friend WithEvents ViewPlaceholders As DevExpress.XtraGrid.Views.Grid.GridView Friend WithEvents btnEditConnections As DevExpress.XtraBars.BarButtonItem - Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents btnSave As DevExpress.XtraBars.BarButtonItem Friend WithEvents btnExecuteSQL As DevExpress.XtraBars.BarButtonItem Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents colPattern As DevExpress.XtraGrid.Columns.GridColumn Friend WithEvents colValue As DevExpress.XtraGrid.Columns.GridColumn + Friend WithEvents RibbonGalleryBarItem2 As DevExpress.XtraBars.RibbonGalleryBarItem + Friend WithEvents RibbonPageGroup4 As DevExpress.XtraBars.Ribbon.RibbonPageGroup + Friend WithEvents chkClearPlaceholders As DevExpress.XtraBars.BarCheckItem + Friend WithEvents btnClearPlaceholders As DevExpress.XtraBars.BarButtonItem End Class diff --git a/Controls.SQLEditor/frmSQLEditor.vb b/Controls.SQLEditor/frmSQLEditor.vb index 92f579c7..a23ed4d2 100644 --- a/Controls.SQLEditor/frmSQLEditor.vb +++ b/Controls.SQLEditor/frmSQLEditor.vb @@ -7,16 +7,20 @@ Imports DigitalData.Modules.Patterns Public Class frmSQLEditor - Private Patterns As ClassPatterns - Private LogConfig As LogConfig - Private Database As MSSQLServer + Private ReadOnly Patterns As ClassPatterns + Private ReadOnly LogConfig As LogConfig + Private ReadOnly Database As MSSQLServer + Private ReadOnly Placeholders As Placeholders + + Private ClearPlaceholdersAfterSuccessfulExecute As Boolean = False + Private FormLoading As Boolean = False Public Enum PlaceholderCollection Globix Zooflow End Enum - Public Sub SetPlaceholders() + Public Sub SetPlaceholders(pCollection As PlaceholderCollection) End Sub @@ -27,71 +31,94 @@ Public Class frmSQLEditor ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. LogConfig = pLogConfig Database = pDatabase + Patterns = New ClassPatterns(LogConfig) + Placeholders = New Placeholders() End Sub Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load - Patterns = New ClassPatterns(LogConfig) + FormLoading = True + Try + Dim oConnectionGroups = LoadConnections() + RibbonGalleryBarItem2.Gallery.Groups.AddRange(oConnectionGroups.ToArray) - Dim oGroup1 = New GalleryItemGroup() With {.Caption = "Gruppe 1"} - Dim oGroup2 = New GalleryItemGroup() With {.Caption = "Gruppe 2"} - Dim oGroup3 = New GalleryItemGroup() With {.Caption = "Gruppe 3"} + Dim oPlaceholderGroups = LoadPlaceholders() + RibbonGalleryBarItem1.Gallery.Groups.AddRange(oPlaceholderGroups.ToArray) - Dim oItems As New List(Of GalleryItem)() From { - GetGalleryItem(New Placeholder("StringValue1", "Index", Placeholder.PlaceholderType.FileFlow, "StringValue1")), - GetGalleryItem(New Placeholder("StringValue2", "Index", Placeholder.PlaceholderType.FileFlow, "StringValue2")), - GetGalleryItem(New Placeholder("StringValue3", "Index", Placeholder.PlaceholderType.FileFlow, "StringValue3")), - GetGalleryItem(New Placeholder("StringValue4", "Index", Placeholder.PlaceholderType.FileFlow, "StringValue4")), - GetGalleryItem(New Placeholder("StringValue5", "Index", Placeholder.PlaceholderType.FileFlow, "StringValue5")) - } + ConfigureRichEditControl() - oGroup1.Items.AddRange(oItems.ToArray) - oGroup2.Items.AddRange(oItems.ToArray) - oGroup3.Items.AddRange(oItems.ToArray) + chkClearPlaceholders.Checked = ClearPlaceholdersAfterSuccessfulExecute + Catch ex As Exception + Finally + FormLoading = False + End Try - RibbonGalleryBarItem1.Gallery.Groups.AddRange(New List(Of GalleryItemGroup)() From {oGroup1, oGroup2, oGroup3}.ToArray) + End Sub + Private Sub RibbonGalleryBarItem1_GalleryItemClick(sender As Object, e As GalleryItemClickEventArgs) Handles RibbonGalleryBarItem1.GalleryItemClick + Dim oPlaceholder As Placeholder = e.Item.Tag + Dim pPosition = RichEditControl1.Document.CaretPosition + RichEditControl1.Document.InsertSingleLineText(pPosition, Patterns.WrapPatternValue(oPlaceholder.Module, oPlaceholder.Name)) + End Sub + + Private Function LoadPlaceholders() As List(Of GalleryItemGroup) + Dim oInternalPlaceholders = Placeholders.GetInternalGroup() + Dim oUserPlaceholder = Placeholders.GetUserGroup() + + Return New List(Of GalleryItemGroup)() From { + oInternalPlaceholders, + oUserPlaceholder + } + End Function + + Private Function LoadConnections() As List(Of GalleryItemGroup) + Try + Dim oSql = "SELECT GUID, Bezeichnung FROM [DD_ECM].[dbo].[TBDD_CONNECTION] WHERE AKTIV = 1" + Dim oTable = Database.GetDatatable(oSql) + Dim oConnections = New List(Of Connection) + + For Each oRow As DataRow In oTable.Rows + oConnections.Add(New Connection() With { + .Id = oRow.Item("GUID"), + .Name = oRow.Item("Bezeichnung")}) + Next + + Dim oGroup1 = New GalleryItemGroup() With {.Caption = "Verbindungen"} + Dim oItems As New List(Of GalleryItem) + For Each oConnection In oConnections + oItems.Add(GetGalleryItem(oConnection)) + Next + oGroup1.Items.AddRange(oItems.ToArray) + Dim oConnectionGroups = New List(Of GalleryItemGroup)() From {oGroup1} + + Return oConnectionGroups + Catch ex As Exception + Return Nothing + End Try + End Function + + Private Sub ConfigureRichEditControl() RichEditControl1.Options.Search.RegExResultMaxGuaranteedLength = 500 RichEditControl1.ReplaceService(Of ISyntaxHighlightService)(New SQLSyntaxHighlightService(RichEditControl1.Document)) - RichEditControl1.ActiveViewType = DevExpress.XtraRichEdit.RichEditViewType.Draft + RichEditControl1.ActiveViewType = DevExpress.XtraRichEdit.RichEditViewType.Simple RichEditControl1.Document.Sections(0).Page.Width = DevExpress.Office.Utils.Units.InchesToDocumentsF(80.0F) RichEditControl1.Document.DefaultCharacterProperties.FontName = "Courier New" RichEditControl1.Document.DefaultCharacterProperties.FontSize = 12 End Sub - Private Sub RibbonGalleryBarItem1_GalleryItemClick(sender As Object, e As GalleryItemClickEventArgs) Handles RibbonGalleryBarItem1.GalleryItemClick - Dim oPlaceholder As Placeholder = e.Item.Tag - MsgBox(oPlaceholder.Name) - Dim pPosition = RichEditControl1.Document.CaretPosition - RichEditControl1.Document.InsertSingleLineText(pPosition, oPlaceholder.Value) + Private Sub ClearPlaceholders() + GridPlaceholders.DataSource = New List(Of Placeholder) End Sub - Private Class Placeholder - Public Type As PlaceholderType - Public Property Name As String - Public Property Value As String - Public Property Pattern As Pattern - - Public Category As String - Public Description As String - - Public Enum PlaceholderType - FileFlow - End Enum - - Public Sub New(pName As String, pDescription As String, pType As PlaceholderType, pCategory As String) - Name = pName - Description = pDescription - Type = pType - Category = pCategory - End Sub - End Class - - Private Function GetGalleryItem(pPlaceholder As Placeholder) As GalleryItem - Return New GalleryItem(Nothing, pPlaceholder.Name, pPlaceholder.Description) With { - .Tag = pPlaceholder + Private Function GetGalleryItem(pConnection As Connection) As GalleryItem + Dim oItem = New GalleryItem(Nothing, pConnection.Name, Nothing) With { + .Tag = pConnection } + + oItem.ImageOptions.SvgImage = My.Resources.actions_database + + Return oItem End Function Private Property LastPatterns As New List(Of Pattern) @@ -108,9 +135,9 @@ Public Class frmSQLEditor Exit Sub End If - GridControl1.DataSource = oPatterns.Select(Function(pattern) - Return New Placeholder(pattern.Value, pattern.Type, Placeholder.PlaceholderType.FileFlow, "") With {.Pattern = pattern} - End Function).ToList() + GridPlaceholders.DataSource = oPatterns.Select(Function(pattern) + Return New Placeholder(pattern.Value, pattern.Value, pattern.Type, pattern.Value) With {.Pattern = pattern} + End Function).ToList() LastPatterns = oPatterns @@ -120,11 +147,46 @@ Public Class frmSQLEditor Private Async Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnExecuteSQL.ItemClick Try Dim oSql = RichEditControl1.Document.Text + + Dim oPlaceholders As List(Of Placeholder) = GridPlaceholders.DataSource + + If oPlaceholders IsNot Nothing Then + For Each oPlaceholder In oPlaceholders + Dim oWrapped = Patterns.WrapPatternValue(oPlaceholder.Module, oPlaceholder.Name) + + If oPlaceholder.Value Is Nothing Then + Throw New ApplicationException($"Der Platzhalter '{oWrapped}' wurde nicht ausgefüllt!") + End If + + + oSql = oSql.Replace(oWrapped, oPlaceholder.Value) + Next + End If + Dim oDatatable = Await Database.GetDatatableAsync(oSql) Dim oForm As New frmSQLResult(oDatatable) oForm.Show() + + Catch ex As ApplicationException + MsgBox(ex.Message, MsgBoxStyle.Exclamation, Text) + Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical, Text) End Try End Sub + + Private Class Connection + Public Property Id As Integer + Public Property Name As String + End Class + + Private Sub BarCheckItem1_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles chkClearPlaceholders.CheckedChanged + If FormLoading = False Then + ClearPlaceholdersAfterSuccessfulExecute = chkClearPlaceholders.Checked + End If + End Sub + + Private Sub btnClearPlaceholders_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnClearPlaceholders.ItemClick + ClearPlaceholders() + End Sub End Class