From 471e29aa299322b50aa46f7ea320abc8390e7f8e Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 18 Nov 2020 16:24:34 +0100 Subject: [PATCH 1/7] ZooFlow: Support opening a new search in an existing window, clean up SearchStart --- GUIs.Common/Base/BaseResult.vb | 4 + GUIs.Common/Common.vbproj | 8 +- .../DataResultList/DataResultParams.vb | 3 +- .../DataResultList/frmDataResultList.vb | 4 + .../DocumentResultParams.vb | 3 +- .../frmDocumentResultList.vb | 155 ++-- GUIs.Common/IResultForm.vb | 1 + GUIs.ZooFlow/frmSearchStart.Designer.vb | 122 ++-- GUIs.ZooFlow/frmSearchStart.resx | 36 +- GUIs.ZooFlow/frmSearchStart.vb | 664 +++++------------- 10 files changed, 392 insertions(+), 608 deletions(-) create mode 100644 GUIs.Common/Base/BaseResult.vb diff --git a/GUIs.Common/Base/BaseResult.vb b/GUIs.Common/Base/BaseResult.vb new file mode 100644 index 00000000..02469439 --- /dev/null +++ b/GUIs.Common/Base/BaseResult.vb @@ -0,0 +1,4 @@ +Public Class BaseResult + Property Title As String + Property Datatable As DataTable +End Class diff --git a/GUIs.Common/Common.vbproj b/GUIs.Common/Common.vbproj index a92abdc9..0d9f0d9b 100644 --- a/GUIs.Common/Common.vbproj +++ b/GUIs.Common/Common.vbproj @@ -54,9 +54,6 @@ - - ..\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll - D:\ProgramFiles\GdPicture.NET 14\Redist\GdPicture.NET (.NET Framework 4.5)\GdPicture.NET.14.dll @@ -92,6 +89,7 @@ + Form @@ -167,6 +165,10 @@ + + {0958cddf-4a16-41f6-8837-8335f71d599c} + DocumentViewer + {3DCD6D1A-C830-4241-B7E4-27430E7EA483} LookupControl diff --git a/GUIs.Common/DataResultList/DataResultParams.vb b/GUIs.Common/DataResultList/DataResultParams.vb index e80a9762..737519fb 100644 --- a/GUIs.Common/DataResultList/DataResultParams.vb +++ b/GUIs.Common/DataResultList/DataResultParams.vb @@ -7,6 +7,5 @@ End Class Public Class DataResult - Public Title As String - Public Datatable As DataTable + Inherits BaseResult End Class diff --git a/GUIs.Common/DataResultList/frmDataResultList.vb b/GUIs.Common/DataResultList/frmDataResultList.vb index 7ccbf02c..cb158cbe 100644 --- a/GUIs.Common/DataResultList/frmDataResultList.vb +++ b/GUIs.Common/DataResultList/frmDataResultList.vb @@ -283,4 +283,8 @@ Public Class frmDataResultList _Logger.Error(ex) End Try End Sub + + Public Function RefreshResults(pResults As IEnumerable(Of BaseResult)) As Boolean Implements IResultForm.RefreshResults + 'TODO: Implement + End Function End Class \ No newline at end of file diff --git a/GUIs.Common/DocumentResultList/DocumentResultParams.vb b/GUIs.Common/DocumentResultList/DocumentResultParams.vb index 9a3d04a2..ea57ccb0 100644 --- a/GUIs.Common/DocumentResultList/DocumentResultParams.vb +++ b/GUIs.Common/DocumentResultList/DocumentResultParams.vb @@ -8,6 +8,5 @@ End Class Public Class DocumentResult - Public Title As String - Public Datatable As DataTable + Inherits BaseResult End Class diff --git a/GUIs.Common/DocumentResultList/frmDocumentResultList.vb b/GUIs.Common/DocumentResultList/frmDocumentResultList.vb index 62b155b6..dda7bc31 100644 --- a/GUIs.Common/DocumentResultList/frmDocumentResultList.vb +++ b/GUIs.Common/DocumentResultList/frmDocumentResultList.vb @@ -90,86 +90,109 @@ Public Class frmDocumentResultList AddHandler GridView2.FocusedRowChanged, AddressOf GridView_FocusedRowChanged AddHandler GridView3.FocusedRowChanged, AddressOf GridView_FocusedRowChanged - Dim oTotalResults = 0 + UpdateTotalResults(_ResultLists) + UpdateGridData(_ResultLists) + Catch ex As Exception + _Logger.Error(ex) + MessageBox.Show("Error while loading results:" & vbNewLine & vbNewLine & ex.Message, Text) + Finally + _IsLoading = False + End Try + End Sub - For Each oList In _ResultLists - oTotalResults += oList.Datatable.Rows.Count - Next + Public Function RefreshResults(pResults As IEnumerable(Of BaseResult)) As Boolean Implements IResultForm.RefreshResults + _IsLoading = True + Try + UpdateTotalResults(_ResultLists) + UpdateGridData(_ResultLists) - labelResultCount.Caption = String.Format(labelResultCount.Caption, oTotalResults) - - ' Load Grids - For index = 0 To _ResultLists.Count - 1 - Select Case index - Case 0 - Dim oResult As DocumentResult = _ResultLists.Item(0) - CreateDocumentGrid(GridView1, oResult.Datatable) - UpdateGridHeader(index, oResult.Datatable.Rows.Count) - Case 1 - Dim oResult As DocumentResult = _ResultLists.Item(1) - CreateDocumentGrid(GridView2, oResult.Datatable) - UpdateGridHeader(index, oResult.Datatable.Rows.Count) - - Case 2 - Dim oResult As DocumentResult = _ResultLists.Item(2) - CreateDocumentGrid(GridView3, oResult.Datatable) - UpdateGridHeader(index, oResult.Datatable.Rows.Count) - - Case Else - MessageBox.Show(Constants.MESSAGE_TOO_MANY_SEARCHES, Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation) - Exit For - End Select - Next + Return True + Catch ex As Exception + _Logger.Error(ex) + MessageBox.Show("Error while loading results:" & vbNewLine & vbNewLine & ex.Message, Text) + Return False + Finally + _IsLoading = False + End Try + End Function - ' Hide Grids depending on Result count - Select Case _ResultLists.Count + Private Sub UpdateGridData(pResultList As List(Of DocumentResult)) + ' Load Grids + For index = 0 To _ResultLists.Count - 1 + Select Case index Case 0 + Dim oResult As DocumentResult = _ResultLists.Item(0) + CreateDocumentGrid(GridView1, oResult.Datatable) + UpdateGridHeader(_ResultLists, index, oResult.Datatable.Rows.Count) + Case 1 + Dim oResult As DocumentResult = _ResultLists.Item(1) + CreateDocumentGrid(GridView2, oResult.Datatable) + UpdateGridHeader(_ResultLists, index, oResult.Datatable.Rows.Count) - SplitContainerControl1.SetPanelCollapsed(True) - SplitContainerControl2.SetPanelCollapsed(True) + Case 2 + Dim oResult As DocumentResult = _ResultLists.Item(2) + CreateDocumentGrid(GridView3, oResult.Datatable) + UpdateGridHeader(_ResultLists, index, oResult.Datatable.Rows.Count) - SwitchMainContainerHorizontal.Enabled = False - SwitchDetailContainerHorizontal.Enabled = False + Case Else + MessageBox.Show(Constants.MESSAGE_TOO_MANY_SEARCHES, Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation) + Exit For + End Select + Next - MessageBox.Show(Constants.MESSAGE_ERROR_IN_SEARCHES, Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation) - Case 1 - SplitContainerControl1.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Panel1 - SplitContainerControl2.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Panel1 + ' Hide Grids depending on Result count + Select Case _ResultLists.Count + Case 0 - SplitContainerControl1.SetPanelCollapsed(True) - SplitContainerControl2.SetPanelCollapsed(True) + SplitContainerControl1.SetPanelCollapsed(True) + SplitContainerControl2.SetPanelCollapsed(True) - SwitchMainContainerHorizontal.Enabled = False - SwitchDetailContainerHorizontal.Enabled = False - Case 2 - SplitContainerControl1.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Both - SplitContainerControl2.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Panel1 + SwitchMainContainerHorizontal.Enabled = False + SwitchDetailContainerHorizontal.Enabled = False - SplitContainerControl2.SetPanelCollapsed(True) + MessageBox.Show(Constants.MESSAGE_ERROR_IN_SEARCHES, Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation) + Case 1 + SplitContainerControl1.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Panel1 + SplitContainerControl2.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Panel1 - SwitchDetailContainerHorizontal.Enabled = False - End Select - Catch ex As Exception - _Logger.Error(ex) - MessageBox.Show("Error while loading results:" & vbNewLine & vbNewLine & ex.Message, Text) - Finally - _IsLoading = False - End Try + SplitContainerControl1.SetPanelCollapsed(True) + SplitContainerControl2.SetPanelCollapsed(True) + + SwitchMainContainerHorizontal.Enabled = False + SwitchDetailContainerHorizontal.Enabled = False + Case 2 + SplitContainerControl1.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Both + SplitContainerControl2.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Panel1 + + SplitContainerControl2.SetPanelCollapsed(True) + + SwitchDetailContainerHorizontal.Enabled = False + End Select + End Sub + + Private Sub UpdateTotalResults(pResultList As List(Of DocumentResult)) + Dim oTotalResults = 0 + + For Each oList In pResultList + oTotalResults += oList.Datatable.Rows.Count + Next + + labelResultCount.Caption = String.Format(labelResultCount.Caption, oTotalResults) End Sub - Private Sub UpdateGridHeader(Index As Integer, Count As Integer) - Select Case Index + Private Sub UpdateGridHeader(pResultList As List(Of DocumentResult), pIndex As Integer, pCount As Integer) + Select Case pIndex Case 0 - Dim oResult = _ResultLists.Item(0) - GridBand1.Caption = $"{oResult.Title} ({Count})" + Dim oResult = pResultList.Item(0) + GridBand1.Caption = $"{oResult.Title} ({pCount})" Case 1 - Dim oResult = _ResultLists.Item(1) - GridBand2.Caption = $"{oResult.Title} ({Count})" + Dim oResult = pResultList.Item(1) + GridBand2.Caption = $"{oResult.Title} ({pCount})" Case 2 - Dim oResult = _ResultLists.Item(2) - GridBand3.Caption = $"{oResult.Title} ({Count})" + Dim oResult = pResultList.Item(2) + GridBand3.Caption = $"{oResult.Title} ({pCount})" End Select End Sub @@ -533,17 +556,17 @@ Public Class frmDocumentResultList Private Sub GridView1_ColumnFilterChanged(sender As GridView, e As EventArgs) Handles GridView1.ColumnFilterChanged Dim oRowCount = sender.RowCount - UpdateGridHeader(0, oRowCount) + UpdateGridHeader(_ResultLists, 0, oRowCount) End Sub Private Sub GridView2_ColumnFilterChanged(sender As GridView, e As EventArgs) Handles GridView2.ColumnFilterChanged Dim oRowCount = sender.RowCount - UpdateGridHeader(1, oRowCount) + UpdateGridHeader(_ResultLists, 1, oRowCount) End Sub Private Sub GridView3_ColumnFilterChanged(sender As GridView, e As EventArgs) Handles GridView3.ColumnFilterChanged Dim oRowCount = sender.RowCount - UpdateGridHeader(2, oRowCount) + UpdateGridHeader(_ResultLists, 2, oRowCount) End Sub Private Sub BarButtonItem4_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem4.ItemClick @@ -584,4 +607,6 @@ Public Class frmDocumentResultList Next End If End Sub + + End Class \ No newline at end of file diff --git a/GUIs.Common/IResultForm.vb b/GUIs.Common/IResultForm.vb index 16a73b45..5ca3172b 100644 --- a/GUIs.Common/IResultForm.vb +++ b/GUIs.Common/IResultForm.vb @@ -1,3 +1,4 @@ Public Interface IResultForm Property ShouldReturnToPreviousForm As Boolean + Function RefreshResults(pResults As IEnumerable(Of BaseResult)) As Boolean End Interface diff --git a/GUIs.ZooFlow/frmSearchStart.Designer.vb b/GUIs.ZooFlow/frmSearchStart.Designer.vb index d5a5c3dd..0fe64577 100644 --- a/GUIs.ZooFlow/frmSearchStart.Designer.vb +++ b/GUIs.ZooFlow/frmSearchStart.Designer.vb @@ -26,17 +26,17 @@ Partial Class frmSearchStart Dim SplashScreenManager As DevExpress.XtraSplashScreen.SplashScreenManager = New DevExpress.XtraSplashScreen.SplashScreenManager(Me, Nothing, true, true) Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmSearchStart)) Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl() - Me.BarButtonItemNewSearch = New DevExpress.XtraBars.BarButtonItem() - Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem() + Me.BarButtonNewSearch = New DevExpress.XtraBars.BarButtonItem() + Me.BarButtonSaveSearch = New DevExpress.XtraBars.BarButtonItem() Me.BarHeaderItem1 = New DevExpress.XtraBars.BarHeaderItem() Me.BarEditItem1 = New DevExpress.XtraBars.BarEditItem() Me.RepositoryItemRadioGroup1 = New DevExpress.XtraEditors.Repository.RepositoryItemRadioGroup() - Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem() + Me.BarButtonClearSearch = New DevExpress.XtraBars.BarButtonItem() Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem() Me.BarEditItem2 = New DevExpress.XtraBars.BarEditItem() Me.RepositoryItemComboBox1 = New DevExpress.XtraEditors.Repository.RepositoryItemComboBox() Me.BarStaticItemInfo = New DevExpress.XtraBars.BarStaticItem() - Me.BarButtonItem4 = New DevExpress.XtraBars.BarButtonItem() + Me.BarButtonStartSearch = New DevExpress.XtraBars.BarButtonItem() Me.BarStaticItem1 = New DevExpress.XtraBars.BarStaticItem() Me.txtFilterFrom = New DevExpress.XtraBars.BarEditItem() Me.RepositoryItemDateEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemDateEdit() @@ -44,8 +44,10 @@ Partial Class frmSearchStart Me.RepositoryItemDateEdit2 = New DevExpress.XtraEditors.Repository.RepositoryItemDateEdit() Me.cmbFilterTimeframe = New DevExpress.XtraBars.BarEditItem() Me.RepositoryItemComboBox2 = New DevExpress.XtraEditors.Repository.RepositoryItemComboBox() + Me.BarCheckboxOpenSearchInSameWindow = New DevExpress.XtraBars.BarCheckItem() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() + Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroupProfiles = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroupFilter = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RepositoryItemTextEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit() @@ -97,29 +99,29 @@ Partial Class frmSearchStart ' Me.RibbonControl1.AutoSizeItems = True Me.RibbonControl1.ExpandCollapseItem.Id = 0 - Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItemNewSearch, Me.BarButtonItem2, Me.BarHeaderItem1, Me.BarEditItem1, Me.BarButtonItem1, Me.BarButtonItem3, Me.BarEditItem2, Me.BarStaticItemInfo, Me.BarButtonItem4, Me.BarStaticItem1, Me.txtFilterFrom, Me.txtFilterTo, Me.cmbFilterTimeframe}) + Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonNewSearch, Me.BarButtonSaveSearch, Me.BarHeaderItem1, Me.BarEditItem1, Me.BarButtonClearSearch, Me.BarButtonItem3, Me.BarEditItem2, Me.BarStaticItemInfo, Me.BarButtonStartSearch, Me.BarStaticItem1, Me.txtFilterFrom, Me.txtFilterTo, Me.cmbFilterTimeframe, Me.BarCheckboxOpenSearchInSameWindow}) Me.RibbonControl1.Location = New System.Drawing.Point(0, 0) - Me.RibbonControl1.MaxItemId = 20 + Me.RibbonControl1.MaxItemId = 22 Me.RibbonControl1.Name = "RibbonControl1" Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1}) Me.RibbonControl1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemRadioGroup1, Me.RepositoryItemComboBox1, Me.RepositoryItemTextEdit1, Me.RepositoryItemDateEdit1, Me.RepositoryItemDateEdit2, Me.RepositoryItemComboBox2, Me.RepositoryItemTimeSpanEdit1}) Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False] - Me.RibbonControl1.Size = New System.Drawing.Size(1070, 159) + Me.RibbonControl1.Size = New System.Drawing.Size(1070, 158) Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1 ' - 'BarButtonItemNewSearch + 'BarButtonNewSearch ' - Me.BarButtonItemNewSearch.Caption = "Neue Suche" - Me.BarButtonItemNewSearch.Id = 1 - Me.BarButtonItemNewSearch.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItemNewSearch.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.BarButtonItemNewSearch.Name = "BarButtonItemNewSearch" + Me.BarButtonNewSearch.Caption = "Neue Suche" + Me.BarButtonNewSearch.Id = 1 + Me.BarButtonNewSearch.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonNewSearch.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarButtonNewSearch.Name = "BarButtonNewSearch" ' - 'BarButtonItem2 + 'BarButtonSaveSearch ' - Me.BarButtonItem2.Caption = "Suchprofil speichern" - Me.BarButtonItem2.Id = 2 - Me.BarButtonItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.BarButtonItem2.Name = "BarButtonItem2" + Me.BarButtonSaveSearch.Caption = "Suchprofil speichern" + Me.BarButtonSaveSearch.Id = 2 + Me.BarButtonSaveSearch.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonSaveSearch.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarButtonSaveSearch.Name = "BarButtonSaveSearch" ' 'BarHeaderItem1 ' @@ -138,12 +140,12 @@ Partial Class frmSearchStart ' Me.RepositoryItemRadioGroup1.Name = "RepositoryItemRadioGroup1" ' - 'BarButtonItem1 + 'BarButtonClearSearch ' - Me.BarButtonItem1.Caption = "Suche leeren" - Me.BarButtonItem1.Id = 5 - Me.BarButtonItem1.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.BarButtonItem1.Name = "BarButtonItem1" + Me.BarButtonClearSearch.Caption = "Suche leeren" + Me.BarButtonClearSearch.Id = 5 + Me.BarButtonClearSearch.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonClearSearch.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarButtonClearSearch.Name = "BarButtonClearSearch" ' 'BarButtonItem3 ' @@ -169,12 +171,12 @@ Partial Class frmSearchStart Me.BarStaticItemInfo.Id = 8 Me.BarStaticItemInfo.Name = "BarStaticItemInfo" ' - 'BarButtonItem4 + 'BarButtonStartSearch ' - Me.BarButtonItem4.Caption = "Suche starten (F2)" - Me.BarButtonItem4.Id = 9 - Me.BarButtonItem4.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem4.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) - Me.BarButtonItem4.Name = "BarButtonItem4" + Me.BarButtonStartSearch.Caption = "Suche starten (F2)" + Me.BarButtonStartSearch.Id = 9 + Me.BarButtonStartSearch.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonStartSearch.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarButtonStartSearch.Name = "BarButtonStartSearch" ' 'BarStaticItem1 ' @@ -230,21 +232,34 @@ Partial Class frmSearchStart Me.RepositoryItemComboBox2.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}) Me.RepositoryItemComboBox2.Name = "RepositoryItemComboBox2" ' + 'BarCheckboxOpenSearchInSameWindow + ' + Me.BarCheckboxOpenSearchInSameWindow.Caption = "Suche in gleichem Fenster öffnen" + Me.BarCheckboxOpenSearchInSameWindow.Id = 21 + Me.BarCheckboxOpenSearchInSameWindow.ImageOptions.SvgImage = CType(resources.GetObject("BarCheckItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) + Me.BarCheckboxOpenSearchInSameWindow.Name = "BarCheckboxOpenSearchInSameWindow" + ' 'RibbonPage1 ' - Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroupProfiles, Me.RibbonPageGroupFilter}) + Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroupProfiles, Me.RibbonPageGroupFilter}) Me.RibbonPage1.Name = "RibbonPage1" Me.RibbonPage1.Text = "Start" ' 'RibbonPageGroup1 ' - Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem4) - Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem1) - Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItemNewSearch) - Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem2) + Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonStartSearch) + Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonClearSearch) + Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonNewSearch) + Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonSaveSearch) Me.RibbonPageGroup1.Name = "RibbonPageGroup1" Me.RibbonPageGroup1.Text = "Suchfunktionen" ' + 'RibbonPageGroup2 + ' + Me.RibbonPageGroup2.ItemLinks.Add(Me.BarCheckboxOpenSearchInSameWindow) + Me.RibbonPageGroup2.Name = "RibbonPageGroup2" + Me.RibbonPageGroup2.Text = "Sucheinstellungen" + ' 'RibbonPageGroupProfiles ' Me.RibbonPageGroupProfiles.ItemLinks.Add(Me.BarStaticItem1) @@ -274,10 +289,10 @@ Partial Class frmSearchStart 'RibbonStatusBar1 ' Me.RibbonStatusBar1.ItemLinks.Add(Me.BarStaticItemInfo) - Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 579) + Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 577) Me.RibbonStatusBar1.Name = "RibbonStatusBar1" Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1 - Me.RibbonStatusBar1.Size = New System.Drawing.Size(1070, 22) + Me.RibbonStatusBar1.Size = New System.Drawing.Size(1070, 24) ' 'pnlProfileChoose ' @@ -286,7 +301,7 @@ Partial Class frmSearchStart Me.pnlProfileChoose.Controls.Add(Me.Label1) Me.pnlProfileChoose.Dock = System.Windows.Forms.DockStyle.Top Me.pnlProfileChoose.Font = New System.Drawing.Font("Tahoma", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.pnlProfileChoose.Location = New System.Drawing.Point(0, 159) + Me.pnlProfileChoose.Location = New System.Drawing.Point(0, 158) Me.pnlProfileChoose.Margin = New System.Windows.Forms.Padding(2, 3, 2, 3) Me.pnlProfileChoose.Name = "pnlProfileChoose" Me.pnlProfileChoose.Size = New System.Drawing.Size(1070, 57) @@ -322,68 +337,68 @@ Partial Class frmSearchStart Me.XtraTabControl1.MultiLine = DevExpress.Utils.DefaultBoolean.[False] Me.XtraTabControl1.Name = "XtraTabControl1" Me.XtraTabControl1.SelectedTabPage = Me.XtraTabPage1 - Me.XtraTabControl1.Size = New System.Drawing.Size(1070, 363) + Me.XtraTabControl1.Size = New System.Drawing.Size(1070, 362) Me.XtraTabControl1.TabIndex = 12 Me.XtraTabControl1.TabPages.AddRange(New DevExpress.XtraTab.XtraTabPage() {Me.XtraTabPage1, Me.XtraTabPage2, Me.XtraTabPage3, Me.XtraTabPage4, Me.XtraTabPage5, Me.XtraTabPage6, Me.XtraTabPage7, Me.XtraTabPage8, Me.XtraTabPage9, Me.XtraTabPage10}) ' 'XtraTabPage1 ' Me.XtraTabPage1.Name = "XtraTabPage1" - Me.XtraTabPage1.Size = New System.Drawing.Size(1068, 340) + Me.XtraTabPage1.Size = New System.Drawing.Size(1068, 337) Me.XtraTabPage1.Text = "Search#1" ' 'XtraTabPage2 ' Me.XtraTabPage2.Name = "XtraTabPage2" - Me.XtraTabPage2.Size = New System.Drawing.Size(1068, 340) + Me.XtraTabPage2.Size = New System.Drawing.Size(1068, 337) Me.XtraTabPage2.Text = "Search#2" ' 'XtraTabPage3 ' Me.XtraTabPage3.Name = "XtraTabPage3" - Me.XtraTabPage3.Size = New System.Drawing.Size(1068, 340) + Me.XtraTabPage3.Size = New System.Drawing.Size(1068, 337) Me.XtraTabPage3.Text = "Search#3" ' 'XtraTabPage4 ' Me.XtraTabPage4.Name = "XtraTabPage4" - Me.XtraTabPage4.Size = New System.Drawing.Size(1068, 340) + Me.XtraTabPage4.Size = New System.Drawing.Size(1068, 337) Me.XtraTabPage4.Text = "Search#4" ' 'XtraTabPage5 ' Me.XtraTabPage5.Name = "XtraTabPage5" - Me.XtraTabPage5.Size = New System.Drawing.Size(1068, 340) + Me.XtraTabPage5.Size = New System.Drawing.Size(1068, 337) Me.XtraTabPage5.Text = "Search#5" ' 'XtraTabPage6 ' Me.XtraTabPage6.Name = "XtraTabPage6" - Me.XtraTabPage6.Size = New System.Drawing.Size(1068, 340) + Me.XtraTabPage6.Size = New System.Drawing.Size(1068, 337) Me.XtraTabPage6.Text = "Search#6" ' 'XtraTabPage7 ' Me.XtraTabPage7.Name = "XtraTabPage7" - Me.XtraTabPage7.Size = New System.Drawing.Size(1068, 340) + Me.XtraTabPage7.Size = New System.Drawing.Size(1068, 337) Me.XtraTabPage7.Text = "Search#7" ' 'XtraTabPage8 ' Me.XtraTabPage8.Name = "XtraTabPage8" - Me.XtraTabPage8.Size = New System.Drawing.Size(1068, 340) + Me.XtraTabPage8.Size = New System.Drawing.Size(1068, 337) Me.XtraTabPage8.Text = "Search#8" ' 'XtraTabPage9 ' Me.XtraTabPage9.Name = "XtraTabPage9" - Me.XtraTabPage9.Size = New System.Drawing.Size(1068, 340) + Me.XtraTabPage9.Size = New System.Drawing.Size(1068, 337) Me.XtraTabPage9.Text = "Search#9" ' 'XtraTabPage10 ' Me.XtraTabPage10.Name = "XtraTabPage10" - Me.XtraTabPage10.Size = New System.Drawing.Size(1068, 340) + Me.XtraTabPage10.Size = New System.Drawing.Size(1068, 337) Me.XtraTabPage10.Text = "Search#10" ' 'ContextMenuStripSearchTerms @@ -422,13 +437,13 @@ Partial Class frmSearchStart Me.SplitContainerControlSearch.CollapsePanel = DevExpress.XtraEditors.SplitCollapsePanel.Panel2 Me.SplitContainerControlSearch.Dock = System.Windows.Forms.DockStyle.Fill Me.SplitContainerControlSearch.FixedPanel = DevExpress.XtraEditors.SplitFixedPanel.Panel2 - Me.SplitContainerControlSearch.Location = New System.Drawing.Point(0, 216) + Me.SplitContainerControlSearch.Location = New System.Drawing.Point(0, 215) Me.SplitContainerControlSearch.Name = "SplitContainerControlSearch" Me.SplitContainerControlSearch.Panel1.Controls.Add(Me.XtraTabControl1) Me.SplitContainerControlSearch.Panel1.Text = "Panel1" Me.SplitContainerControlSearch.Panel2.Text = "Panel2" Me.SplitContainerControlSearch.PanelVisibility = DevExpress.XtraEditors.SplitPanelVisibility.Panel1 - Me.SplitContainerControlSearch.Size = New System.Drawing.Size(1070, 363) + Me.SplitContainerControlSearch.Size = New System.Drawing.Size(1070, 362) Me.SplitContainerControlSearch.SplitterPosition = 310 Me.SplitContainerControlSearch.TabIndex = 16 ' @@ -443,7 +458,6 @@ Partial Class frmSearchStart Me.Controls.Add(Me.pnlProfileChoose) Me.Controls.Add(Me.RibbonStatusBar1) Me.Controls.Add(Me.RibbonControl1) - Me.Font = New System.Drawing.Font("Tahoma", 8.25!) Me.IconOptions.Icon = CType(resources.GetObject("frmSearchStart.IconOptions.Icon"), System.Drawing.Icon) Me.IconOptions.SvgImage = CType(resources.GetObject("frmSearchStart.IconOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.KeyPreview = True @@ -480,8 +494,8 @@ End Sub Friend WithEvents pnlProfileChoose As Panel Friend WithEvents cmbProfile As ComboBox Friend WithEvents Label1 As Label - Friend WithEvents BarButtonItemNewSearch As DevExpress.XtraBars.BarButtonItem - Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents BarButtonNewSearch As DevExpress.XtraBars.BarButtonItem + Friend WithEvents BarButtonSaveSearch As DevExpress.XtraBars.BarButtonItem Friend WithEvents XtraTabControl1 As DevExpress.XtraTab.XtraTabControl Friend WithEvents XtraTabPage1 As DevExpress.XtraTab.XtraTabPage Friend WithEvents XtraTabPage2 As DevExpress.XtraTab.XtraTabPage @@ -496,7 +510,7 @@ End Sub Friend WithEvents BarHeaderItem1 As DevExpress.XtraBars.BarHeaderItem Friend WithEvents BarEditItem1 As DevExpress.XtraBars.BarEditItem Friend WithEvents RepositoryItemRadioGroup1 As DevExpress.XtraEditors.Repository.RepositoryItemRadioGroup - Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents BarButtonClearSearch As DevExpress.XtraBars.BarButtonItem Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem Friend WithEvents SplitContainerControlSearch As DevExpress.XtraEditors.SplitContainerControl Friend WithEvents BarEditItem2 As DevExpress.XtraBars.BarEditItem @@ -508,7 +522,7 @@ End Sub Friend WithEvents BracketLeftToolStripMenuItem As ToolStripMenuItem Friend WithEvents KlammerRechtsToolStripMenuItem As ToolStripMenuItem Friend WithEvents KlammerEntfernenToolStripMenuItem As ToolStripMenuItem - Friend WithEvents BarButtonItem4 As DevExpress.XtraBars.BarButtonItem + Friend WithEvents BarButtonStartSearch As DevExpress.XtraBars.BarButtonItem Friend WithEvents RibbonPageGroupFilter As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents BarStaticItem1 As DevExpress.XtraBars.BarStaticItem Friend WithEvents RepositoryItemTextEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit @@ -519,4 +533,6 @@ End Sub Friend WithEvents cmbFilterTimeframe As DevExpress.XtraBars.BarEditItem Friend WithEvents RepositoryItemComboBox2 As DevExpress.XtraEditors.Repository.RepositoryItemComboBox Friend WithEvents RepositoryItemTimeSpanEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemTimeSpanEdit + Friend WithEvents BarCheckboxOpenSearchInSameWindow As DevExpress.XtraBars.BarCheckItem + Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup End Class diff --git a/GUIs.ZooFlow/frmSearchStart.resx b/GUIs.ZooFlow/frmSearchStart.resx index 9b9adcf1..d506b55a 100644 --- a/GUIs.ZooFlow/frmSearchStart.resx +++ b/GUIs.ZooFlow/frmSearchStart.resx @@ -118,7 +118,7 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl @@ -136,7 +136,7 @@ Cjwvc3ZnPgs= - + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl @@ -152,7 +152,7 @@ IC8+DQo8L3N2Zz4L - + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl @@ -169,7 +169,7 @@ Ny41LDExLjh6IiBjbGFzcz0iUmVkIiAvPg0KPC9zdmc+Cw== - + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl @@ -207,13 +207,39 @@ NCwyOS41LDE5Ljd6IE04LDI2Yy0yLjIsMC00LTEuOC00LTRzMS44LTQsNC00ICBzNCwxLjgsNCw0UzEw LjIsMjYsOCwyNnogTTI0LDI2Yy0yLjIsMC00LTEuOC00LTRzMS44LTQsNC00czQsMS44LDQsNFMyNi4y LDI2LDI0LDI2eiIgY2xhc3M9IkJsYWNrIiAvPg0KPC9zdmc+Cw== + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAEMEAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku + WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz + OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh + Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl + Pg0KICA8ZyBpZD0iV2luZG93cyI+DQogICAgPHBhdGggZD0iTTE4LDE4LjFWMTZoMnYwLjlDMTkuMywx + Ny4yLDE4LjYsMTcuNiwxOCwxOC4xeiBNMTQuNywyNkgyVjE2SDB2MTFjMCwwLjUsMC41LDEsMSwxaDE1 + LjEgICBDMTUuNSwyNy4zLDE1LjEsMjYuNiwxNC43LDI2eiBNMjQsMThjNS43LDAsOCw2LDgsNnMtMi4z + LDYtOCw2Yy01LjcsMC04LTYtOC02UzE4LjMsMTgsMjQsMTggTTI0LDIwYy0zLjMsMC01LjEsMi43LTUu + OCw0ICAgYzAuNywxLjMsMi41LDQsNS44LDRjMy4zLDAsNS4xLTIuNyw1LjgtNEMyOS4xLDIyLjcsMjcu + MywyMCwyNCwyMEwyNCwyMHogTTI0LDIyYy0xLjEsMC0yLDAuOS0yLDJzMC45LDIsMiwyYzEuMSwwLDIt + MC45LDItMiAgIFMyNS4xLDIyLDI0LDIyeiBNMjYsMTYuMlY4aDJ2OC45QzI3LjQsMTYuNiwyNi43LDE2 + LjQsMjYsMTYuMnogTTEwLDhIOHYyaDJWOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICA8cGF0aCBkPSJN + MCwxNnYtNWMwLTAuNSwwLjUtMSwxLTFoMThjMC41LDAsMSwwLjUsMSwxdjVIMHogTTI4LDhWM2MwLTAu + NS0wLjUtMS0xLTFIOUM4LjUsMiw4LDIuNSw4LDN2NUgyOHoiIGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+ + DQo8L3N2Zz4L 189, 17 - 174 + 73 diff --git a/GUIs.ZooFlow/frmSearchStart.vb b/GUIs.ZooFlow/frmSearchStart.vb index 5f40dfae..9042e456 100644 --- a/GUIs.ZooFlow/frmSearchStart.vb +++ b/GUIs.ZooFlow/frmSearchStart.vb @@ -7,33 +7,36 @@ Imports DevExpress.XtraGrid.Views.Grid Imports DevExpress.XtraEditors Imports DevExpress.XtraSplashScreen Imports DigitalData.GUIs.Common +Imports System.Threading.Tasks Public Class frmSearchStart Private Logger As Logger - Private DTSearchProfiles As DataTable - Private TabSelectedIndex As Integer - Private TabSelected As XtraTabPage - Private CURR_CTRL_OBJ As Object - Private PSEARCH_ID As Integer = 0 - Private SEARCH_SQL As String - Private SEARCH_TITLE As String - Public DataLoaded As Boolean = False + Private Const DEFAULT_X As Integer = 10 Private Const DEFAULT_Y As Integer = 10 - 'Private DTSearchTerms As DataTable - Private oDTAttributes As DataTable + + Private SelectedTabIndex As Integer + Private SelectedTab As XtraTabPage + + Private SEARCH_ID As Integer = 0 + Private SEARCH_SQL As String + Private SEARCH_TITLE As String Private SEARCH_COUNT As Integer = 0 - Private _Environment As Environment - Private ChangedDateControls As List(Of String) + Public DataLoaded As Boolean = False + Private DatatableAttributes As DataTable + Private DatatableSearchProfiles As DataTable + + Private LastSearchForm As frmDocumentResultList + Private ChangedDateControls As List(Of String) Public Sub New(ByVal pDTSearchProfiles As DataTable, Optional ByVal pRunSearch As Boolean = False) ' Dieser Aufruf ist für den Designer erforderlich. InitializeComponent() ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. - DTSearchProfiles = pDTSearchProfiles + DatatableSearchProfiles = pDTSearchProfiles Logger = My.LogConfig.GetLogger() Dim oSearchTerms As New DataTable @@ -45,12 +48,15 @@ Public Class frmSearchStart oSearchTerms.Columns.Add("SearchTerm", GetType(String)) oSearchTerms.Columns.Add("BracketRight", GetType(String)) oSearchTerms.Columns.Add("Operator", GetType(String)) - 'DTSearchTerms = oSearchTerms End Sub - Private Sub frmSearchStart_Load(sender As Object, e As EventArgs) Handles Me.Load + Private Async Sub frmSearchStart_Load(sender As Object, e As EventArgs) Handles Me.Load + Dim oHandle As IOverlaySplashScreenHandle = Nothing + Try - Me.pnlProfileChoose.Visible = False + oHandle = SplashScreenManager.ShowOverlayForm(Me) + + pnlProfileChoose.Visible = False For Each oTab As XtraTabPage In XtraTabControl1.TabPages oTab.PageVisible = False Next @@ -75,139 +81,80 @@ Public Class frmSearchStart } }) - If DTSearchProfiles.Rows.Count > 1 Then - cmbProfile.DataSource = DTSearchProfiles - cmbProfile.ValueMember = DTSearchProfiles.Columns("SEARCH_PROFILE_ID").ColumnName - cmbProfile.DisplayMember = DTSearchProfiles.Columns("TITLE").ColumnName + BarCheckboxOpenSearchInSameWindow.Checked = My.UIConfig.SearchForm.OpenSearchInSameWindow + + If DatatableSearchProfiles.Rows.Count > 1 Then + cmbProfile.DataSource = DatatableSearchProfiles + cmbProfile.ValueMember = DatatableSearchProfiles.Columns("SEARCH_PROFILE_ID").ColumnName + cmbProfile.DisplayMember = DatatableSearchProfiles.Columns("TITLE").ColumnName cmbProfile.AutoCompleteMode = AutoCompleteMode.Suggest cmbProfile.AutoCompleteSource = AutoCompleteSource.ListItems cmbProfile.SelectedIndex = -1 - TabSelectedIndex = -1 + SelectedTabIndex = -1 - Me.pnlProfileChoose.Visible = True - For Each orow As DataRow In DTSearchProfiles.Rows - RepositoryItemComboBox1.Items.Add(orow.Item("TITLE")) + pnlProfileChoose.Visible = True + For Each oRow As DataRow In DatatableSearchProfiles.Rows + RepositoryItemComboBox1.Items.Add(oRow.Item("TITLE")) Next - Me.pnlProfileChoose.Visible = True Else - Me.pnlProfileChoose.Visible = False + pnlProfileChoose.Visible = False RibbonPageGroupProfiles.Visible = False - TabSelectedIndex = 0 - TabSelected = XtraTabControl1.TabPages(0) - TabSelected.PageVisible = True - PSEARCH_ID = DTSearchProfiles.Rows(0).Item("SEARCH_PROFILE_ID") - SEARCH_SQL = DTSearchProfiles.Rows(0).Item("RESULT_SQL") - SEARCH_TITLE = DTSearchProfiles.Rows(0).Item("TITLE") - TabSelected.Text = DTSearchProfiles.Rows(0).Item("TITLE") - Load_Search_Attributes() - BarButtonItemNewSearch.Visibility = DevExpress.XtraBars.BarItemVisibility.Never + SelectedTabIndex = 0 + SelectedTab = XtraTabControl1.TabPages.First + SelectedTab.PageVisible = True + SelectedTab.Text = DatatableSearchProfiles.Rows(0).Item("TITLE") + + SEARCH_ID = DatatableSearchProfiles.Rows(0).Item("SEARCH_PROFILE_ID") + SEARCH_SQL = DatatableSearchProfiles.Rows(0).Item("RESULT_SQL") + SEARCH_TITLE = DatatableSearchProfiles.Rows(0).Item("TITLE") + + Await Load_Search_Attributes() + BarButtonNewSearch.Visibility = DevExpress.XtraBars.BarItemVisibility.Never End If - SEARCH_COUNT = DTSearchProfiles.Rows.Count + SEARCH_COUNT = DatatableSearchProfiles.Rows.Count SplitContainerControlSearch.Collapsed = True - RibbonControl1.ColorScheme = DevExpress.XtraBars.Ribbon.RibbonControlColorScheme.Red + + If My.UIConfig.SearchForm.Size.Height > 0 And My.UIConfig.SearchForm.Size.Width > 0 Then + Size = My.UIConfig.SearchForm.Size + End If + If My.UIConfig.SearchForm.Location.X > 0 And My.UIConfig.SearchForm.Location.Y > 0 Then - Me.Location = My.UIConfig.SearchForm.Location + Location = My.UIConfig.SearchForm.Location End If Catch ex As Exception Logger.Error(ex.Message) MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error while loading ProfileSearches:") + Finally + SplashScreenManager.CloseOverlayForm(oHandle) End Try - End Sub - - 'Public Sub AddSearchAttribute(pAttributeId As String, pAttributeTitle As String, pSearchTerm As String, Optional pCriteria As String = "=") - ' GridControlSerchTerms.DataSource = Nothing - ' Dim oMultiselect As Boolean = False - ' For Each oRow As DataRow In oDTAttributes.Rows - ' If oRow.Item("ATTRIBUTE_ID") = pAttributeId Then - ' oMultiselect = CBool(oRow.Item("MULTISELECT")) - ' Exit For - ' End If - ' Next - ' If oMultiselect = False Then - ' For Each oSearchTerm As DataRow In DTSearchTerms.Rows - ' If oSearchTerm.Item("AttrID") = pAttributeId Then 'And oSearchTerm.Item("Criteria") = pCriteria And oSearchTerm.Item("SearchTerm") = pSearchTerm - ' oSearchTerm.Delete() - ' End If - ' Next - ' End If - - ' DTSearchTerms.Rows.Add("", pAttributeId, pAttributeTitle, pCriteria, pSearchTerm, "", "and") - ' RenewBinding_DTSearchTerms() - - ' If SplitContainerControlSearch.Collapsed = True Then - ' SplitContainerControlSearch.Collapsed = False - ' End If - - 'End Sub - 'Sub RenewBinding_DTSearchTerms() - ' DTSearchTerms.AcceptChanges() - ' GridControlSerchTerms.DataSource = Nothing - ' GridControlSerchTerms.DataSource = DTSearchTerms - - ' GridViewSearchTerms.Columns("BracketLeft").Caption = "(" - ' GridViewSearchTerms.Columns("BracketRight").Caption = ")" - ' If My.Application.User.Language <> "de-DE" Then - ' GridViewSearchTerms.Columns("AttrTitle").Caption = "Attribute" - ' GridViewSearchTerms.Columns("Criteria").Caption = "Criteria" - ' Else - ' GridViewSearchTerms.Columns("AttrTitle").Caption = "Attribut" - ' GridViewSearchTerms.Columns("Criteria").Caption = "Bedingung" - ' End If - - 'End Sub - - 'Public Sub SearchAttribute(pAttrID As String, pAttrTitle As String, pSearchTerm As String, Optional pCriteria As String = "=") - ' '"BracketLeft" - ' '"AttrID", GetType(Integer)) - ' '"AttrTitle" - ' '"Criteria" - ' '"SearchTerm" - ' '"BracketRight" - ' '"Operator" - ' DTSearchTerms.Rows.Add("", pAttrID, pAttrTitle, pCriteria, pSearchTerm, "", "And") - ' DTSearchTerms.AcceptChanges() - - 'End Sub - - Sub Load_Search_Attributes() + Async Function Load_Search_Attributes() As Task Try DataLoaded = False - Dim oSQL = $"SELECT * FROM VWIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = {PSEARCH_ID} ORDER BY [SEQUENCE]" - Dim oDT As DataTable = My.DatabaseIDB.GetDatatable(oSQL) - oDTAttributes = Nothing - oDTAttributes = oDT.Clone() - oDT.Select("", "SEQUENCE").CopyToDataTable(oDTAttributes, LoadOption.PreserveChanges) - 'oDTAttributes.Columns.Add("MULTISELECT", GetType(Boolean)) - 'oDTAttributes.AcceptChanges() - 'For Each oAttributeRow As DataRow In oDTAttributes.Rows - ' oAttributeRow.Item("MULTISELECT") = False - 'Next + Dim oSQL = $"SELECT * FROM VWIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = {SEARCH_ID} ORDER BY [SEQUENCE]" + Dim oDT As DataTable = Await My.DatabaseIDB.GetDatatableAsync(oSQL) + DatatableAttributes = Nothing + DatatableAttributes = oDT.Clone() + oDT.Select("", "SEQUENCE").CopyToDataTable(DatatableAttributes, LoadOption.PreserveChanges) + Dim oControlCount As Integer = 1 Dim oControlRow As Integer = 0 - Dim oControls As New ClassControlCreator(TabSelected, Me) + Dim oControls As New ClassControlCreator(SelectedTab, Me) Dim YMax As Integer = 0 Dim YActControlHeight As Integer = 0 Dim XActControlWidth As Integer = 0 - Dim iList As New List(Of Integer)() - iList.Add(2) - iList.Add(3) - iList.Add(5) - iList.Add(6) - iList.Add(8) - iList.Add(9) + Dim iList As New List(Of Integer) From {2, 3, 5, 6, 8, 9} For Each oAttributeRow As DataRow In oDT.Rows Dim oXPosition As Integer Dim oYPositionControl As Integer Dim oYPositionLabel As Integer - Dim oMyLastGridView As DevExpress.XtraGrid.Views.Grid.GridView + Dim oMyLastGridView As GridView Dim oSingleResult As Boolean = False Dim oAttriTitle As String = oAttributeRow.Item("ATTRIBUTE_TITLE").ToString Dim oAttriID As Integer = CInt(oAttributeRow.Item("ATTRIBUTE_ID")) - ' Dim oDepAttriID1 As String = oAttributeRow.Item("DEPENDING_ATTRIBUTE1").ToString - Dim oAttriTYPE As String = oAttributeRow.Item("ATTRIBUTE_TYPE").ToString + Dim oAttributeType As String = oAttributeRow.Item("ATTRIBUTE_TYPE").ToString If oControlCount = 1 Or oControlCount = 5 Or oControlCount = 9 Then oControlRow += 1 End If @@ -236,27 +183,24 @@ Public Class frmSearchStart If CBool(oAttributeRow.Item("MULTISELECT")) = True Then oControlWidth += 50 End If - 'Erst mal das Label hinzufügen - 'If oAttriTYPE <> "BIT" Then + addLabel(oAttriTitle, oXPosition, oYPositionLabel) - 'End If 'Nun das Control mit dem entsprechenden Abstand und der Größe - Dim oXDistance As Integer, oYDistance As Integer Dim oCalcHeight As Integer Dim oCalcWidth As Integer - If oAttriTYPE = "VARCHAR" Or oAttriTYPE = "BIG INTEGER" Then + If oAttributeType = "VARCHAR" Or oAttributeType = "BIG INTEGER" Then oCalcHeight = oControlHeight + oYPositionControl oCalcWidth = oControlWidth - ElseIf (oAttriTYPE = "DATE" Or oAttriTYPE = "BIT") Then + ElseIf (oAttributeType = "DATE" Or oAttributeType = "BIT") Then oCalcHeight = 20 + oYPositionControl oCalcWidth = 100 End If If oCalcHeight > YActControlHeight Then YActControlHeight = oCalcHeight End If - Dim oMyControl As Control - If oAttriTYPE = "VARCHAR" Or oAttriTYPE = "BIG INTEGER" Then + Dim oMyControl As Control = Nothing + If oAttributeType = "VARCHAR" Or oAttributeType = "BIG INTEGER" Then oMyControl = oControls.CreateExistingGridControl(oAttributeRow, oXPosition, oYPositionControl) Dim myDGV As GridControl = CType(oMyControl, GridControl) @@ -279,34 +223,37 @@ Public Class frmSearchStart End If oView.FocusInvalidRow() - ElseIf oAttriTYPE = "DATE" Then + ElseIf oAttributeType = "DATE" Then oMyControl = oControls.CreateExistingDatepicker(oAttributeRow, oXPosition, oYPositionControl) Dim myDTP As DateEdit = CType(oMyControl, DateEdit) AddHandler myDTP.DisableCalendarDate, AddressOf DisableCalendarDate AddHandler myDTP.DateTimeChanged, AddressOf CalendarChanged 'CalendarChanged - ElseIf oAttriTYPE = "BIT" Then + ElseIf oAttributeType = "BIT" Then oMyControl = oControls.CreateExistingCheckbox(oAttributeRow, oXPosition, oYPositionControl) Dim myCheckBox As CheckBox = CType(oMyControl, CheckBox) AddHandler myCheckBox.CheckedChanged, AddressOf CheckBox_CheckedChanged End If oControlCount += 1 - TabSelected.Controls.Add(oMyControl) - If oAttriTYPE = "VARCHAR" Or oAttriTYPE = "BIG INTEGER" Then - oMyLastGridView.FocusInvalidRow() + If oMyControl IsNot Nothing Then + SelectedTab.Controls.Add(oMyControl) End If - oXPosition += oControlWidth + 20 + If oAttributeType = "VARCHAR" Or oAttributeType = "BIG INTEGER" Then + oMyLastGridView.FocusInvalidRow() + End If + + oXPosition += oControlWidth + 20 Next - DataLoaded = True Catch ex As Exception Logger.Warn("Unexpected error in Load_Search_Attributes - Error: " & ex.Message) MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error in Load_Search_Attributes:") + Finally DataLoaded = True End Try - End Sub + End Function Sub addLabel(pAttrName As String, pXPos As Integer, ylbl As Integer) Dim lbl As New Label With { .Name = "lbl" & pAttrName, @@ -315,15 +262,15 @@ Public Class frmSearchStart .Location = New Point(pXPos, ylbl) } - TabSelected.Controls.Add(lbl) + SelectedTab.Controls.Add(lbl) End Sub Private Sub XtraTabControl1_SelectedPageChanged(sender As Object, e As DevExpress.XtraTab.TabPageChangedEventArgs) Handles XtraTabControl1.SelectedPageChanged - TabSelected = XtraTabControl1.SelectedTabPage + SelectedTab = XtraTabControl1.SelectedTabPage End Sub Private Sub ClearSearchCriteria() - Dim oSQL = $"DELETE FROM TBIDB_USER_SEARCH_CRITERIA WHERE SEARCH_PROFIL_ID = {PSEARCH_ID} AND USERID = {My.Application.User.UserId}" + Dim oSQL = $"DELETE FROM TBIDB_USER_SEARCH_CRITERIA WHERE SEARCH_PROFIL_ID = {SEARCH_ID} AND USERID = {My.Application.User.UserId}" My.DatabaseIDB.ExecuteNonQuery(oSQL) @@ -336,7 +283,7 @@ Public Class frmSearchStart Private Sub RenewSearchAttributes() ClearSearchCriteria() - For Each oControl As Control In TabSelected.Controls + For Each oControl As Control In SelectedTab.Controls Dim octrlType = oControl.GetType.ToString Dim oAttrID As Integer Dim oAttrTitle As String @@ -353,12 +300,12 @@ Public Class frmSearchStart oAttrTitle = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttrTitle For Each oRowHandle As Integer In oSelectedRows Dim oResult = oMyGridView.GetRowCellValue(oRowHandle, oMyGridView.Columns(0).FieldName) - Dim oInsert = $"EXEC PRIDB_NEW_USER_SEARCH_CRITERIA {PSEARCH_ID.ToString},{My.Application.User.UserId.ToString},{oAttrID.ToString},'{oResult}','{My.Application.User.UserName}'" + Dim oInsert = $"EXEC PRIDB_NEW_USER_SEARCH_CRITERIA {SEARCH_ID.ToString},{My.Application.User.UserId.ToString},{oAttrID.ToString},'{oResult}','{My.Application.User.UserName}'" My.DatabaseIDB.ExecuteNonQuery(oInsert) Next Case "DevExpress.XtraEditors.DateEdit" ' MsgBox("Date") - Dim myDTP As DateEdit = CType(oControl, DateEdit) + Dim oDateEdit As DateEdit = CType(oControl, DateEdit) If ChangedDateControls Is Nothing Then Continue For End If @@ -366,15 +313,15 @@ Public Class frmSearchStart Continue For End If For Each oName As String In ChangedDateControls - If myDTP.Name = oName Then - If Not IsNothing(myDTP.EditValue) Then + If oDateEdit.Name = oName Then + If Not IsNothing(oDateEdit.EditValue) Then oAttrID = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttrID oAttrTitle = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttrTitle Dim oldValue As Date Dim validDate As Boolean = False - Dim oDateValue As DateTime = myDTP.EditValue + Dim oDateValue As Date = DirectCast(oDateEdit.EditValue, Date) Try - validDate = Date.TryParse(myDTP.OldEditValue, oldValue) + validDate = Date.TryParse(oDateEdit.OldEditValue, oldValue) Catch ex As Exception oldValue = Date.MinValue End Try @@ -383,12 +330,12 @@ Public Class frmSearchStart oldValue = Date.MinValue End If - If oldValue = myDTP.EditValue Then + If oldValue = oDateEdit.EditValue Then Exit Sub End If Dim dateString = oDateValue.ToString("yyyy-MM-dd") 'hh:mm:ss.fff - Dim omydate = myDTP.EditValue.ToString - Dim oInsert = $"EXEC PRIDB_NEW_USER_SEARCH_CRITERIA {PSEARCH_ID.ToString},{My.Application.User.UserId.ToString},{oAttrID.ToString},'{omydate}','{My.Application.User.UserName}'" + Dim omydate = oDateEdit.EditValue.ToString + Dim oInsert = $"EXEC PRIDB_NEW_USER_SEARCH_CRITERIA {SEARCH_ID.ToString},{My.Application.User.UserId.ToString},{oAttrID.ToString},'{omydate}','{My.Application.User.UserName}'" My.DatabaseIDB.ExecuteNonQuery(oInsert) End If End If @@ -399,7 +346,7 @@ Public Class frmSearchStart If myCheckBox.CheckState <> CheckState.Indeterminate Then oAttrID = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttrID oAttrTitle = DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).AttrTitle - Dim oInsert = $"EXEC PRIDB_NEW_USER_SEARCH_CRITERIA {PSEARCH_ID.ToString},{My.Application.User.UserId.ToString},{oAttrID.ToString},'{myCheckBox.Checked.ToString}','{My.Application.User.UserName}'" + Dim oInsert = $"EXEC PRIDB_NEW_USER_SEARCH_CRITERIA {SEARCH_ID.ToString},{My.Application.User.UserId.ToString},{oAttrID.ToString},'{myCheckBox.Checked.ToString}','{My.Application.User.UserName}'" My.DatabaseIDB.ExecuteNonQuery(oInsert) End If Case Else @@ -412,11 +359,10 @@ Public Class frmSearchStart If DataLoaded = False Then Exit Sub Dim oCurrentView As GridView = DirectCast(sender, GridView) Dim oCurrentControl As GridControl = oCurrentView.GridControl + Dim oRowView As DataRowView = CType(oCurrentView.GetFocusedRow(), DataRowView) - Dim rowView As DataRowView = CType(oCurrentView.GetFocusedRow(), DataRowView) - - If IsNothing(rowView) = False Then - Dim oResult As String = CType(rowView.Item(0), String) + If IsNothing(oRowView) = False Then + Dim oResult As String = CType(oRowView.Item(0), String) Dim oAttrID = DirectCast(oCurrentControl.Tag, ClassControlCreator.ControlMetadata).AttrID Dim oAttrTitle = DirectCast(oCurrentControl.Tag, ClassControlCreator.ControlMetadata).AttrTitle ' RenewSearchAttributes() @@ -446,67 +392,31 @@ Public Class frmSearchStart e.IsDisabled = True End If End If - - - 'If (e.Date.DayOfWeek = DayOfWeek.Wednesday) Then - ' e.IsDisabled = True - 'End If End Sub Private Sub CalendarChanged(sender As Object, e As EventArgs) If DataLoaded = False Then Exit Sub - Dim myDTP As DateEdit = CType(sender, DateEdit) - If Not IsNothing(myDTP.EditValue) Then - Dim omydate = myDTP.EditValue.ToString - Dim oList As New List(Of String) - oList.Add(myDTP.Name) + Dim oDateEdit As DateEdit = CType(sender, DateEdit) + If Not IsNothing(oDateEdit.EditValue) Then + Dim oEditValue = oDateEdit.EditValue.ToString + Dim oList As New List(Of String) From {oDateEdit.Name} + If Not IsNothing(ChangedDateControls) Then Dim oFound As Boolean = False For Each oName As String In ChangedDateControls - If myDTP.Name = oName Then + If oDateEdit.Name = oName Then oFound = True Exit For End If Next If oFound = False Then - ChangedDateControls.Add(myDTP.Name) + ChangedDateControls.Add(oDateEdit.Name) End If Else ChangedDateControls = oList End If - - 'RenewSearchAttributes() - - 'Dim oInsert = $"EXEC PRIDB_NEW_USER_SEARCH_CRITERIA {PSEARCH_ID.ToString},{My.Application.User.UserId.ToString},{oAttrID.ToString},'{omydate}','{My.Application.User.UserName}'" - 'My.DatabaseIDB.ExecuteNonQuery(oInsert) End If End Sub - Private Sub OnDateSelectedValueChanged(sender As Object, e As EventArgs) - Try - Dim myDTP As DateEdit = CType(sender, DateEdit) - Dim value As DateTime = myDTP.EditValue - Dim oldValue As Date - Dim validDate As Boolean = False - - Try - validDate = Date.TryParse(myDTP.OldEditValue, oldValue) - Catch ex As Exception - oldValue = Date.MinValue - End Try - - If Not validDate Then - oldValue = Date.MinValue - End If - - If oldValue = myDTP.EditValue Then - Exit Sub - End If - Dim dateString = value.ToString("yyyy-MM-dd") 'hh:mm:ss.fff - - Catch ex As Exception - Logger.Error(ex) - End Try - End Sub Public Function IsValidDate(pCheckDT As DataTable, pDate2Check As Date) As Boolean Dim oIsValid As Boolean = False For Each oDateRow As DataRow In pCheckDT.Rows @@ -516,158 +426,66 @@ Public Class frmSearchStart Next Return oIsValid End Function - 'Private Sub Clear_token() - ' Try - ' TokenEdit1.Properties.BeginUpdate() - ' Dim oCount As Int16 = 1 - ' For Each oRow As DataRow In DTSearchTerms.Rows - ' TokenEdit1.RemoveItem($"criteria{oCount}") - ' oCount += 1 - ' Next - ' TokenEdit1.Properties.EndUpdate() - ' Catch ex As Exception - - ' End Try - - 'End Sub - Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick + + Private Async Sub BarButtonClearSearch_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonClearSearch.ItemClick Try - 'Clear_token() ClearSearchCriteria() - 'DTSearchTerms.Clear() ClearSelectedControls() Catch ex As Exception MsgBox("Unexpected Error in Clearing Search Items: " & ex.Message, MsgBoxStyle.Critical) End Try - TabSelected.Controls.Clear() - Load_Search_Attributes() + SelectedTab.Controls.Clear() + Await Load_Search_Attributes() End Sub - Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick - - 'TokenEdit1.Properties.BeginUpdate() - ''TokenEdit1.Properties.Tokens.AddToken("Column1 = 'Value1'", "criteria1") - - 'TokenEdit1.Properties.Tokens.AddToken("Column1 = 'Value1'", "criteria1") - 'TokenEdit1.Properties.Tokens.AddToken("Column2 > 20", "criteria2") - 'TokenEdit1.Properties.Tokens.AddToken("Column3 <> 'Harry'", "criteria3") - 'TokenEdit1.EditValue = "criteria1, criteria2, criteria3" - '' ... add more tokens - 'TokenEdit1.Properties.EndUpdate() - End Sub - 'Private Sub AddToken(CriteriaString As String) - ' Try - ' Clear_token() - ' TokenEdit1.Properties.BeginUpdate() - ' ''oRow.Item("AttrTitle") & " " & oRow.Item("Criteria") & " '" & oRow.Item("SearchTerm") & "'" - ' Dim oCount As Int16 = 1 - ' For Each oRow As DataRow In DTSearchTerms.Rows - ' Try - ' Dim oCriteriaString = oRow.Item("AttrTitle") & " " & oRow.Item("Criteria") & " '" & oRow.Item("SearchTerm") & "'" - ' TokenEdit1.Properties.Tokens.AddToken(CriteriaString, "criteria" + oCount.ToString) - ' Catch ex As Exception - - ' End Try - - ' oCount += 1 - ' Next - ' ' Dim oTokenCount = DTSearchTerms.Rows.Count - ' 'TokenEdit1.Properties.BeginUpdate() - ' 'TokenEdit1.Properties.Tokens.AddToken(CriteriaString, "criteria" + oCount.ToString) - ' Dim otokenEditString = "" - ' oCount = 1 - ' For Each oRow As DataRow In DTSearchTerms.Rows - ' If oCount = 1 Then - ' otokenEditString = "criteria1" - ' Else - ' otokenEditString &= $", criteria{oCount}" - ' End If - ' oCount += 1 - ' Next - ' TokenEdit1.EditValue = otokenEditString - ' ' ... add more tokens - ' TokenEdit1.Properties.EndUpdate() - ' Catch ex As Exception - ' MsgBox("Unexpected Error in AddToken: " & ex.Message, MsgBoxStyle.Critical) - ' Logger.Warn("Unexpected Error in AddToken: " & ex.Message) - ' End Try - - - 'End Sub - - Private Sub cmbProfile_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cmbProfile.SelectedIndexChanged + Private Async Sub cmbProfile_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cmbProfile.SelectedIndexChanged If DataLoaded = False Then Exit Sub If cmbProfile.SelectedIndex <> -1 Then - If TabSelectedIndex = -1 Then - TabSelectedIndex = 0 + If SelectedTabIndex = -1 Then + SelectedTabIndex = 0 Else - TabSelectedIndex += 1 + SelectedTabIndex += 1 End If - TabSelected = XtraTabControl1.TabPages(TabSelectedIndex) - TabSelected.PageVisible = True - PSEARCH_ID = cmbProfile.SelectedValue + SelectedTab = XtraTabControl1.TabPages(SelectedTabIndex) + SelectedTab.PageVisible = True + SEARCH_ID = cmbProfile.SelectedValue Dim oDT As New DataTable - Dim oFilter As String = $"SEARCH_PROFILE_ID = {PSEARCH_ID}" - Dim oFilteredRows() As DataRow = DTSearchProfiles.Select(oFilter) - oDT = DTSearchProfiles.Clone + Dim oFilter As String = $"SEARCH_PROFILE_ID = {SEARCH_ID}" + Dim oFilteredRows() As DataRow = DatatableSearchProfiles.Select(oFilter) + oDT = DatatableSearchProfiles.Clone For Each oRow As DataRow In oFilteredRows SEARCH_SQL = oRow.Item("RESULT_SQL").ToString SEARCH_TITLE = cmbProfile.Text Next - TabSelected.Text = SEARCH_TITLE - Load_Search_Attributes() - BarButtonItemNewSearch.Visibility = DevExpress.XtraBars.BarItemVisibility.Always - XtraTabControl1.SelectedTabPageIndex = TabSelectedIndex + SelectedTab.Text = SEARCH_TITLE + Await Load_Search_Attributes() + BarButtonNewSearch.Visibility = DevExpress.XtraBars.BarItemVisibility.Always + XtraTabControl1.SelectedTabPageIndex = SelectedTabIndex End If End Sub - - Private Sub BarEditItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarEditItem2.ItemClick - - End Sub - - Private Sub BarButtonItemNewSearch_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemNewSearch.ItemClick + Private Sub BarButtonNewSearch_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonNewSearch.ItemClick Display_InfoItem("New Search not integrated", Color.Yellow) - End Sub - Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick + Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonSaveSearch.ItemClick Display_InfoItem("Search Save not integrated", Color.Yellow) End Sub - Sub Display_InfoItem(pText As String, pColor As Color) - BarStaticItemInfo.Caption = pText - BarStaticItemInfo.ItemAppearance.Normal.BackColor = pColor - End Sub - Private Sub MehrfachauswahlAktivierenToolStripMenuItem_Click(sender As Object, e As EventArgs) - If DataLoaded = False Then Exit Sub - Dim oCurrentControl As GridControl = DirectCast(CURR_CTRL_OBJ, GridControl) - Dim oAttrID = DirectCast(oCurrentControl.Tag, ClassControlCreator.ControlMetadata).AttrID - Dim oAttrTitle = DirectCast(oCurrentControl.Tag, ClassControlCreator.ControlMetadata).AttrTitle - - For Each oROW As DataRow In oDTAttributes.Rows - If oROW.Item("ATTRIBUTE_ID") = oAttrID Then - oROW.Item("MULTISELECT") = True - Exit For - End If - Next + Sub Display_InfoItem(pText As String, pBackColor As Color) + Display_InfoItem(pText, pBackColor, Color.Black) End Sub + Sub Display_InfoItem(pText As String, pBackColor As Color, pForeColor As Color) + BarStaticItemInfo.Caption = pText + BarStaticItemInfo.ItemAppearance.Normal.BackColor = pBackColor + BarStaticItemInfo.ItemAppearance.Normal.ForeColor = pForeColor + End Sub - - Private Sub MehrfachauswahlInaktivierenToolStripMenuItem_Click(sender As Object, e As EventArgs) - If DataLoaded = False Then Exit Sub - Dim oCurrentControl As GridControl = DirectCast(CURR_CTRL_OBJ, GridControl) - Dim oAttrID = DirectCast(oCurrentControl.Tag, ClassControlCreator.ControlMetadata).AttrID - Dim oAttrTitle = DirectCast(oCurrentControl.Tag, ClassControlCreator.ControlMetadata).AttrTitle - - For Each oROW As DataRow In oDTAttributes.Rows - If oROW.Item("ATTRIBUTE_ID") = oAttrID Then - oROW.Item("MULTISELECT") = False - Exit For - End If - Next + Sub Clear_InfoItem() + BarStaticItemInfo.Caption = String.Empty + BarStaticItemInfo.ItemAppearance.Normal.BackColor = Color.Transparent End Sub Private Sub GridViewSearchTerms_RowDeleted(sender As Object, e As DevExpress.Data.RowDeletedEventArgs) @@ -675,165 +493,56 @@ Public Class frmSearchStart Dim oCurrentView As GridView = DirectCast(sender, GridView) Dim oCurrentControl As GridControl = oCurrentView.GridControl - Dim rowView As DataRowView = CType(oCurrentView.GetFocusedRow(), DataRowView) + Dim oRowView As DataRowView = CType(oCurrentView.GetFocusedRow(), DataRowView) - If IsNothing(rowView) = False Then - Dim oResult As String = CType(rowView.Item(0), String) + If IsNothing(oRowView) = False Then + Dim oResult As String = CType(oRowView.Item(0), String) Dim oAttrID = DirectCast(oCurrentControl.Tag, ClassControlCreator.ControlMetadata).AttrID Dim oAttrTitle = DirectCast(oCurrentControl.Tag, ClassControlCreator.ControlMetadata).AttrTitle End If End Sub - 'Private Sub GridViewSearchTerms_KeyUp(sender As Object, e As KeyEventArgs) - ' If e.KeyValue = Keys.Delete Then - ' Dim oSelectedRows As Integer() = GridViewSearchTerms.GetSelectedRows() - ' Dim oAttrID = GridViewSearchTerms.GetRowCellValue(oSelectedRows.Last(), GridViewSearchTerms.Columns("AttrID")) - ' Dim oSearchTerm = GridViewSearchTerms.GetRowCellValue(oSelectedRows.Last(), GridViewSearchTerms.Columns("SearchTerm")) - ' For Each dr As DataRow In DTSearchTerms.Rows - ' If dr.Item("AttrID") = oAttrID And dr.Item("SearchTerm") = oSearchTerm Then - ' dr.Delete() - ' Exit For - ' End If - ' Next - ' RenewBinding_DTSearchTerms() - ' End If - 'End Sub - - 'Private Sub ContextMenuStripSearchTerms_Opening(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles ContextMenuStripSearchTerms.Opening - ' Dim rowView As DataRowView = GridViewSearchTerms.GetFocusedRow() - ' '"BracketLeft" - ' '"AttrID", GetType(Integer)) - ' '"AttrTitle" - ' '"Criteria" - ' '"SearchTerm" - ' '"BracketRight" - ' '"Operator" - ' If IsNothing(rowView) = False Then - ' Dim oOperator As String = rowView.Item("Operator") - ' If oOperator = "and" Then - ' If My.Application.User.Language = "de-De" Then - ' tsmOperator.Text = "Operator = oder" - ' Else - ' tsmOperator.Text = "Operator = or" - ' End If - ' Else - ' If My.Application.User.Language = "de-De" Then - ' tsmOperator.Text = "Operator = und" - ' Else - ' tsmOperator.Text = "Operator = and" - ' End If - ' End If - ' End If - 'End Sub - - 'Private Sub tsmOperator_Click(sender As Object, e As EventArgs) Handles tsmOperator.Click - ' Dim rowView As DataRowView = GridViewSearchTerms.GetFocusedRow() - ' If IsNothing(rowView) = False Then - ' Dim oAttrID As String = rowView.Item("AttrID") - ' Dim oSearchTerm As String = rowView.Item("SearchTerm") - ' Dim oREPLACEOperator As String - ' If tsmOperator.Text.EndsWith("und") Or tsmOperator.Text.EndsWith("and") Then - ' oREPLACEOperator = "and" - ' Else - ' oREPLACEOperator = "or" - ' End If - ' For Each oRow As DataRow In DTSearchTerms.Rows - ' If oRow.Item("AttrID") = oAttrID And oRow.Item("SearchTerm") = oSearchTerm Then - ' oRow.Item("Operator") = oREPLACEOperator - ' DTSearchTerms.AcceptChanges() - ' Exit For - ' End If - - ' Next - ' End If - 'End Sub - 'Private Sub BracketLeftToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles BracketLeftToolStripMenuItem.Click - ' Dim rowView As DataRowView = GridViewSearchTerms.GetFocusedRow() - ' If IsNothing(rowView) = False Then - ' Dim oAttrID As String = rowView.Item("AttrID") - ' Dim oSearchTerm As String = rowView.Item("SearchTerm") - ' For Each oRow As DataRow In DTSearchTerms.Rows - ' If oRow.Item("AttrID") = oAttrID And oRow.Item("SearchTerm") = oSearchTerm Then - ' oRow.Item("BracketLeft") = "(" - ' DTSearchTerms.AcceptChanges() - ' Exit For - ' End If - - ' Next - ' End If - 'End Sub - - 'Private Sub KlammerRechtsToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles KlammerRechtsToolStripMenuItem.Click - ' Dim rowView As DataRowView = CType(GridViewSearchTerms.GetFocusedRow(), DataRowView) - ' If IsNothing(rowView) = False Then - ' Dim oAttrID As String = rowView.Item("AttrID") - ' Dim oSearchTerm As String = rowView.Item("SearchTerm") - ' For Each oRow As DataRow In DTSearchTerms.Rows - ' If oRow.Item("AttrID") = oAttrID And oRow.Item("SearchTerm") = oSearchTerm Then - ' oRow.Item("BracketRight") = ")" - ' DTSearchTerms.AcceptChanges() - ' Exit For - ' End If - - ' Next - ' End If - 'End Sub - 'Private Sub KlammerEntfernenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles KlammerEntfernenToolStripMenuItem.Click - ' Dim rowView As DataRowView = GridViewSearchTerms.GetFocusedRow() - ' If IsNothing(rowView) = False Then - ' Dim oAttrID As String = rowView.Item("AttrID") - ' Dim oSearchTerm As String = rowView.Item("SearchTerm") - ' For Each oRow As DataRow In DTSearchTerms.Rows - ' If oRow.Item("AttrID") = oAttrID And oRow.Item("SearchTerm") = oSearchTerm Then - ' oRow.Item("BracketRight") = "" - ' oRow.Item("BracketLeft") = "" - ' DTSearchTerms.AcceptChanges() - ' Exit For - ' End If - - ' Next - ' End If - 'End Sub Private Sub frmSearchStart_FormClosed(sender As Object, e As FormClosedEventArgs) Handles MyBase.FormClosed My.UIConfig.SearchForm.Location = Me.Location My.UIConfigManager.Save() End Sub - Private Function GetSearchTermForType(pAttrID As Int16, pAttrTitle As String, pCriteria As String, pTERM As String) As String - Dim oRETURN As String = "" + + Private Function GetSearchTermForType(pAttrID As Int16, pAttrTitle As String, pCriteria As String, pTerm As String) As String + Dim oSearchTerm As String = "" Dim oFilter As String = $"GUID = {pAttrID}" Dim oFilteredRows() As DataRow = My.DTAttributes.Select(oFilter) If oFilteredRows.Length = 1 Then For Each oRow As DataRow In oFilteredRows - Dim oType As Integer = CInt(oRow.Item("TYP_ID")) + Dim oType As Integer = DirectCast(oRow.Item("TYP_ID"), Integer) If oType = 1 Or oType = 8 Then - oRETURN = $"{pAttrTitle} {pCriteria} '{pTERM.Replace("'", "''")}'" + oSearchTerm = $"{pAttrTitle} {pCriteria} '{pTerm.Replace("'", "''")}'" ElseIf oType = 2 Or oType = 9 Then - oRETURN = $"{pAttrTitle} {pCriteria} {pTERM}" + oSearchTerm = $"{pAttrTitle} {pCriteria} {pTerm}" ElseIf oType = 3 Then 'Float - oRETURN = $"{pAttrTitle} {pCriteria} Convert(float,'{pTERM.Replace(",", ".")}')" + oSearchTerm = $"{pAttrTitle} {pCriteria} Convert(float,'{pTerm.Replace(",", ".")}')" ElseIf oType = 4 Then 'Decimal - oRETURN = $"{pAttrTitle} {pCriteria} Convert(decimal(19,2),'{pTERM.Replace(",", ".")}')" + oSearchTerm = $"{pAttrTitle} {pCriteria} Convert(decimal(19,2),'{pTerm.Replace(",", ".")}')" ElseIf oType = 5 Then 'DATE - oRETURN = $"{pAttrTitle} {pCriteria} Convert(date,'{pTERM}')" + oSearchTerm = $"{pAttrTitle} {pCriteria} Convert(date,'{pTerm}')" ElseIf oType = 7 Then Dim oBit As Int16 - If CBool(pTERM) = True Then + If CBool(pTerm) = True Then oBit = 1 Else oBit = 0 End If - oRETURN = $"{pAttrTitle} {pCriteria} '{oBit.ToString}'" + oSearchTerm = $"{pAttrTitle} {pCriteria} '{oBit.ToString}'" End If Next End If - Return oRETURN + Return oSearchTerm End Function - Private Sub BarButtonItem4_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem4.ItemClick + Private Sub BarButtonStartSearch_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonStartSearch.ItemClick RenewSearchAttributes() Start_Search() End Sub @@ -842,35 +551,14 @@ Public Class frmSearchStart Try oHandle = SplashScreenManager.ShowOverlayForm(Me) + Clear_InfoItem() + + Dim oSearchSQL = SEARCH_SQL - Dim oSEARCH_SQL = SEARCH_SQL - Dim oOperator As String - Dim oCount As Integer = 1 - 'For Each oRow As DataRow In DTSearchTerms.Rows - ' '"BracketLeft" - ' '"AttrID", GetType(Integer)) - ' '"AttrTitle" - ' '"Criteria" - ' '"SearchTerm" - ' '"BracketRight" - ' '"Operator" - ' oOperator = oRow.Item("Operator").ToString - ' Dim oSearchTerm = GetSearchTermForType(oRow.Item("AttrID"), oRow.Item("AttrTitle").ToString, oRow.Item("Criteria").ToString, oRow.Item("SearchTerm").ToString) - - ' Dim oBracketLeft As String = oRow.Item("BracketLeft").ToString - ' Dim oBracketRight As String = oRow.Item("BracketLeft").ToString - ' Dim oSpaceChar = IIf(oCount = 0, " ", "") - - ' oSEARCH_SQL &= $"{oSpaceChar}{oBracketLeft}{oSearchTerm}{oBracketRight}" - ' If DTSearchTerms.Rows.Count > oCount Then - ' oSEARCH_SQL &= $" {oOperator} {Chr(13)}" - ' End If - ' oCount += 1 - 'Next - oSEARCH_SQL = oSEARCH_SQL.Replace("@UserID", My.Application.User.UserId) - oSEARCH_SQL = oSEARCH_SQL.Replace("@User_ID", My.Application.User.UserId) - oSEARCH_SQL = oSEARCH_SQL.Replace("@UserName", My.Application.User.UserName) - oSEARCH_SQL = oSEARCH_SQL.Replace("@SearchID", PSEARCH_ID) + oSearchSQL = oSearchSQL.Replace("@UserID", My.Application.User.UserId.ToString) + oSearchSQL = oSearchSQL.Replace("@User_ID", My.Application.User.UserId.ToString) + oSearchSQL = oSearchSQL.Replace("@UserName", My.Application.User.UserName) + oSearchSQL = oSearchSQL.Replace("@SearchID", SEARCH_ID.ToString) Dim oEnvironment As New Modules.ZooFlow.Environment() With { .User = My.Application.User, .Modules = My.Application.Modules, @@ -878,29 +566,39 @@ Public Class frmSearchStart .DatabaseIDB = My.DatabaseIDB, .Settings = My.Application.Settings } - Dim oDTSearchResult As DataTable = My.DatabaseIDB.GetDatatable(oSEARCH_SQL) + Dim oDTSearchResult As DataTable = My.DatabaseIDB.GetDatatable(oSearchSQL) If oDTSearchResult.Rows.Count > 0 Then Dim oShortGuid = Guid.NewGuid() - Dim oWindowGuid = $"{PSEARCH_ID.ToString}-{My.User.Name}" + Dim oWindowGuid = $"{SEARCH_ID.ToString}-{My.User.Name}" Dim oParams = New DocumentResultParams() With { .IsIDBResult = True, .WindowGuid = oWindowGuid, .Results = New List(Of DocumentResult) From { New DocumentResult() With { - .Title = TabSelected.Text, + .Title = SelectedTab.Text, .Datatable = oDTSearchResult } } } - Dim oForm As New frmDocumentResultList(My.LogConfig, oEnvironment, oParams) - oForm.Show() + If My.UIConfig.SearchForm.OpenSearchInSameWindow And LastSearchForm IsNot Nothing Then + LastSearchForm.RefreshResults(oParams.Results) + Else + Dim oForm As New frmDocumentResultList(My.LogConfig, oEnvironment, oParams) + oForm.Show() + + ' Position Result Window below this window + oForm.Location = GetResultFormLocation() + oForm.Size = GetResultFormSize() - ' Position Result Window below this window - oForm.Location = GetResultFormLocation() - oForm.Size = GetResultFormSize() + AddHandler oForm.FormClosed, Sub() + LastSearchForm = Nothing + End Sub + + LastSearchForm = oForm + End If Else - Display_InfoItem("No results for this searchcombination!", Color.OrangeRed) + Display_InfoItem("No results for this searchcombination!", Color.OrangeRed, Color.White) End If Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical, Text) @@ -958,6 +656,16 @@ Public Class frmSearchStart txtFilterTo.Enabled = True txtFilterTo.EditValue = oTimeframe.[To] End If + End Sub + Private Sub BarCheckboxOpenSearchInSameWindow_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarCheckboxOpenSearchInSameWindow.CheckedChanged + My.UIConfig.SearchForm.OpenSearchInSameWindow = BarCheckboxOpenSearchInSameWindow.Checked + My.UIConfigManager.Save() + End Sub + + Private Sub frmSearchStart_ResizeEnd(sender As Object, e As EventArgs) Handles Me.ResizeEnd + My.UIConfig.SearchForm.Location = Location + My.UIConfig.SearchForm.Size = Size + My.UIConfigManager.Save() End Sub End Class \ No newline at end of file From 6561c0c264bd69d1e45ee4a5ff39a22b5eb4d93b Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 18 Nov 2020 16:25:10 +0100 Subject: [PATCH 2/7] ZooFlow: Rename PreSearch to SearchPredefined --- ...mPreSearch.Designer.vb => frmSearchPredefined.Designer.vb} | 4 ++-- GUIs.ZooFlow/{frmPreSearch.resx => frmSearchPredefined.resx} | 0 GUIs.ZooFlow/{frmPreSearch.vb => frmSearchPredefined.vb} | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) rename GUIs.ZooFlow/{frmPreSearch.Designer.vb => frmSearchPredefined.Designer.vb} (99%) rename GUIs.ZooFlow/{frmPreSearch.resx => frmSearchPredefined.resx} (100%) rename GUIs.ZooFlow/{frmPreSearch.vb => frmSearchPredefined.vb} (98%) diff --git a/GUIs.ZooFlow/frmPreSearch.Designer.vb b/GUIs.ZooFlow/frmSearchPredefined.Designer.vb similarity index 99% rename from GUIs.ZooFlow/frmPreSearch.Designer.vb rename to GUIs.ZooFlow/frmSearchPredefined.Designer.vb index 4a71fba1..02515e24 100644 --- a/GUIs.ZooFlow/frmPreSearch.Designer.vb +++ b/GUIs.ZooFlow/frmSearchPredefined.Designer.vb @@ -1,5 +1,5 @@  _ -Partial Class frmPreSearch +Partial Class frmSearchPredefined Inherits DevExpress.XtraBars.Ribbon.RibbonForm 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. @@ -23,7 +23,7 @@ Partial Class frmPreSearch _ Private Sub InitializeComponent() Me.components = New System.ComponentModel.Container() - Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmPreSearch)) + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmSearchPredefined)) Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl() Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() diff --git a/GUIs.ZooFlow/frmPreSearch.resx b/GUIs.ZooFlow/frmSearchPredefined.resx similarity index 100% rename from GUIs.ZooFlow/frmPreSearch.resx rename to GUIs.ZooFlow/frmSearchPredefined.resx diff --git a/GUIs.ZooFlow/frmPreSearch.vb b/GUIs.ZooFlow/frmSearchPredefined.vb similarity index 98% rename from GUIs.ZooFlow/frmPreSearch.vb rename to GUIs.ZooFlow/frmSearchPredefined.vb index 61858212..fd6ad5b0 100644 --- a/GUIs.ZooFlow/frmPreSearch.vb +++ b/GUIs.ZooFlow/frmSearchPredefined.vb @@ -2,7 +2,7 @@ Imports DevExpress.XtraGrid Imports DevExpress.XtraBars.Ribbon Imports DigitalData.Modules.Logging -Public Class frmPreSearch +Public Class frmSearchPredefined Private Logger As Logger Public Sub New() ' Dieser Aufruf ist für den Designer erforderlich. From 907bc79627c94a4c199ce4ec70bf337fabe960a1 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 18 Nov 2020 16:25:52 +0100 Subject: [PATCH 3/7] DocumentViewer: Clean up code, fully implement new toolbar, remove custom print dialog --- .../DocumentViewer.Designer.vb | 386 ++---------------- Controls.DocumentViewer/DocumentViewer.resx | 343 ++++------------ Controls.DocumentViewer/DocumentViewer.vb | 365 ++++++----------- 3 files changed, 217 insertions(+), 877 deletions(-) diff --git a/Controls.DocumentViewer/DocumentViewer.Designer.vb b/Controls.DocumentViewer/DocumentViewer.Designer.vb index 05ed4e97..82974584 100644 --- a/Controls.DocumentViewer/DocumentViewer.Designer.vb +++ b/Controls.DocumentViewer/DocumentViewer.Designer.vb @@ -25,39 +25,10 @@ Partial Class DocumentViewer Me.components = New System.ComponentModel.Container() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(DocumentViewer)) Me.GdViewer = New GdPicture14.GdViewer() - Me.mainToolStrip = New System.Windows.Forms.ToolStrip() - Me.btnPrint = New System.Windows.Forms.ToolStripButton() - Me.btnFitWidth = New System.Windows.Forms.ToolStripButton() - Me.btnFitPage = New System.Windows.Forms.ToolStripButton() - Me.ToolStripSeparator2 = New System.Windows.Forms.ToolStripSeparator() - Me.btnMouseMode = New System.Windows.Forms.ToolStripDropDownButton() - Me.DefaultToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() - Me.PanToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() - Me.AreaSelectionToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() - Me.AreaZoomingToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() - Me.MagnifierToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() - Me.ToolStripSeparator6 = New System.Windows.Forms.ToolStripSeparator() - Me.btnFirstPage = New System.Windows.Forms.ToolStripButton() - Me.btnPreviousPage = New System.Windows.Forms.ToolStripButton() - Me.txtCurrentPageold = New System.Windows.Forms.ToolStripTextBox() - Me.lblPageCount = New System.Windows.Forms.ToolStripLabel() - Me.btnNextPage = New System.Windows.Forms.ToolStripButton() - Me.btnLastPage = New System.Windows.Forms.ToolStripButton() - Me.ToolStripSeparator1 = New System.Windows.Forms.ToolStripSeparator() - Me.btnZoomOut = New System.Windows.Forms.ToolStripButton() - Me.cbZoom = New System.Windows.Forms.ToolStripComboBox() - Me.btnZoomIn = New System.Windows.Forms.ToolStripButton() - Me.ToolStripSeparator5 = New System.Windows.Forms.ToolStripSeparator() - Me.btnRotateLeft = New System.Windows.Forms.ToolStripButton() - Me.btnRotateRight = New System.Windows.Forms.ToolStripButton() - Me.btnFlipX = New System.Windows.Forms.ToolStripButton() - Me.btnFlipY = New System.Windows.Forms.ToolStripButton() - Me.ToolStripSeparator4 = New System.Windows.Forms.ToolStripSeparator() - Me.btnSettings = New System.Windows.Forms.ToolStripButton() Me.OpenFileDialog = New System.Windows.Forms.OpenFileDialog() Me.RichEditControl1 = New DevExpress.XtraRichEdit.RichEditControl() Me.BarManager1 = New DevExpress.XtraBars.BarManager(Me.components) - Me.Bar2 = New DevExpress.XtraBars.Bar() + Me.ToolbarDocumentViewer = New DevExpress.XtraBars.Bar() Me.buttonPrint = New DevExpress.XtraBars.BarButtonItem() Me.buttonFitWidth = New DevExpress.XtraBars.BarButtonItem() Me.buttonFitPage = New DevExpress.XtraBars.BarButtonItem() @@ -74,7 +45,6 @@ Partial Class DocumentViewer Me.buttonNextPage = New DevExpress.XtraBars.BarButtonItem() Me.buttonLastPage = New DevExpress.XtraBars.BarButtonItem() Me.buttonSettings = New DevExpress.XtraBars.BarButtonItem() - Me.Bar3 = New DevExpress.XtraBars.Bar() Me.barDockControlTop = New DevExpress.XtraBars.BarDockControl() Me.barDockControlBottom = New DevExpress.XtraBars.BarDockControl() Me.barDockControlLeft = New DevExpress.XtraBars.BarDockControl() @@ -82,7 +52,7 @@ Partial Class DocumentViewer Me.RepositoryItemTextEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit() Me.SpreadsheetControl1 = New DevExpress.XtraSpreadsheet.SpreadsheetControl() Me.PrintDocument1 = New System.Drawing.Printing.PrintDocument() - Me.mainToolStrip.SuspendLayout() + Me.BarStaticItem1 = New DevExpress.XtraBars.BarStaticItem() CType(Me.BarManager1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).BeginInit() @@ -121,7 +91,7 @@ Partial Class DocumentViewer Me.GdViewer.HQAnnotationRendering = True Me.GdViewer.IgnoreDocumentResolution = False Me.GdViewer.KeepDocumentPosition = False - Me.GdViewer.Location = New System.Drawing.Point(0, 67) + Me.GdViewer.Location = New System.Drawing.Point(0, 33) Me.GdViewer.LockViewer = False Me.GdViewer.MagnifierHeight = 90 Me.GdViewer.MagnifierWidth = 160 @@ -151,7 +121,7 @@ Partial Class DocumentViewer Me.GdViewer.ScrollLargeChange = CType(50, Short) Me.GdViewer.ScrollSmallChange = CType(1, Short) Me.GdViewer.SilentMode = True - Me.GdViewer.Size = New System.Drawing.Size(1015, 504) + Me.GdViewer.Size = New System.Drawing.Size(1015, 557) Me.GdViewer.TabIndex = 0 Me.GdViewer.ViewRotation = System.Drawing.RotateFlipType.RotateNoneFlipNone Me.GdViewer.Zoom = 1.0R @@ -159,255 +129,6 @@ Partial Class DocumentViewer Me.GdViewer.ZoomMode = GdPicture14.ViewerZoomMode.ZoomMode100 Me.GdViewer.ZoomStep = 25 ' - 'mainToolStrip - ' - Me.mainToolStrip.Font = New System.Drawing.Font("Tahoma", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.mainToolStrip.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden - Me.mainToolStrip.ImageScalingSize = New System.Drawing.Size(24, 24) - Me.mainToolStrip.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.btnPrint, Me.btnFitWidth, Me.btnFitPage, Me.ToolStripSeparator2, Me.btnMouseMode, Me.ToolStripSeparator6, Me.btnFirstPage, Me.btnPreviousPage, Me.txtCurrentPageold, Me.lblPageCount, Me.btnNextPage, Me.btnLastPage, Me.ToolStripSeparator1, Me.btnZoomOut, Me.cbZoom, Me.btnZoomIn, Me.ToolStripSeparator5, Me.btnRotateLeft, Me.btnRotateRight, Me.btnFlipX, Me.btnFlipY, Me.ToolStripSeparator4, Me.btnSettings}) - Me.mainToolStrip.Location = New System.Drawing.Point(0, 36) - Me.mainToolStrip.Name = "mainToolStrip" - Me.mainToolStrip.Size = New System.Drawing.Size(1015, 31) - Me.mainToolStrip.TabIndex = 6 - Me.mainToolStrip.Text = "ToolStrip1" - ' - 'btnPrint - ' - Me.btnPrint.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnPrint.Image = CType(resources.GetObject("btnPrint.Image"), System.Drawing.Image) - Me.btnPrint.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnPrint.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnPrint.Name = "btnPrint" - Me.btnPrint.Size = New System.Drawing.Size(28, 28) - Me.btnPrint.Text = "Print document" - ' - 'btnFitWidth - ' - Me.btnFitWidth.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnFitWidth.Image = CType(resources.GetObject("btnFitWidth.Image"), System.Drawing.Image) - Me.btnFitWidth.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnFitWidth.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnFitWidth.Name = "btnFitWidth" - Me.btnFitWidth.Size = New System.Drawing.Size(28, 28) - Me.btnFitWidth.Text = "Adjust to page width" - ' - 'btnFitPage - ' - Me.btnFitPage.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnFitPage.Image = CType(resources.GetObject("btnFitPage.Image"), System.Drawing.Image) - Me.btnFitPage.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnFitPage.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnFitPage.Name = "btnFitPage" - Me.btnFitPage.Size = New System.Drawing.Size(28, 28) - Me.btnFitPage.Text = "Adjust to whole page" - ' - 'ToolStripSeparator2 - ' - Me.ToolStripSeparator2.Margin = New System.Windows.Forms.Padding(10, 0, 10, 0) - Me.ToolStripSeparator2.Name = "ToolStripSeparator2" - Me.ToolStripSeparator2.Size = New System.Drawing.Size(6, 31) - ' - 'btnMouseMode - ' - Me.btnMouseMode.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnMouseMode.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DefaultToolStripMenuItem, Me.PanToolStripMenuItem, Me.AreaSelectionToolStripMenuItem, Me.AreaZoomingToolStripMenuItem, Me.MagnifierToolStripMenuItem}) - Me.btnMouseMode.Image = CType(resources.GetObject("btnMouseMode.Image"), System.Drawing.Image) - Me.btnMouseMode.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnMouseMode.Name = "btnMouseMode" - Me.btnMouseMode.Size = New System.Drawing.Size(37, 28) - Me.btnMouseMode.Text = "Mouse mode" - ' - 'DefaultToolStripMenuItem - ' - Me.DefaultToolStripMenuItem.CheckOnClick = True - Me.DefaultToolStripMenuItem.Name = "DefaultToolStripMenuItem" - Me.DefaultToolStripMenuItem.Size = New System.Drawing.Size(151, 22) - Me.DefaultToolStripMenuItem.Text = "Default" - ' - 'PanToolStripMenuItem - ' - Me.PanToolStripMenuItem.Checked = True - Me.PanToolStripMenuItem.CheckOnClick = True - Me.PanToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked - Me.PanToolStripMenuItem.Name = "PanToolStripMenuItem" - Me.PanToolStripMenuItem.Size = New System.Drawing.Size(151, 22) - Me.PanToolStripMenuItem.Text = "Pan" - ' - 'AreaSelectionToolStripMenuItem - ' - Me.AreaSelectionToolStripMenuItem.CheckOnClick = True - Me.AreaSelectionToolStripMenuItem.Name = "AreaSelectionToolStripMenuItem" - Me.AreaSelectionToolStripMenuItem.Size = New System.Drawing.Size(151, 22) - Me.AreaSelectionToolStripMenuItem.Text = "Area selection" - ' - 'AreaZoomingToolStripMenuItem - ' - Me.AreaZoomingToolStripMenuItem.CheckOnClick = True - Me.AreaZoomingToolStripMenuItem.Name = "AreaZoomingToolStripMenuItem" - Me.AreaZoomingToolStripMenuItem.Size = New System.Drawing.Size(151, 22) - Me.AreaZoomingToolStripMenuItem.Text = "Area zooming" - ' - 'MagnifierToolStripMenuItem - ' - Me.MagnifierToolStripMenuItem.CheckOnClick = True - Me.MagnifierToolStripMenuItem.Name = "MagnifierToolStripMenuItem" - Me.MagnifierToolStripMenuItem.Size = New System.Drawing.Size(151, 22) - Me.MagnifierToolStripMenuItem.Text = "Magnifier" - ' - 'ToolStripSeparator6 - ' - Me.ToolStripSeparator6.Margin = New System.Windows.Forms.Padding(5, 0, 10, 0) - Me.ToolStripSeparator6.Name = "ToolStripSeparator6" - Me.ToolStripSeparator6.Size = New System.Drawing.Size(6, 31) - ' - 'btnFirstPage - ' - Me.btnFirstPage.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnFirstPage.Image = CType(resources.GetObject("btnFirstPage.Image"), System.Drawing.Image) - Me.btnFirstPage.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnFirstPage.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnFirstPage.Name = "btnFirstPage" - Me.btnFirstPage.Size = New System.Drawing.Size(28, 28) - Me.btnFirstPage.Text = "Go to first page" - ' - 'btnPreviousPage - ' - Me.btnPreviousPage.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnPreviousPage.Image = CType(resources.GetObject("btnPreviousPage.Image"), System.Drawing.Image) - Me.btnPreviousPage.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnPreviousPage.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnPreviousPage.Name = "btnPreviousPage" - Me.btnPreviousPage.Size = New System.Drawing.Size(28, 28) - Me.btnPreviousPage.Text = "Go to previous page" - ' - 'txtCurrentPageold - ' - Me.txtCurrentPageold.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.txtCurrentPageold.Name = "txtCurrentPageold" - Me.txtCurrentPageold.Size = New System.Drawing.Size(40, 31) - Me.txtCurrentPageold.TextBoxTextAlign = System.Windows.Forms.HorizontalAlignment.Right - ' - 'lblPageCount - ' - Me.lblPageCount.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblPageCount.Name = "lblPageCount" - Me.lblPageCount.Size = New System.Drawing.Size(25, 28) - Me.lblPageCount.Text = "/ X" - ' - 'btnNextPage - ' - Me.btnNextPage.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnNextPage.Image = CType(resources.GetObject("btnNextPage.Image"), System.Drawing.Image) - Me.btnNextPage.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnNextPage.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnNextPage.Name = "btnNextPage" - Me.btnNextPage.Size = New System.Drawing.Size(28, 28) - Me.btnNextPage.Text = "Go to next page" - ' - 'btnLastPage - ' - Me.btnLastPage.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnLastPage.Image = CType(resources.GetObject("btnLastPage.Image"), System.Drawing.Image) - Me.btnLastPage.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnLastPage.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnLastPage.Name = "btnLastPage" - Me.btnLastPage.Size = New System.Drawing.Size(28, 28) - Me.btnLastPage.Text = "Go to last page" - ' - 'ToolStripSeparator1 - ' - Me.ToolStripSeparator1.Margin = New System.Windows.Forms.Padding(10, 0, 10, 0) - Me.ToolStripSeparator1.Name = "ToolStripSeparator1" - Me.ToolStripSeparator1.Size = New System.Drawing.Size(6, 31) - ' - 'btnZoomOut - ' - Me.btnZoomOut.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnZoomOut.Image = CType(resources.GetObject("btnZoomOut.Image"), System.Drawing.Image) - Me.btnZoomOut.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnZoomOut.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnZoomOut.Name = "btnZoomOut" - Me.btnZoomOut.Size = New System.Drawing.Size(28, 28) - Me.btnZoomOut.Text = "Zoom out" - ' - 'cbZoom - ' - Me.cbZoom.DropDownWidth = 200 - Me.cbZoom.Name = "cbZoom" - Me.cbZoom.Size = New System.Drawing.Size(75, 31) - ' - 'btnZoomIn - ' - Me.btnZoomIn.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnZoomIn.Image = CType(resources.GetObject("btnZoomIn.Image"), System.Drawing.Image) - Me.btnZoomIn.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnZoomIn.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnZoomIn.Name = "btnZoomIn" - Me.btnZoomIn.Size = New System.Drawing.Size(28, 28) - Me.btnZoomIn.Text = "Zoom In" - ' - 'ToolStripSeparator5 - ' - Me.ToolStripSeparator5.Margin = New System.Windows.Forms.Padding(10, 0, 10, 0) - Me.ToolStripSeparator5.Name = "ToolStripSeparator5" - Me.ToolStripSeparator5.Size = New System.Drawing.Size(6, 31) - ' - 'btnRotateLeft - ' - Me.btnRotateLeft.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnRotateLeft.Image = CType(resources.GetObject("btnRotateLeft.Image"), System.Drawing.Image) - Me.btnRotateLeft.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnRotateLeft.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnRotateLeft.Name = "btnRotateLeft" - Me.btnRotateLeft.Size = New System.Drawing.Size(28, 28) - Me.btnRotateLeft.Text = "Rotate left" - ' - 'btnRotateRight - ' - Me.btnRotateRight.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnRotateRight.Image = CType(resources.GetObject("btnRotateRight.Image"), System.Drawing.Image) - Me.btnRotateRight.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnRotateRight.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnRotateRight.Name = "btnRotateRight" - Me.btnRotateRight.Size = New System.Drawing.Size(28, 28) - Me.btnRotateRight.Text = "Rotate right" - ' - 'btnFlipX - ' - Me.btnFlipX.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnFlipX.Image = CType(resources.GetObject("btnFlipX.Image"), System.Drawing.Image) - Me.btnFlipX.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnFlipX.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnFlipX.Name = "btnFlipX" - Me.btnFlipX.Size = New System.Drawing.Size(28, 28) - Me.btnFlipX.Text = "Vertical flip" - ' - 'btnFlipY - ' - Me.btnFlipY.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnFlipY.Image = CType(resources.GetObject("btnFlipY.Image"), System.Drawing.Image) - Me.btnFlipY.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnFlipY.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnFlipY.Name = "btnFlipY" - Me.btnFlipY.Size = New System.Drawing.Size(28, 28) - Me.btnFlipY.Text = "Horizontal flip" - ' - 'ToolStripSeparator4 - ' - Me.ToolStripSeparator4.Margin = New System.Windows.Forms.Padding(10, 0, 10, 0) - Me.ToolStripSeparator4.Name = "ToolStripSeparator4" - Me.ToolStripSeparator4.Size = New System.Drawing.Size(6, 31) - ' - 'btnSettings - ' - Me.btnSettings.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnSettings.Image = CType(resources.GetObject("btnSettings.Image"), System.Drawing.Image) - Me.btnSettings.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnSettings.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnSettings.Name = "btnSettings" - Me.btnSettings.Size = New System.Drawing.Size(28, 28) - Me.btnSettings.Text = "Viewer settings" - ' 'OpenFileDialog ' Me.OpenFileDialog.FileName = "OpenFileDialog1" @@ -427,30 +148,29 @@ Partial Class DocumentViewer ' 'BarManager1 ' - Me.BarManager1.Bars.AddRange(New DevExpress.XtraBars.Bar() {Me.Bar2, Me.Bar3}) + Me.BarManager1.Bars.AddRange(New DevExpress.XtraBars.Bar() {Me.ToolbarDocumentViewer}) Me.BarManager1.DockControls.Add(Me.barDockControlTop) Me.BarManager1.DockControls.Add(Me.barDockControlBottom) Me.BarManager1.DockControls.Add(Me.barDockControlLeft) Me.BarManager1.DockControls.Add(Me.barDockControlRight) Me.BarManager1.Form = Me - Me.BarManager1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.buttonPrint, Me.buttonFitPage, Me.buttonFitWidth, Me.buttonZoomIn, Me.buttonZoomOut, Me.buttonRotateRight, Me.buttonRotateLeft, Me.buttonFlipX, Me.buttonFlipY, Me.buttonSettings, Me.buttonPrevPage, Me.buttonNextPage, Me.buttonFirstPage, Me.buttonLastPage, Me.txtCurrentPage}) - Me.BarManager1.MainMenu = Me.Bar2 - Me.BarManager1.MaxItemId = 17 + Me.BarManager1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.buttonPrint, Me.buttonFitPage, Me.buttonFitWidth, Me.buttonZoomIn, Me.buttonZoomOut, Me.buttonRotateRight, Me.buttonRotateLeft, Me.buttonFlipX, Me.buttonFlipY, Me.buttonSettings, Me.buttonPrevPage, Me.buttonNextPage, Me.buttonFirstPage, Me.buttonLastPage, Me.txtCurrentPage, Me.BarStaticItem1}) + Me.BarManager1.MainMenu = Me.ToolbarDocumentViewer + Me.BarManager1.MaxItemId = 18 Me.BarManager1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemTextEdit1, Me.RepositoryItemTextEdit2}) - Me.BarManager1.StatusBar = Me.Bar3 ' - 'Bar2 + 'ToolbarDocumentViewer ' - Me.Bar2.BarName = "Hauptmenü" - Me.Bar2.DockCol = 0 - Me.Bar2.DockRow = 0 - Me.Bar2.DockStyle = DevExpress.XtraBars.BarDockStyle.Top - Me.Bar2.LinksPersistInfo.AddRange(New DevExpress.XtraBars.LinkPersistInfo() {New DevExpress.XtraBars.LinkPersistInfo(Me.buttonPrint), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFitWidth), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFitPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonZoomIn), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonZoomOut), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonRotateLeft), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonRotateRight), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFlipX), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFlipY), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFirstPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonPrevPage), New DevExpress.XtraBars.LinkPersistInfo(Me.txtCurrentPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonNextPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonLastPage), New DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, Me.buttonSettings, DevExpress.XtraBars.BarItemPaintStyle.Standard)}) - Me.Bar2.OptionsBar.AllowCollapse = True - Me.Bar2.OptionsBar.AllowQuickCustomization = False - Me.Bar2.OptionsBar.DrawDragBorder = False - Me.Bar2.OptionsBar.UseWholeRow = True - Me.Bar2.Text = "Hauptmenü" + Me.ToolbarDocumentViewer.BarName = "Hauptmenü" + Me.ToolbarDocumentViewer.DockCol = 0 + Me.ToolbarDocumentViewer.DockRow = 0 + Me.ToolbarDocumentViewer.DockStyle = DevExpress.XtraBars.BarDockStyle.Top + Me.ToolbarDocumentViewer.LinksPersistInfo.AddRange(New DevExpress.XtraBars.LinkPersistInfo() {New DevExpress.XtraBars.LinkPersistInfo(Me.buttonPrint), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFitWidth), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFitPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonZoomIn), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonZoomOut), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonRotateLeft), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonRotateRight), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFlipX), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFlipY), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFirstPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonPrevPage), New DevExpress.XtraBars.LinkPersistInfo(Me.txtCurrentPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonNextPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonLastPage), New DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, Me.buttonSettings, DevExpress.XtraBars.BarItemPaintStyle.Standard)}) + Me.ToolbarDocumentViewer.OptionsBar.AllowCollapse = True + Me.ToolbarDocumentViewer.OptionsBar.AllowQuickCustomization = False + Me.ToolbarDocumentViewer.OptionsBar.DrawDragBorder = False + Me.ToolbarDocumentViewer.OptionsBar.UseWholeRow = True + Me.ToolbarDocumentViewer.Text = "Hauptmenü" ' 'buttonPrint ' @@ -578,49 +298,37 @@ Partial Class DocumentViewer Me.buttonSettings.ImageOptions.SvgImageSize = New System.Drawing.Size(25, 25) Me.buttonSettings.Name = "buttonSettings" ' - 'Bar3 - ' - Me.Bar3.BarName = "Statusleiste" - Me.Bar3.CanDockStyle = DevExpress.XtraBars.BarCanDockStyle.Bottom - Me.Bar3.DockCol = 0 - Me.Bar3.DockRow = 0 - Me.Bar3.DockStyle = DevExpress.XtraBars.BarDockStyle.Bottom - Me.Bar3.OptionsBar.AllowQuickCustomization = False - Me.Bar3.OptionsBar.DrawDragBorder = False - Me.Bar3.OptionsBar.UseWholeRow = True - Me.Bar3.Text = "Statusleiste" - ' 'barDockControlTop ' Me.barDockControlTop.CausesValidation = False Me.barDockControlTop.Dock = System.Windows.Forms.DockStyle.Top Me.barDockControlTop.Location = New System.Drawing.Point(0, 0) Me.barDockControlTop.Manager = Me.BarManager1 - Me.barDockControlTop.Size = New System.Drawing.Size(1015, 36) + Me.barDockControlTop.Size = New System.Drawing.Size(1015, 33) ' 'barDockControlBottom ' Me.barDockControlBottom.CausesValidation = False Me.barDockControlBottom.Dock = System.Windows.Forms.DockStyle.Bottom - Me.barDockControlBottom.Location = New System.Drawing.Point(0, 571) + Me.barDockControlBottom.Location = New System.Drawing.Point(0, 590) Me.barDockControlBottom.Manager = Me.BarManager1 - Me.barDockControlBottom.Size = New System.Drawing.Size(1015, 19) + Me.barDockControlBottom.Size = New System.Drawing.Size(1015, 0) ' 'barDockControlLeft ' Me.barDockControlLeft.CausesValidation = False Me.barDockControlLeft.Dock = System.Windows.Forms.DockStyle.Left - Me.barDockControlLeft.Location = New System.Drawing.Point(0, 36) + Me.barDockControlLeft.Location = New System.Drawing.Point(0, 33) Me.barDockControlLeft.Manager = Me.BarManager1 - Me.barDockControlLeft.Size = New System.Drawing.Size(0, 535) + Me.barDockControlLeft.Size = New System.Drawing.Size(0, 557) ' 'barDockControlRight ' Me.barDockControlRight.CausesValidation = False Me.barDockControlRight.Dock = System.Windows.Forms.DockStyle.Right - Me.barDockControlRight.Location = New System.Drawing.Point(1015, 36) + Me.barDockControlRight.Location = New System.Drawing.Point(1015, 33) Me.barDockControlRight.Manager = Me.BarManager1 - Me.barDockControlRight.Size = New System.Drawing.Size(0, 535) + Me.barDockControlRight.Size = New System.Drawing.Size(0, 557) ' 'RepositoryItemTextEdit1 ' @@ -638,6 +346,12 @@ Partial Class DocumentViewer Me.SpreadsheetControl1.Text = "SpreadsheetControl1" Me.SpreadsheetControl1.Visible = False ' + 'BarStaticItem1 + ' + Me.BarStaticItem1.Caption = "Seiten" + Me.BarStaticItem1.Id = 17 + Me.BarStaticItem1.Name = "BarStaticItem1" + ' 'DocumentViewer ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -645,15 +359,12 @@ Partial Class DocumentViewer Me.Controls.Add(Me.SpreadsheetControl1) Me.Controls.Add(Me.RichEditControl1) Me.Controls.Add(Me.GdViewer) - Me.Controls.Add(Me.mainToolStrip) Me.Controls.Add(Me.barDockControlLeft) Me.Controls.Add(Me.barDockControlRight) Me.Controls.Add(Me.barDockControlBottom) Me.Controls.Add(Me.barDockControlTop) Me.Name = "DocumentViewer" Me.Size = New System.Drawing.Size(1015, 590) - Me.mainToolStrip.ResumeLayout(False) - Me.mainToolStrip.PerformLayout() CType(Me.BarManager1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).EndInit() @@ -663,41 +374,12 @@ Partial Class DocumentViewer End Sub Friend WithEvents GdViewer As GdPicture14.GdViewer - Friend WithEvents mainToolStrip As ToolStrip - Friend WithEvents btnPrint As ToolStripButton - Friend WithEvents btnFitWidth As ToolStripButton - Friend WithEvents btnFitPage As ToolStripButton - Friend WithEvents ToolStripSeparator2 As ToolStripSeparator - Friend WithEvents btnMouseMode As ToolStripDropDownButton - Friend WithEvents DefaultToolStripMenuItem As ToolStripMenuItem - Friend WithEvents PanToolStripMenuItem As ToolStripMenuItem - Friend WithEvents AreaSelectionToolStripMenuItem As ToolStripMenuItem - Friend WithEvents AreaZoomingToolStripMenuItem As ToolStripMenuItem - Friend WithEvents MagnifierToolStripMenuItem As ToolStripMenuItem - Friend WithEvents ToolStripSeparator6 As ToolStripSeparator - Friend WithEvents btnFirstPage As ToolStripButton - Friend WithEvents btnPreviousPage As ToolStripButton - Friend WithEvents txtCurrentPageold As ToolStripTextBox - Friend WithEvents lblPageCount As ToolStripLabel - Friend WithEvents btnNextPage As ToolStripButton - Friend WithEvents btnLastPage As ToolStripButton - Friend WithEvents ToolStripSeparator1 As ToolStripSeparator - Friend WithEvents btnZoomOut As ToolStripButton - Friend WithEvents cbZoom As ToolStripComboBox - Friend WithEvents btnZoomIn As ToolStripButton - Friend WithEvents ToolStripSeparator5 As ToolStripSeparator - Friend WithEvents btnRotateLeft As ToolStripButton - Friend WithEvents btnRotateRight As ToolStripButton - Friend WithEvents btnFlipX As ToolStripButton - Friend WithEvents btnFlipY As ToolStripButton - Friend WithEvents ToolStripSeparator4 As ToolStripSeparator - Friend WithEvents btnSettings As ToolStripButton Friend WithEvents OpenFileDialog As OpenFileDialog Friend WithEvents RichEditControl1 As DevExpress.XtraRichEdit.RichEditControl Friend WithEvents SpreadsheetControl1 As DevExpress.XtraSpreadsheet.SpreadsheetControl Friend WithEvents PrintDocument1 As Printing.PrintDocument Friend WithEvents BarManager1 As DevExpress.XtraBars.BarManager - Friend WithEvents Bar2 As DevExpress.XtraBars.Bar + Friend WithEvents ToolbarDocumentViewer As DevExpress.XtraBars.Bar Friend WithEvents buttonPrint As DevExpress.XtraBars.BarButtonItem Friend WithEvents buttonFitWidth As DevExpress.XtraBars.BarButtonItem Friend WithEvents buttonFitPage As DevExpress.XtraBars.BarButtonItem @@ -708,7 +390,6 @@ Partial Class DocumentViewer Friend WithEvents buttonFlipX As DevExpress.XtraBars.BarButtonItem Friend WithEvents buttonFlipY As DevExpress.XtraBars.BarButtonItem Friend WithEvents buttonSettings As DevExpress.XtraBars.BarButtonItem - Friend WithEvents Bar3 As DevExpress.XtraBars.Bar Friend WithEvents barDockControlTop As DevExpress.XtraBars.BarDockControl Friend WithEvents barDockControlBottom As DevExpress.XtraBars.BarDockControl Friend WithEvents barDockControlLeft As DevExpress.XtraBars.BarDockControl @@ -720,4 +401,5 @@ Partial Class DocumentViewer Friend WithEvents txtCurrentPage As DevExpress.XtraBars.BarEditItem Friend WithEvents RepositoryItemTextEdit2 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit Friend WithEvents RepositoryItemTextEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit + Friend WithEvents BarStaticItem1 As DevExpress.XtraBars.BarStaticItem End Class diff --git a/Controls.DocumentViewer/DocumentViewer.resx b/Controls.DocumentViewer/DocumentViewer.resx index db9f24aa..d40b2bef 100644 --- a/Controls.DocumentViewer/DocumentViewer.resx +++ b/Controls.DocumentViewer/DocumentViewer.resx @@ -117,211 +117,6 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 17, 17 - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAFiSURBVEhLvVUxTsNAEDQgGv5EnuDOtTs/wJJlN+gaGuQP - QANVPuCUiDdYLlzwjSjIBeaOncstOZ+xfEkwI41udrW7c5vYcjCFPM8lUeEsimJwMhEzTZsfhBCXNED5 - 4miDJEmulzUQ4mbhDZ70BlJKPcA+mRwDRxmsio06h2bMAeT+FobhF56Kvu/VbV4RHySKcdrazrkxNNi2 - rX664jj+zLJsDYOfR+8vDczMXhswYcCFp5L/E+bSG8iBQdd1StyvqaHSxXuzg7ZzbgyN3qZppg2qqlJ1 - XUvcAqvitLWdc2No9JZlOTZYkoMN5rSdc+Mp/T8baGEAPXUjO+fGUxoDdcImF/nCHcoabzM+LBtKjExA - X/zWS+yJj+aHGQNFjJfXd/XsEDkGbouPlGn1g20wh7MN5jZAbRRFV6bVD+4G7pvLMXDqBlvTP4s0TT+o - 5WLf6Qm6FXkUW2wywx3xzrQ5CIJv4BbZuctiXasAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADqSURBVEhLzZYxCoMwFIY9T+9Q8BiC3iAudmj3Utw8jD2A - Im7duvUEnTt2iHnllwaMRnmxSv3ghwwv73uPLPF2x1zuT1daI+jt4fB8vVcJehuC8yWlKIooCAJWUJsk - B7rdH0ZjnYEgDENyAYKqqkgIYZUMBJjKBdQ3TUN1XVsliwlAWZYk4tiQTAqyLBuNpisARVG0m7AEHFDf - D96FJbBNrqNRShmRUvIFHH4S2CafCsB7oAdLMAcngW3KqYBtbTAXJ4Hv+9/TOP0atgAXuYJuHUugL7kG - bGMDDVfQxUkwh/8Klk4rWPfbkssPTk9lK76uM3AAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABjSURBVEhLY9Aq2/jHtnzTf1pgkNkMIMazDz9ogkFm09+C - 8vLy/8XFxWRjZLOwWgBSRC4YfBb09PQQhWFg1AcEwagPcGIYGPUBQTACfUAqGDwWUIKRzcJqATUxfSyg - bbNl4x8AxmOG+ql7uj8AAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHASURBVEhLnZM9LwRRGIU38VVp/AG9RqFBZkaodBo6CZVG - RAg7IwoFIRGJiB9AyZJg7mbjo6AhIbIUaglKOkJCuO4Z7yYT96yZ9SRPbua+95zZnd3JlKOvL1fl+Pl+ - N1Chl1X3jQNrH16g9HzuSmONrs0+5jiH8xJNpnVsv8HJqjMU/Xb79NbagziPnFT8jflUBVbSu3Ck5zaL - 0crmyElFebwp5bIwfH571wArm0eavFRxPD9cpUFjHDaPNHmp4jiT6oIGjXHYHCIvVRxnXD2xIIzD5hB5 - qeJ4PeqTBWEcNo80eamy6Zg5rqYhY9d0Xl/fPukX8wNjxTU7B6XOpmXosoYF4mbXzul+yQ6j1NmUbnBQ - fPiX+Yu76CZSZ8O+AR7FwPKJ9tfP9exGUS9sXUUrrrHPHpXU2aR5RGmUOpummVwtC1Sq1Nl0jxTqWKBS - pc7m52+6+MVC6V38kjrOX29yGhPfZCdQhyyYVuSliuP64TALphV5qeK0T+7WtwXqkYWTRA55qSqP6+8N - soIkkZOKZFxfrbCScuK8RNPjBuFE8+jOGyssiTnOSaRyOqfzjU4QLpmyG+NrzBvsYy5HCZnMN31vuEob - G6vIAAAAAElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGgSURBVEhLxVRLS8NAEF7UnkVRPHr32oNCsgmIf0CkKIp4 - 69lXsltEgiCiP8GTd1FsdosIHvwDoqCo/0HwefWZaSc4bNOalFY/GDKZx/ftDMmyTmC8FA6h214AMRdq - h/uHLxhizJH6i9rwwt4bplLDXVYDXKptS6rnmAdTjHERfIJBEJ5ZBOzS8aAt1FbU+2ryYElrAkDMhd4c - FeqJ9lIfS7OtyJaVPiB2Fg8ezT7TsCXdBGNLJ/3cDzcsUdsxrW/kY2tzgeqJpV7nInww61ILQIBaLOBI - teaslO/NfFqrkgPqTuGqD9hxXdx4p/EkH+kTBJr49P23eqT/AwEIdMKQ/h8mGJH6PbpTrsx4VkP65P9g - Qpz2WkJPWp66cOTP6Wld/GzkI32yAKZYobDfHV2/U9GPdmnWpRaAALWkq8INznpcWSlkWR22Np+gDkHQ - Fd3709YqCNX6aC/1sSOjAAImsn09Y/vla9pLfSxNt6JGyBfPc46vZi0Z3po8WNLaBCaqH4On57ivbuLV - Yaq9yBd3c65U87Z3dIehzgBWV/MY+wayRSrlbBFxbgAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHKSURBVEhLY6AZqK9ngrKoC4zTzrDalG0OsS3bdAIqRB1g - X7+fw7Z8U4pdxeYbQPwfhKFSlAH7/PUCduWbyy1KNz2zLa//BzIYRIMwVAl5wKlqszTQxZ02RZveIBtK - sQU2FVvV7Mo2T7esWPsFFhS4MFQLMeA/o1XpBhOb8k0rtSo2/0F3KS42VDMeAExq9hVbXGzLN+yxtd/0 - F9kAiiwIDV3FbFuxKdymdPMpO/vNf0GayMFQ4xDAtXgnNzD9ptuVbryJzUXIfGRxXGyosQwMFoU7hIAp - ohSIn+LTgMzHpQaZDTbctnxjg23BmnfEaEDmE6MebIFdxZY064rN9+0qIJLUxGALQMAjdxu7fcWmWJuy - DZfxuQiZj0sNMhtqPAIAyxMWm8pNAcCMdASkkFIMNRY7sCvd4GhdvnGHfPz83zAXIbsQRuNjQ43CD+zK - NxjalG1cYZu16SeyAVSzAAaARYW6bfnmqfr567+DDCEGQ7WSBmyrtkuCSlG7io1vsbkamQ3VQh6wqdgi - aFu2sRJUD9DEAhgAFS+gvGRXsuEuyHBkDFVCHQBK4ralm6OBtdtZqvoAAwCLeKDrvaxLNx2EitAK/Gdk - YGBgAAAbpYfOsB0S1AAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHCSURBVEhLYwCD+nomCINGwLZs0wmbss0hxmlnWKFC1AV2 - FZv/Q/EN2/JNKfb1+zmgUtQBtuX1/0AYZAmItijd9MyufHO5ff56AagSygC6BTC2TdGmN0AfdTpVbZaG - KiUPQIMHJ7asWPvFrmzzdJuKrWpQLaQBXD5AZ2tVbP5jU75ppVXpBhMGhv+MUO2EAT5DkdlwMftNf23L - N+yxr9jiQlQSB2kkC9tv/mtTuvmUbcWm8NDQVcxQ4zABuktxsZHF0Pl2pRtvAvNTumvxTm6osQiAVQOp - FsDZm54CcalF4Q4hqPHUtgDKLljzzrZ8YwPYApAAdXH9P+uKzfftKrakgS3A6Qo0NrIYOh/GtinbcNm+ - YlOsR+42drDhIACSpBiXbT5iU7kpAFiOsUCNRQB8LkJmI4uBsHz8/N/W5Rt32JVucIQahR3ANBBtQdam - nzZlG1fYlW8whBqBH4A0EoP189d/ty3fPBVYVKhDtRIH0F2Kyd74FlSq2lZtl4RqIQ1gN3Tzf1C9YFu2 - sdKmYosgVCl5AGQYCi7ZcBeUhrFme3IA3NXlm8/alm6OxprUKAHWpZsOAl3uRcPWBQmVB0mAgQEAr3eH - zjV331AAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAFwSURBVEhLY4ABp8qN4lAmbYBt2dqPtuWbOmlmkV3F5v8g - bF2x6YNtxaYO+6JNIlApooF8/PzfMHNgGCoF9EF5/T+QAIiGsj/ZlG9qs6ncJgpVQhCALEA3ByqF1QIw - 27x803vb8s0txFiE1wKQIF5csOYd2KKKLYJQLRiA1CDCYINo63JgHJVtbLQo3CEE1QoHZAURMhtZzLZ8 - 41vbis21yD6iLIhw4eINr+wqNlWDzKBKEMHE0PngOLLf9BddHGo8FSzAwYYaTwcLQIK0wFDjh4APgGXY - Ja2KzX/QxaHGk+uD+n/WpZvOWZdvDnQp381P7Yx2Hli8B4eGrmKGGkGdjAYKCvuKLaH29ftZoFrhgIKM - BgyKkk2XgPVEOEN9PRNUCwYgK4hsyjZctinbHIHNxeiApCCyrth4za5sU5Rx2hlWqBKCgIggAtpatumq - benmaOTIIxbg9YFN6frr9hWbYo3TZhLtYpIAKUFBPGBgAABm6yrlDJc6ogAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAMFSURBVEhLtVXfS5NRGA6KLuqiKCSCqIsi6Da69qL+Bm/S - EHXqnNrEOdBy+ywhWFiYlFiolVYGddEPwhFlc0EgOd1sU8iKyogSKzWpZes7Pe++93yez02mSQ+8vufH - c57nfY9+xzVLweFw7CopKXEXFxc/QB4vLS2dxPg14iHm9TabbS9TV4aCgoIsCFzKzc2NQ1SnsNvtQs0c - 84jrMNrBRzMDwgcg8o6ElhuFhYWfkQ+yxNJA6/tRzYyskA5zntO0U2/PnG+d8PmaP9J8MYe6RXGHWCoV - RUVFW0B8Iw9QVFRUTAX6+z8NDQ/rQsHIyAs9GhsVTqfzp8pHTMJkJ0taAWIzkWW43e4P0Wg0QYKxWMxi - IOfhcFhva2v7o55D3GTJBVRWVmbBPdk2kcrLy6dJnIQyRSQS0TVNM68rPz//d1lZ2T6WNoANG7eYJN3p - 9U/S4WS5gDomyLnML8dfmR2QBq5JY2kDWOiSBLj/mv0+ZxHNZKDjZ8OJk6YJ9B6ztAEsPpMdVFfXTdHB - 7Np7Irv2PoKyOlbXjDnxO69eMztATLC0AThGpAHuc4qqShVb2oDQc/uuavCNpQ1g46k0qDt2fPZfOui4 - 0mUa4Ht6z9IGsNFOmxR4fxLTM7OWe1fHBDmXWccvwePVkuc5HrG0ASwclh0QodfvX5HB6NiYKU4auPJ6 - ljaAhU3Y/CJJVVVViUAgsCyDeDwuGhsbTQPEPG5hD0svAM5e2QFlj8ejB4PBtB+XjFAopLe0tJiVc+5m - SSvQxQb6a5JkCpfLJfr6nojngyFLB2F8vYOhIeH1ek1xaYBf8ABegq0sawU2d4NEr6XasjjqdArf6SZx - 4WK7aDp7TrhqauiDtHDUQKGD9HiyrBVkQp3IitTqZMi1dBw5hs4Q/eNiWSvy8vI2gtQAwtfFh1URVPkD - uRVitxbv8XgYnG0smwq895tBPAJiJzI9J1HkAXTYg7EDwtuJl5OTsx7rN0g0TYwkxVYLmKyFaTci5bqY - snrgHVuH7i7/NwMCm3QsXJFd/AWPqx8HPwbksAAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAMJSURBVEhLtZXLa1NREMYFxYUuFKWIILpQBLfi2oD+Dd3Y - SGiatHkQE0JsI6nGlQEV20XTotQHVq2gGxWxSBsXYqVQK0ptwaqggmBKkzRtk/SmzfGbnDnem5vEV/GD - 4Zx7zsxvZu7j3HX15PF49rS2tp50Op2PMc60tbUlMf8Ie4rrTofDsZ9d/07Nzc0NAFxpamoqAFoic7lc - wjiyabDbSLSLQ38vgA8B8plAf2p2u/07xiOMqC+0fhDVzKsKKZjGE36/FovF0v03bolz3T1zfr8/b/ah - blHcUUZVq6WlZRscP6kAsmAwmHsx+lIUlpeFUSsrq2Ly3ZTo6OhIG/1hSSTZzchKwbGbnJVFo1Etk8kw - UojD4Uc/TUnTNBGPx3PGONhdRury+XwNyL5IVZBTIBAopFIpxkhJ+ENhOaUnIBWLRREOh+dUrM1mK7rd - 7gOMlsKGg1ssOw2PJDhcV70EpPczH4TFYlmlWGLgNkUZLYWFm7RJ5vV6V7ILixyqq9YtUiqVhGhvb59X - DPBGGC2FxVHVAR7sEgVRtarqyrlxTV6Tevv6kgRnzldGSyHjG5XgwsVL5YBq2K8TDN5/UK6eOWlGS2Hj - uUoQ6Tyd+5cEPYYO8D19YbQUNvppk4weVmY+Ww4ySoKlmVXCQwiFQguKARtmtBQWjqkOyOHJ0BCH6lKV - 13qLpqanzW9RJ6OlsLAFm3PkQIZTdDmZTHK4VL0OCoWCiEQiGRUL0xC/j9G6kPmM6oBG+mBmZ2cZU7uD - fD4vurq6zOfSACMrhS420dukEpBRJ4nEM7GUyzNSSsPXO/5qgs6irNGf5njAY/iWtjO2UtjcC6dv5Gg0 - 6gZnUzZ+uR9n1PmMH0cJ1svAWoZCx+nwZGylKAl1oioyVmdeM18b5+BM0I+LsZWyWq2b4XQWDilzsBGC - KnMYewG7Z97j+Wv47GBstfBj2QrH43C8hpGOk0mMY+hwEHMPwDvJr7GxcSPW7xC0hr0tw9YqJFmPpAOw - qtvFLmsXXoQN6O76f0tA4iRX9VvkEj8A7rUQUD17WhUAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGWSURBVEhLYxgFQxcIRS76r5K64j+D/2wvqBB5oNt1JzeU - CQcgw00K1/8XCF9QBRUiHzTZL7wLZYIBzHDl5BXboELkgxanpWZNjov/Q7kMglFLwIbDMCiIQFg5duEH - lZTlPlBlxIN628VPkC0AAZgPTArXrTbMX5uukLJsHohvlL/2P5DdDlVGGABdHwoyHN0CEIBZopC0RB4q - xGCUs/YJyBLl1OVWUCH8oN5x9jdcFoCAMjBoQJYIhC3SBwt4TGQH+6Rw/SkwHx9ocViSBzMclwVwkDaT - FcpiUExZtg9kCZSLGyAb3uRAwAIkIBK22AjkMygXOwAa2I3Lgq6ursNQJnlgVegqZhTD0Szo6en639PT - A8LhUCHSQIPj4uVEWvC/u7v7ZH19PRtUijDosl8lgWE4HguQcDZUGj9otF90kEwLQPgOEItAlWGCFvsl - BlgNB2HiLABjYLA1QJWiAmCRcAer4SBMggVQ/LK3t1cFqoWBodl+oQtWg2GYdAtgeDJYU5P94odYDYZh - 8i0A4d9QrUMWMDAAAILEw1YcpEAAAAAAAElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGVSURBVEhLYxgFgxz4z/ZSSV3xXyhy0X+oCPWBQPiCKpPC - 9Vgt6XbdyQ1lUgaUk1dsw2ZJk/3Cu1AmaUAlZbmPcuzCD6DgAWGQ4TAsGLUEbkmT4+L/LU5LzaBc4oBC - yrJ2o/y1YMOA7HmG+WvTTQrXrcbqA6AF9baLn0C5hIFy6nIrkOFGOWvhmhSSlshjMxwEQBZAfREKFcIP - jArXnwIZxuAxkR3EFwhbpA/iKwODCawADcAsqHec/Q0qhB+ADFNMWbYPymVgSJvJCmVhBTALwL5wWJIH - FcYNQC4VCVtsBOUSBE0OCAtAGCpMGejq6joMZWJYAOR3Q6VIBz09PeFA/L+npwuRTNEtAOJVoauYodLE - gfr6erbu7u6TEMMJW9DguHg5VJowABqYjTCYOAtAuMt+lQRUCXYANEgEiO+gGky8BY32iw5ClWACYHA0 - YDcYhglbAMIt9ksMoMogoLe3VwVowEtMA9ExcRYAi5A7UGXgIJmMaRAuTJwFINxsv9AFZPhvTEPwYeIt - aLJf/BCqdMgCBgYAkcvDVut4kSMAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE0SURBVEhL7ZS7SsRAFIYHrH0sBUEwF/CCL2DlC1gErLZI - dqpcilQWCpnVwmdSLLTRxs7xzPBHx+HsJJvY6QcfJHMO/5+FbMQ/v0JVVRqXlkWsXnE5n7quT/2CIlE6 - j293cDsPKeU7V7CI1ANup9M0zZkJ5wqMy1Tt4mgaWZZ9hArIRxxtDoWe9+GBAi3Tuz0cb4YbHiooDtQT - jsdDb87F6AIyj9Q+RuPww4cKyGeMhqGnv5xQoGWyijAOw4UbMbZwBXly84Lxeiio8IN7sWLhCoz0vzjE - Cg8X3IsVCxduDH6jKKT0Q12xZuHCv4y7Y6x903XdFhfqilULGwzZX1GW5RUX6opVCxfsKlN1glUh2rbd - 5gJ9sW7hQn96/YZV+97npB4S65ZlstJDlkf38760fwUhPgGKJwQTUizyuQAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEISURBVEhL7ZK9isJAFIUDW/tYCoJgMgF18QWsfAGLgJVF - xqkmSZHKYoWMWvhMioU2a2NnvEIu6HDJjxmtPHAgE3K+r5hYJhPHcSMMQz87mkuSJD9SykUQBCkI0uy1 - mQBU3sFYYwKA8UcwtrYAAFMKjH1ZAMMJBdRbWQCjsQ7Ja2lBFEUjz/OuFCSvhQL4YCiEuFDjMs0VUIOq - rXwH3zxl5qh/zlRap3O2yr8D31k3Z7baUeMyLRRg5q5qwWCvA4paWoAR7qbNu+pAwahWFmB8W3UAcNSB - el8WYARb2T5bnij4vbUFGLijHvXXGRNguJMMHkXGBRjhql/O/s5vE2Bkf9vKHj8Ry7oBzv0EE7Wccj4A - AAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALDSURBVEhLpVY9aFNRFA6ig4sOijqpU5QK/clLcClmUVwM - CLr4g91SJcl7994X1KEQdNBJBCuIOEjRCpW+vpeKruJiFwdbHRwKXcTFRYVWqDHP892cG6/5qSH94HDP - +e453zn33hdIwiDlzZ5kVyMjQ//A2ONfxF9hqn847uxTRwSxo6IZxMMyGMqoKAY3IIKaTtoMRgrPfkCw - k6Vl9IjT+sdRt7oX00IQa6oUfGz6IpjktM3BNBguzQzo+NrzneAafFjKVl5v1Yn9wHHn90N8QEVrTGnQ - m7wHbywtouO81TscGY7/nTSKU+7cKfAZUT3S4MM4rap0VWE84kfHsOe7bkYIESulYlpvgOsKmnLFboA1 - KaZXG34YZ7zgZVY9mRoV07ey6uFu1EjPG7cavNBC3eCo6gl9fDU3Rd/+ffiNmN5DRUvIuaqKNSnlG11A - IOEI4rBisfiVafDnwFHuEFPtwG8Ap0CDjJh9pURxVSkZSz2xrGHF9Llc7jfE4PNpFiw/9jzvEEu2Az8u - NHC8cOGyuD7mUwNbkCasmxgrcXXLR4PPLNUZg2ouOegHezhMkOCimcyImBir1byOuFAo7OLS3oArgkCL - TZLYHVrXW/iYyzaGlO5FErhLtogia8r1SqWyhdM0XNf9ZnJwAvLf0hsI4kc5pR0o6GJt3z1xhZacpnFK - O7CJaXgi+wRlTmmCpr1kcqw8bZzSDnrYM1R4m465ZDegB/zCKU2Q0CeTA1FcGdk81U9wSnfgvlFsG4ks - +75/lvzTNMiH1n3aa36BPYEm+YnJUGymNDHWlmv5zmW9gQqqRtisxuzY+GhCp7rJ5RujVCrtQKFlay1x - V6Mm21lmY1ByEgV0TQ8Ql8vlfTTlMiYFT+sK7R3EHvnvmP/nD8R/kc/nt7GrQSL4AeoGJH6PaQ3iDrPb - P+j45yHOdoHpDkgk/gApB2EJ0sMvWwAAAABJRU5ErkJggg== - - 233, 25 @@ -347,26 +142,6 @@ MSwwLjksMiwyLDJoNHY0aDE2di00aDRjMS4xLDAsMi0wLjksMi0yVjEyQzMwLDEwLjksMjkuMSwxMCwy OCwxMHogTTIyLDI0djJ2MkgxMHYtMnYtMnYtNGgxMlYyNHoiIGlkPSJQcmludCIgY2xhc3M9IkJsYWNr IiAvPg0KICA8L2c+DQo8L3N2Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4CAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBlbmFibGUt - YmFja2dyb3VuZD0ibmV3IDAgMCAzMiAzMiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgaWQ9IkxheWVyXzEi - Pg0KICA8ZyBpZD0iTGF5ZXJfMV8yXyI+DQogICAgPHBvbHlnb24gcG9pbnRzPSI0LDIgNCw0IDYsNCA2 - LDIyIDQsMjIgNCwyNCA4LDI0IDgsMiAgIiBmaWxsPSIjMzc3QUI1IiAvPg0KICAgIDxwb2x5Z29uIHBv - aW50cz0iMTAsMzAgMTIsMzAgMTIsMjggMjYsMjggMjYsMzAgMjgsMzAgMjgsMjYgMTAsMjYgICIgZmls - bD0iIzM3N0FCNSIgLz4NCiAgICA8ZyBpZD0iTGF5ZXJfMV8xXyI+DQogICAgICA8cG9seWdvbiBwb2lu - dHM9IjEwLDIgMTAsMjQgMjgsMjQgMjgsOCAyMiwyICAgIiBvcGFjaXR5PSIwLjYiIC8+DQogICAgICA8 - cG9seWdvbiBwb2ludHM9IjEyLDQgMTIsMjIgMjYsMjIgMjYsMTAgMjAsMTAgMjAsNCAgICIgZmlsbD0i - I0ZGRkZGRiIgLz4NCiAgICAgIDxwb2x5Z29uIHBvaW50cz0iMjIsNCAyMiw4IDI2LDggICAiIGZpbGw9 - IiNGRkZGRkYiIC8+DQogICAgPC9nPg0KICAgIDxnIGlkPSJMYXllcl8yXzFfIiAvPg0KICA8L2c+DQog - IDxnIGlkPSJMYXllcl8yIiAvPg0KPC9zdmc+Cw== @@ -388,6 +163,26 @@ IjE2IiB3aWR0aD0iMTYiIGhlaWdodD0iMiIgcng9IjAiIHJ5PSIwIiBvcGFjaXR5PSIwLjMiIC8+DQog IDxyZWN0IHg9IjgiIHk9IjIwIiB3aWR0aD0iMTYiIGhlaWdodD0iMiIgcng9IjAiIHJ5PSIwIiBvcGFj aXR5PSIwLjMiIC8+DQo8L3N2Zz4L + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4CAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBlbmFibGUt + YmFja2dyb3VuZD0ibmV3IDAgMCAzMiAzMiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgaWQ9IkxheWVyXzEi + Pg0KICA8ZyBpZD0iTGF5ZXJfMV8yXyI+DQogICAgPHBvbHlnb24gcG9pbnRzPSI0LDIgNCw0IDYsNCA2 + LDIyIDQsMjIgNCwyNCA4LDI0IDgsMiAgIiBmaWxsPSIjMzc3QUI1IiAvPg0KICAgIDxwb2x5Z29uIHBv + aW50cz0iMTAsMzAgMTIsMzAgMTIsMjggMjYsMjggMjYsMzAgMjgsMzAgMjgsMjYgMTAsMjYgICIgZmls + bD0iIzM3N0FCNSIgLz4NCiAgICA8ZyBpZD0iTGF5ZXJfMV8xXyI+DQogICAgICA8cG9seWdvbiBwb2lu + dHM9IjEwLDIgMTAsMjQgMjgsMjQgMjgsOCAyMiwyICAgIiBvcGFjaXR5PSIwLjYiIC8+DQogICAgICA8 + cG9seWdvbiBwb2ludHM9IjEyLDQgMTIsMjIgMjYsMjIgMjYsMTAgMjAsMTAgMjAsNCAgICIgZmlsbD0i + I0ZGRkZGRiIgLz4NCiAgICAgIDxwb2x5Z29uIHBvaW50cz0iMjIsNCAyMiw4IDI2LDggICAiIGZpbGw9 + IiNGRkZGRkYiIC8+DQogICAgPC9nPg0KICAgIDxnIGlkPSJMYXllcl8yXzFfIiAvPg0KICA8L2c+DQog + IDxnIGlkPSJMYXllcl8yIiAvPg0KPC9zdmc+Cw== @@ -429,11 +224,11 @@ LDktOSw5QzgsMjIsNCwxOCw0LDEzeiIgY2xhc3M9IkJsYWNrIiAvPg0KICA8L2c+DQo8L3N2Zz4L - + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALgCAAAC77u/ + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALACAAAC77u/ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh @@ -441,18 +236,18 @@ MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9IlJvdGF0ZUNvdW50ZXJjbG9ja3dpc2UiPg0KICAg - IDxwYXRoIGQ9Ik0xOCw0QzExLjQsNCw2LDkuNCw2LDE2SDFsNyw3bDctN2gtNWMwLTQuNCwzLjYtOCw4 - LThzOCwzLjYsOCw4cy0zLjYsOC04LDhjLTEuNywwLTMuMy0wLjUtNC42LTEuNCAgIGwtMi45LDIuOWMy - LDEuNiw0LjYsMi42LDcuNCwyLjZjNi42LDAsMTItNS40LDEyLTEyQzMwLDkuNCwyNC42LDQsMTgsNHoi - IGNsYXNzPSJHcmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== + Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9IlJvdGF0ZUNsb2Nrd2lzZSI+DQogICAgPHBhdGgg + ZD0iTTE4LjYsMjIuNkMxNy4zLDIzLjUsMTUuNywyNCwxNCwyNGMtNC40LDAtOC0zLjYtOC04czMuNi04 + LDgtOHM4LDMuNiw4LDhoLTVsNyw3bDctN2gtNWMwLTYuNi01LjQtMTItMTItMTIgICBTMiw5LjQsMiwx + NmMwLDYuNiw1LjQsMTIsMTIsMTJjMi44LDAsNS40LTEsNy40LTIuNkwxOC42LDIyLjZ6IiBjbGFzcz0i + R3JlZW4iIC8+DQogIDwvZz4NCjwvc3ZnPgs= - + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALACAAAC77u/ + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALgCAAAC77u/ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh @@ -460,11 +255,11 @@ MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9IlJvdGF0ZUNsb2Nrd2lzZSI+DQogICAgPHBhdGgg - ZD0iTTE4LjYsMjIuNkMxNy4zLDIzLjUsMTUuNywyNCwxNCwyNGMtNC40LDAtOC0zLjYtOC04czMuNi04 - LDgtOHM4LDMuNiw4LDhoLTVsNyw3bDctN2gtNWMwLTYuNi01LjQtMTItMTItMTIgICBTMiw5LjQsMiwx - NmMwLDYuNiw1LjQsMTIsMTIsMTJjMi44LDAsNS40LTEsNy40LTIuNkwxOC42LDIyLjZ6IiBjbGFzcz0i - R3JlZW4iIC8+DQogIDwvZz4NCjwvc3ZnPgs= + Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9IlJvdGF0ZUNvdW50ZXJjbG9ja3dpc2UiPg0KICAg + IDxwYXRoIGQ9Ik0xOCw0QzExLjQsNCw2LDkuNCw2LDE2SDFsNyw3bDctN2gtNWMwLTQuNCwzLjYtOCw4 + LThzOCwzLjYsOCw4cy0zLjYsOC04LDhjLTEuNywwLTMuMy0wLjUtNC42LTEuNCAgIGwtMi45LDIuOWMy + LDEuNiw0LjYsMi42LDcuNCwyLjZjNi42LDAsMTItNS40LDEyLTEyQzMwLDkuNCwyNC42LDQsMTgsNHoi + IGNsYXNzPSJHcmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== @@ -501,23 +296,28 @@ L3N2Zz4L - + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAKACAAAC77u/ + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4DAAAC77u/ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMiAzMiI+DQogIDxz - dHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQo8L3N0eWxlPg0KICA8ZyBp - ZD0iTGF5ZXJfMSI+DQogICAgPHBhdGggZD0iTTguMywxNS42Yy0wLjUtMC4zLTAuNS0wLjgsMC0xLjFs - MTEuOC03LjNWNC42YzAtMC42LTAuNC0wLjgtMC45LTAuNUwyLjQsMTQuNWMtMC41LDAuMy0wLjUsMC44 - LDAsMS4xICAgbDE2LjgsMTAuM2MwLjUsMC4zLDAuOSwwLjEsMC45LTAuNXYtMi42TDguMywxNS42eiIg - Y2xhc3M9IkJsdWUiIC8+DQogICAgPHBhdGggZD0iTTEyLjMsMTQuNWMtMC41LDAuMy0wLjUsMC44LDAs - MS4xbDE2LjgsMTAuM2MwLjUsMC4zLDAuOSwwLjEsMC45LTAuNVY0LjdjMC0wLjYtMC40LTAuOC0wLjkt - MC41TDEyLjMsMTQuNXoiIGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+DQogIDxnIGlkPSJMYXllcl8yIiAv - Pg0KPC9zdmc+Cw== + Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg + MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku + WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz + OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh + Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl + Pg0KICA8ZyBpZD0iUHJvcGVydGllcyI+DQogICAgPHBhdGggZD0iTTMwLDE4di00bC00LjQtMC43Yy0w + LjItMC44LTAuNS0xLjUtMC45LTIuMWwyLjYtMy42bC0yLjgtMi44bC0zLjYsMi42Yy0wLjctMC40LTEu + NC0wLjctMi4xLTAuOUwxOCwyaC00ICAgbC0wLjcsNC40Yy0wLjgsMC4yLTEuNSwwLjUtMi4xLDAuOUw3 + LjUsNC43TDQuNyw3LjVsMi42LDMuNmMtMC40LDAuNy0wLjcsMS40LTAuOSwyLjFMMiwxNHY0bDQuNCww + LjdjMC4yLDAuOCwwLjUsMS41LDAuOSwyLjEgICBsLTIuNiwzLjZsMi44LDIuOGwzLjYtMi42YzAuNyww + LjQsMS40LDAuNywyLjEsMC45TDE0LDMwaDRsMC43LTQuNGMwLjgtMC4yLDEuNS0wLjUsMi4xLTAuOWwz + LjYsMi42bDIuOC0yLjhsLTIuNi0zLjYgICBjMC40LTAuNywwLjctMS40LDAuOS0yLjFMMzAsMTh6IE0x + NiwyMGMtMi4yLDAtNC0xLjgtNC00YzAtMi4yLDEuOC00LDQtNHM0LDEuOCw0LDRDMjAsMTguMiwxOC4y + LDIwLDE2LDIweiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs= @@ -548,6 +348,25 @@ ZT4NCiAgPHBhdGggZD0iTTguOSw0LjFDOC40LDMuOCw4LDQuMSw4LDQuNnYyMC43YzAsMC42LDAuNCww LjgsMC45LDAuNWwxNi44LTEwLjNjMC41LTAuMywwLjUtMC44LDAtMS4xTDguOSw0LjF6IiBjbGFzcz0i Qmx1ZSIgLz4NCjwvc3ZnPgs= + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z + LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl + dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAKACAAAC77u/ + PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi + IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv + MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh + Y2U9InByZXNlcnZlIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMiAzMiI+DQogIDxz + dHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQo8L3N0eWxlPg0KICA8ZyBp + ZD0iTGF5ZXJfMSI+DQogICAgPHBhdGggZD0iTTguMywxNS42Yy0wLjUtMC4zLTAuNS0wLjgsMC0xLjFs + MTEuOC03LjNWNC42YzAtMC42LTAuNC0wLjgtMC45LTAuNUwyLjQsMTQuNWMtMC41LDAuMy0wLjUsMC44 + LDAsMS4xICAgbDE2LjgsMTAuM2MwLjUsMC4zLDAuOSwwLjEsMC45LTAuNXYtMi42TDguMywxNS42eiIg + Y2xhc3M9IkJsdWUiIC8+DQogICAgPHBhdGggZD0iTTEyLjMsMTQuNWMtMC41LDAuMy0wLjUsMC44LDAs + MS4xbDE2LjgsMTAuM2MwLjUsMC4zLDAuOSwwLjEsMC45LTAuNVY0LjdjMC0wLjYtMC40LTAuOC0wLjkt + MC41TDEyLjMsMTQuNXoiIGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+DQogIDxnIGlkPSJMYXllcl8yIiAv + Pg0KPC9zdmc+Cw== @@ -567,30 +386,6 @@ MS4xTDIuOSw0LjFDMi40LDMuOCwyLDQsMiw0LjZ2MjAuNmMwLDAuNiwwLjQsMC44LDAuOSwwLjVMMTku NywxNS41eiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCiAgPGcgaWQ9IkxheWVyXzIiIC8+DQo8L3N2 Zz4L - - - - - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAO4DAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku - WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz - OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl - Pg0KICA8ZyBpZD0iUHJvcGVydGllcyI+DQogICAgPHBhdGggZD0iTTMwLDE4di00bC00LjQtMC43Yy0w - LjItMC44LTAuNS0xLjUtMC45LTIuMWwyLjYtMy42bC0yLjgtMi44bC0zLjYsMi42Yy0wLjctMC40LTEu - NC0wLjctMi4xLTAuOUwxOCwyaC00ICAgbC0wLjcsNC40Yy0wLjgsMC4yLTEuNSwwLjUtMi4xLDAuOUw3 - LjUsNC43TDQuNyw3LjVsMi42LDMuNmMtMC40LDAuNy0wLjcsMS40LTAuOSwyLjFMMiwxNHY0bDQuNCww - LjdjMC4yLDAuOCwwLjUsMS41LDAuOSwyLjEgICBsLTIuNiwzLjZsMi44LDIuOGwzLjYtMi42YzAuNyww - LjQsMS40LDAuNywyLjEsMC45TDE0LDMwaDRsMC43LTQuNGMwLjgtMC4yLDEuNS0wLjUsMi4xLTAuOWwz - LjYsMi42bDIuOC0yLjhsLTIuNi0zLjYgICBjMC40LTAuNywwLjctMS40LDAuOS0yLjFMMzAsMTh6IE0x - NiwyMGMtMi4yLDAtNC0xLjgtNC00YzAtMi4yLDEuOC00LDQtNHM0LDEuOCw0LDRDMjAsMTguMiwxOC4y - LDIwLDE2LDIweiIgY2xhc3M9IkJsdWUiIC8+DQogIDwvZz4NCjwvc3ZnPgs= diff --git a/Controls.DocumentViewer/DocumentViewer.vb b/Controls.DocumentViewer/DocumentViewer.vb index 5c4a83a3..95faa224 100644 --- a/Controls.DocumentViewer/DocumentViewer.vb +++ b/Controls.DocumentViewer/DocumentViewer.vb @@ -35,21 +35,6 @@ Public Class DocumentViewer Private _TempFiles As New List(Of String) Private Sub DocumentViewer_Load(sender As Object, e As EventArgs) Handles Me.Load - Dim zoomModes As New Dictionary(Of ZoomMode, String) From { - {ZoomMode.Zoom50, "50%"}, - {ZoomMode.Zoom100, "100%"}, - {ZoomMode.Zoom150, "150%"}, - {ZoomMode.Zoom200, "200%"}, - {ZoomMode.ZoomSelectedArea, "Zoom to selected area"}, - {ZoomMode.ZoomFitToViewer, "Fit to viewer"}, - {ZoomMode.ZoomFitWidth, "Fit to viewer width"}, - {ZoomMode.ZoomFitHeight, "Fit to viewer height"} - } - - For Each item In zoomModes - cbZoom.Items.Add(item.Value) - Next - _TempFiles.Clear() UpdateMainUi() @@ -155,7 +140,7 @@ Public Class DocumentViewer SpreadsheetControl1.Visible = False SpreadsheetControl1.Dock = DockStyle.None - mainToolStrip.Visible = False + ToolbarDocumentViewer.Visible = False Select Case oExtension.ToUpper Case ".MSG" @@ -189,7 +174,7 @@ Public Class DocumentViewer SpreadsheetControl1.Dock = DockStyle.Fill Case Else - mainToolStrip.Visible = True + ToolbarDocumentViewer.Visible = True GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter @@ -211,7 +196,7 @@ Public Class DocumentViewer SpreadsheetControl1.Visible = False SpreadsheetControl1.Dock = DockStyle.None - mainToolStrip.Visible = False + ToolbarDocumentViewer.Visible = False Select Case Extension.ToUpper Case ".MSG" @@ -246,7 +231,7 @@ Public Class DocumentViewer SpreadsheetControl1.Dock = DockStyle.Fill Case Else - mainToolStrip.Visible = True + ToolbarDocumentViewer.Visible = True GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter @@ -309,70 +294,30 @@ Public Class DocumentViewer ''' Public Sub RightOnlyView(ViewOnly As Boolean) If ViewOnly Then - btnPrint.Visible = False + buttonPrint.Visibility = XtraBars.BarItemVisibility.Never Else - btnPrint.Visible = True + buttonPrint.Visibility = XtraBars.BarItemVisibility.Always End If _hide_file_info_from_user = Not ViewOnly End Sub Private Sub UpdateMainUi() - Exit Sub - If GdViewer.PageCount = 0 Then - btnPrint.Enabled = False - btnFirstPage.Enabled = False - btnPreviousPage.Enabled = False - txtCurrentPage.Enabled = False - lblPageCount.Enabled = False - btnNextPage.Enabled = False - btnLastPage.Enabled = False - btnZoomOut.Enabled = False - cbZoom.Enabled = False - btnZoomIn.Enabled = False - btnFitPage.Enabled = False - btnFitWidth.Enabled = False - btnRotateLeft.Enabled = False - btnRotateRight.Enabled = False - btnFlipX.Enabled = False - btnFlipY.Enabled = False - txtCurrentPage.EditValue = "0" - lblPageCount.Text = "/ 0" - cbZoom.SelectedIndex = -1 - Else - btnPrint.Enabled = True - btnFirstPage.Enabled = True - btnPreviousPage.Enabled = True - txtCurrentPage.Enabled = True - lblPageCount.Enabled = True - btnNextPage.Enabled = True - btnLastPage.Enabled = True - btnZoomOut.Enabled = True - cbZoom.Enabled = True - btnZoomIn.Enabled = True - btnFitPage.Enabled = True - btnFitWidth.Enabled = True - btnRotateLeft.Enabled = True - btnRotateRight.Enabled = True - btnFlipX.Enabled = True - btnFlipY.Enabled = True - UpdateaNavigationToolbar() - End If End Sub - Private Sub btnFirstPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnFirstPage.Click, buttonFirstPage.ItemClick + Private Sub btnFirstPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonFirstPage.ItemClick GdViewer.DisplayFirstPage() End Sub - Private Sub btnPreviousPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnPreviousPage.Click, buttonPrevPage.ItemClick + Private Sub btnPreviousPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonPrevPage.ItemClick GdViewer.DisplayPreviousPage() End Sub - Private Sub btnNextPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnNextPage.Click, buttonNextPage.ItemClick + Private Sub btnNextPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonNextPage.ItemClick GdViewer.DisplayNextPage() End Sub - Private Sub btnLastPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnLastPage.Click, buttonLastPage.ItemClick + Private Sub btnLastPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonLastPage.ItemClick GdViewer.DisplayLastPage() End Sub @@ -390,43 +335,6 @@ Public Class DocumentViewer UpdateaNavigationToolbar() End Sub - Private Sub ChangeZoomValue() - If cbZoom.SelectedIndex <> -1 Then - Select Case cbZoom.SelectedIndex - Case ZoomMode.Zoom50 - GdViewer.Zoom = 50.0F / 100 - Case ZoomMode.Zoom100 - GdViewer.Zoom = 100.0F / 100 - Case ZoomMode.Zoom150 - GdViewer.Zoom = 150.0F / 100 - Case ZoomMode.Zoom200 - GdViewer.Zoom = 250.0F / 100 - Case ZoomMode.ZoomSelectedArea - If GdViewer.IsRect() Then - GdViewer.ZoomRect() - Else - GdViewer.MouseMode = ViewerMouseMode.MouseModeAreaSelection - GdViewer.Focus() - End If - Case ZoomMode.ZoomFitToViewer - GdViewer.ZoomMode = ViewerZoomMode.ZoomModeFitToViewer - Case ZoomMode.ZoomFitWidth - GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer - Case ZoomMode.ZoomFitHeight - GdViewer.ZoomMode = ViewerZoomMode.ZoomModeHeightViewer - End Select - Else - If (IsNumeric(Regex.Replace(cbZoom.Text, "[^0-9,.]", ""))) Then - GdViewer.Zoom = Val(Regex.Replace(cbZoom.Text, "[^0-9,.]", "")) / 100 - End If - End If - UpdateaNavigationToolbar() - End Sub - - Private Sub cbZoom_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As EventArgs) Handles cbZoom.SelectedIndexChanged - ChangeZoomValue() - End Sub - Private Sub GdViewer1_AfterZoomChange() Handles GdViewer.AfterZoomChange UpdateaNavigationToolbar() If GdViewer.MouseMode = ViewerMouseMode.MouseModeAreaZooming Then @@ -434,109 +342,108 @@ Public Class DocumentViewer End If End Sub - Private Sub btnZoomOut_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnZoomOut.Click, buttonZoomOut.ItemClick + Private Sub btnZoomOut_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonZoomOut.ItemClick GdViewer.ZoomOUT() End Sub - Private Sub btnZoomIn_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnZoomIn.Click, buttonZoomIn.ItemClick + Private Sub btnZoomIn_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonZoomIn.ItemClick GdViewer.ZoomIN() End Sub - Private Sub cbZoom_TextUpdate(ByVal sender As System.Object, ByVal e As EventArgs) Handles cbZoom.Validating - ChangeZoomValue() - End Sub - - Private Sub btnPrint_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnPrint.Click, buttonPrint.ItemClick + Private Sub btnPrint_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonPrint.ItemClick If GdViewer.PageCount = 0 Then Return End If - Using f As New frmViewerPrint(GdViewer) - f.ShowDialog(Me) - If f.DialogResult <> DialogResult.OK Then - Return - End If - Dim printSettings As frmViewerPrint.PrintSettings = f.printConfiguration - If Not GdViewer.PrintSetActivePrinter(printSettings.Printer) Then - Return - End If - GdViewer.PrintSetDocumentName("GdPicture Print Job " + DateTime.Now.ToString("yyyy-MM-dd HH\mm")) - GdViewer.PrintSetAlignment(printSettings.PrintAlignment) - Select Case printSettings.Orientation - Case frmViewerPrint.PrintOrientation.AutoDetection - GdViewer.PrintSetAutoRotation(True) - Exit Select - Case frmViewerPrint.PrintOrientation.Portrait - GdViewer.PrintSetAutoRotation(False) - GdViewer.PrintSetOrientation(PrinterOrientation.PrinterOrientationPortrait) - Exit Select - Case frmViewerPrint.PrintOrientation.Paysage - GdViewer.PrintSetAutoRotation(False) - GdViewer.PrintSetOrientation(PrinterOrientation.PrinterOrientationLandscape) - Exit Select - End Select - GdViewer.PrintSetCopies(printSettings.Copies) - If printSettings.Copies > 1 Then - GdViewer.PrintSetCollate(printSettings.Collate) - End If - Select Case printSettings.PagesToPrint - Case frmViewerPrint.PagesToPrint.All - GdViewer.PrintSetFromToPage(1, GdViewer.PageCount) - GdViewer.Print(printSettings.PrintSize) - Exit Select - Case frmViewerPrint.PagesToPrint.Current - GdViewer.PrintSetFromToPage(GdViewer.CurrentPage, GdViewer.CurrentPage) - GdViewer.Print(printSettings.PrintSize) - Exit Select - Case frmViewerPrint.PagesToPrint.Range - If printSettings.PageRange IsNot Nothing And printSettings.PageRange <> String.Empty Then - If printSettings.PageRange.Contains("-") Then - Dim pageStart As Integer = 0 - If Integer.TryParse(printSettings.PageRange.Split("-"c)(0), pageStart) Then - Dim pageEnd As Integer = 0 - If Integer.TryParse(printSettings.PageRange.Split("-"c)(1), pageEnd) Then - If pageEnd < pageStart Then - GdViewer.PrintSetFromToPage(pageEnd, pageStart) - GdViewer.Print(printSettings.PrintSize) - Else - GdViewer.PrintSetFromToPage(pageStart, pageEnd) - GdViewer.Print(printSettings.PrintSize) - End If - Else - MessageBox.Show("Page range is invalid.", "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error]) - End If - Else - MessageBox.Show("Page range is invalid.", "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error]) - End If - Else - Dim page As Integer = 0 - If Integer.TryParse(printSettings.PageRange, page) Then - GdViewer.PrintSetFromToPage(page, page) - GdViewer.Print(printSettings.PrintSize) - Else - MessageBox.Show("Page range is invalid.", "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error]) - End If - End If - Else - MessageBox.Show("Page range is invalid.", "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error]) - End If - Exit Select - End Select - End Using - End Sub - Private Sub btnRotateLeft_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnRotateLeft.Click, buttonRotateLeft.ItemClick + GdViewer.PrintDialog() + + 'Using f As New frmViewerPrint(GdViewer) + ' f.ShowDialog(Me) + ' If f.DialogResult <> DialogResult.OK Then + ' Return + ' End If + ' Dim printSettings As frmViewerPrint.PrintSettings = f.printConfiguration + ' If Not GdViewer.PrintSetActivePrinter(printSettings.Printer) Then + ' Return + ' End If + ' GdViewer.PrintSetDocumentName("GdPicture Print Job " + DateTime.Now.ToString("yyyy-MM-dd HH\mm")) + ' GdViewer.PrintSetAlignment(printSettings.PrintAlignment) + ' Select Case printSettings.Orientation + ' Case frmViewerPrint.PrintOrientation.AutoDetection + ' GdViewer.PrintSetAutoRotation(True) + ' Exit Select + ' Case frmViewerPrint.PrintOrientation.Portrait + ' GdViewer.PrintSetAutoRotation(False) + ' GdViewer.PrintSetOrientation(PrinterOrientation.PrinterOrientationPortrait) + ' Exit Select + ' Case frmViewerPrint.PrintOrientation.Paysage + ' GdViewer.PrintSetAutoRotation(False) + ' GdViewer.PrintSetOrientation(PrinterOrientation.PrinterOrientationLandscape) + ' Exit Select + ' End Select + ' GdViewer.PrintSetCopies(printSettings.Copies) + ' If printSettings.Copies > 1 Then + ' GdViewer.PrintSetCollate(printSettings.Collate) + ' End If + ' Select Case printSettings.PagesToPrint + ' Case frmViewerPrint.PagesToPrint.All + ' GdViewer.PrintSetFromToPage(1, GdViewer.PageCount) + ' GdViewer.Print(printSettings.PrintSize) + ' Exit Select + ' Case frmViewerPrint.PagesToPrint.Current + ' GdViewer.PrintSetFromToPage(GdViewer.CurrentPage, GdViewer.CurrentPage) + ' GdViewer.Print(printSettings.PrintSize) + ' Exit Select + ' Case frmViewerPrint.PagesToPrint.Range + ' If printSettings.PageRange IsNot Nothing And printSettings.PageRange <> String.Empty Then + ' If printSettings.PageRange.Contains("-") Then + ' Dim pageStart As Integer = 0 + ' If Integer.TryParse(printSettings.PageRange.Split("-"c)(0), pageStart) Then + ' Dim pageEnd As Integer = 0 + ' If Integer.TryParse(printSettings.PageRange.Split("-"c)(1), pageEnd) Then + ' If pageEnd < pageStart Then + ' GdViewer.PrintSetFromToPage(pageEnd, pageStart) + ' GdViewer.Print(printSettings.PrintSize) + ' Else + ' GdViewer.PrintSetFromToPage(pageStart, pageEnd) + ' GdViewer.Print(printSettings.PrintSize) + ' End If + ' Else + ' MessageBox.Show("Page range is invalid.", "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error]) + ' End If + ' Else + ' MessageBox.Show("Page range is invalid.", "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error]) + ' End If + ' Else + ' Dim page As Integer = 0 + ' If Integer.TryParse(printSettings.PageRange, page) Then + ' GdViewer.PrintSetFromToPage(page, page) + ' GdViewer.Print(printSettings.PrintSize) + ' Else + ' MessageBox.Show("Page range is invalid.", "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error]) + ' End If + ' End If + ' Else + ' MessageBox.Show("Page range is invalid.", "Error", MessageBoxButtons.OK, MessageBoxIcon.[Error]) + ' End If + ' Exit Select + ' End Select + 'End Using + End Sub + + Private Sub btnRotateLeft_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonRotateLeft.ItemClick GdViewer.Rotate(RotateFlipType.Rotate270FlipNone) End Sub - Private Sub btnRotateRight_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnRotateRight.Click, buttonRotateRight.ItemClick + Private Sub btnRotateRight_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonRotateRight.ItemClick GdViewer.Rotate(RotateFlipType.Rotate90FlipNone) End Sub - Private Sub btnFlipX_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnFlipX.Click, buttonFlipX.ItemClick + Private Sub btnFlipX_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonFlipX.ItemClick GdViewer.Rotate(RotateFlipType.RotateNoneFlipX) End Sub - Private Sub btnFlipY_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles btnFlipY.Click, buttonFlipY.ItemClick + Private Sub btnFlipY_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonFlipY.ItemClick GdViewer.Rotate(RotateFlipType.RotateNoneFlipY) End Sub @@ -545,10 +452,6 @@ Public Class DocumentViewer UpdateMainUi() End Sub - Private Sub cbZoom_Validating(ByVal sender As System.Object, ByVal e As CancelEventArgs) Handles cbZoom.Validating - ChangeZoomValue() - End Sub - Private Sub AddSearchRegion(ByVal occurence As Integer, ByVal leftCoordinate As Single, ByVal topCoordinate As Single, ByVal regionWidth As Single, ByVal regionheight As Single, ByVal ensureVisibility As Boolean) Dim searchRegion As Integer = GdViewer.AddRegionInches("SearchResult" & occurence, leftCoordinate, topCoordinate, regionWidth, regionheight, ForegroundMixMode.ForegroundMixModeMASKPEN, Color.Yellow) GdViewer.SetRegionEditable(searchRegion, False) @@ -557,7 +460,7 @@ Public Class DocumentViewer End If End Sub - Private Sub btnSettings_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnSettings.Click, buttonSettings.ItemClick + Private Sub btnSettings_Click(ByVal sender As Object, ByVal e As EventArgs) Handles buttonSettings.ItemClick Using frmSettings As New frmViewerSettings(GdViewer) frmSettings.ShowDialog(Me) End Using @@ -570,83 +473,43 @@ Public Class DocumentViewer Dim oCurrentPage As Integer = GdViewer.CurrentPage() Dim oPageCount As Integer = GdViewer.PageCount txtCurrentPage.EditValue = oCurrentPage.ToString() - lblPageCount.Text = "/ " & GdViewer.PageCount.ToString() - If oCurrentPage = 1 Or oCurrentPage = oPageCount Then - btnFirstPage.Enabled = False - btnPreviousPage.Enabled = False + If oCurrentPage = oPageCount Then + buttonLastPage.Enabled = False + buttonNextPage.Enabled = False + buttonPrevPage.Enabled = True + buttonFirstPage.Enabled = True + ElseIf oCurrentPage = 1 Then + buttonPrevPage.Enabled = False + buttonFirstPage.Enabled = False + buttonLastPage.Enabled = True + buttonNextPage.Enabled = True Else - btnFirstPage.Enabled = True - btnPreviousPage.Enabled = True + buttonPrevPage.Enabled = True + buttonFirstPage.Enabled = True + buttonLastPage.Enabled = True + buttonNextPage.Enabled = True End If - - cbZoom.Text = String.Format(format:="{0:#0.##%}", arg0:=oCurrentZoom) Catch ex As Exception _logger.Error(ex) End Try End Sub - Private Sub btnFitWidth_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnFitWidth.Click, buttonFitWidth.ItemClick + Private Sub btnFitWidth_Click(ByVal sender As Object, ByVal e As EventArgs) Handles buttonFitWidth.ItemClick GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer End Sub - Private Sub btnFitPage_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnFitPage.Click, buttonFitPage.ItemClick + Private Sub btnFitPage_Click(ByVal sender As Object, ByVal e As EventArgs) Handles buttonFitPage.ItemClick GdViewer.ZoomMode = ViewerZoomMode.ZoomModeFitToViewer End Sub - Private Sub DefaultToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles DefaultToolStripMenuItem.Click - GdViewer.MouseMode = ViewerMouseMode.MouseModeDefault - DefaultToolStripMenuItem.Checked = True - AreaSelectionToolStripMenuItem.Checked = False - PanToolStripMenuItem.Checked = False - AreaZoomingToolStripMenuItem.Checked = False - MagnifierToolStripMenuItem.Checked = False - GdViewer.Focus() - End Sub - - Private Sub AreaSelectionToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles AreaSelectionToolStripMenuItem.Click - GdViewer.MouseMode = ViewerMouseMode.MouseModeAreaSelection - DefaultToolStripMenuItem.Checked = False - AreaSelectionToolStripMenuItem.Checked = True - PanToolStripMenuItem.Checked = False - AreaZoomingToolStripMenuItem.Checked = False - MagnifierToolStripMenuItem.Checked = False - GdViewer.Focus() - End Sub - - Private Sub PanToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles PanToolStripMenuItem.Click - GdViewer.MouseMode = ViewerMouseMode.MouseModePan - DefaultToolStripMenuItem.Checked = False - AreaSelectionToolStripMenuItem.Checked = False - PanToolStripMenuItem.Checked = True - AreaZoomingToolStripMenuItem.Checked = False - MagnifierToolStripMenuItem.Checked = False - GdViewer.Focus() - End Sub - - Private Sub AreaZoomingToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles AreaZoomingToolStripMenuItem.Click - GdViewer.MouseMode = ViewerMouseMode.MouseModeAreaZooming - DefaultToolStripMenuItem.Checked = False - AreaSelectionToolStripMenuItem.Checked = False - PanToolStripMenuItem.Checked = False - AreaZoomingToolStripMenuItem.Checked = True - MagnifierToolStripMenuItem.Checked = False - GdViewer.Focus() - End Sub - - Private Sub MagnifierToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles MagnifierToolStripMenuItem.Click - GdViewer.MouseMode = ViewerMouseMode.MouseModeMagnifier - DefaultToolStripMenuItem.Checked = False - AreaSelectionToolStripMenuItem.Checked = False - PanToolStripMenuItem.Checked = False - AreaZoomingToolStripMenuItem.Checked = False - MagnifierToolStripMenuItem.Checked = True - GdViewer.Focus() - End Sub - Private Sub RichEditControl1_SizeChanged(sender As Object, e As EventArgs) Handles RichEditControl1.SizeChanged Dim oControlWidth = RichEditControl1.Width - 100 Dim oPageWidth = Units.DocumentsToPixelsF(RichEditControl1.Document.Sections(0).Page.Width, RichEditControl1.DpiX) RichEditControl1.Views.PrintLayoutView.ZoomFactor = oControlWidth / oPageWidth End Sub + + Private Sub btnSettings_Click(sender As Object, e As XtraBars.ItemClickEventArgs) Handles buttonSettings.ItemClick + + End Sub End Class From e09b2610645cda92937bdee2838ae2fe790c936b Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 18 Nov 2020 16:26:34 +0100 Subject: [PATCH 4/7] ZooFlow: Replace old winforms treeview with Devexpress TreeList --- .../frmAdministrationZooFlow.Designer.vb | 103 +++++++++++------- GUIs.ZooFlow/frmAdministrationZooFlow.resx | 16 ++- GUIs.ZooFlow/frmAdministrationZooFlow.vb | 30 ++--- 3 files changed, 94 insertions(+), 55 deletions(-) diff --git a/GUIs.ZooFlow/frmAdministrationZooFlow.Designer.vb b/GUIs.ZooFlow/frmAdministrationZooFlow.Designer.vb index bf8b4e4b..d1ee4b1f 100644 --- a/GUIs.ZooFlow/frmAdministrationZooFlow.Designer.vb +++ b/GUIs.ZooFlow/frmAdministrationZooFlow.Designer.vb @@ -1,9 +1,9 @@ - _ + Partial Class frmAdministrationZooFlow Inherits DevExpress.XtraBars.Ribbon.RibbonForm '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 @@ -20,13 +20,9 @@ Partial Class frmAdministrationZooFlow '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 TreeNode1 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Business Entities") - Dim TreeNode2 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Attributes") - Dim TreeNode3 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("IDB", New System.Windows.Forms.TreeNode() {TreeNode1, TreeNode2}) - Dim TreeNode4 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Knoten2") Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmAdministrationZooFlow)) Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() @@ -34,14 +30,20 @@ Partial Class frmAdministrationZooFlow Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage() - Me.TreeViewMain = New System.Windows.Forms.TreeView() Me.ImageList1 = New System.Windows.Forms.ImageList(Me.components) Me.XtraTabControl1 = New DevExpress.XtraTab.XtraTabControl() Me.XtraTabPage1 = New DevExpress.XtraTab.XtraTabPage() Me.XtraTabPage2 = New DevExpress.XtraTab.XtraTabPage() + Me.TreeList1 = New DevExpress.XtraTreeList.TreeList() + Me.TreeListColumn1 = New DevExpress.XtraTreeList.Columns.TreeListColumn() + Me.SvgImageCollection1 = New DevExpress.Utils.SvgImageCollection(Me.components) + Me.DpiAwareImageCollection1 = New DevExpress.Utils.DPIAwareImageCollection(Me.components) CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.XtraTabControl1, System.ComponentModel.ISupportInitialize).BeginInit() Me.XtraTabControl1.SuspendLayout() + CType(Me.TreeList1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.DpiAwareImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' 'RibbonControl1 @@ -83,31 +85,6 @@ Partial Class frmAdministrationZooFlow Me.RibbonPage2.Name = "RibbonPage2" Me.RibbonPage2.Text = "RibbonPage2" ' - 'TreeViewMain - ' - Me.TreeViewMain.Dock = System.Windows.Forms.DockStyle.Left - Me.TreeViewMain.ImageIndex = 0 - Me.TreeViewMain.ImageList = Me.ImageList1 - Me.TreeViewMain.Location = New System.Drawing.Point(0, 159) - Me.TreeViewMain.Name = "TreeViewMain" - TreeNode1.ImageKey = "Building_16xMD.png" - TreeNode1.Name = "Knoten1" - TreeNode1.SelectedImageIndex = 1 - TreeNode1.Text = "Business Entities" - TreeNode2.ImageKey = "Hammer_Builder_16xLG.png" - TreeNode2.Name = "Knoten3" - TreeNode2.SelectedImageIndex = 2 - TreeNode2.Text = "Attributes" - TreeNode3.ImageIndex = 0 - TreeNode3.Name = "Knoten0" - TreeNode3.Text = "IDB" - TreeNode4.Name = "Knoten2" - TreeNode4.Text = "Knoten2" - Me.TreeViewMain.Nodes.AddRange(New System.Windows.Forms.TreeNode() {TreeNode3, TreeNode4}) - Me.TreeViewMain.SelectedImageIndex = 0 - Me.TreeViewMain.Size = New System.Drawing.Size(153, 269) - Me.TreeViewMain.TabIndex = 2 - ' 'ImageList1 ' Me.ImageList1.ImageStream = CType(resources.GetObject("ImageList1.ImageStream"), System.Windows.Forms.ImageListStreamer) @@ -119,32 +96,74 @@ Partial Class frmAdministrationZooFlow 'XtraTabControl1 ' Me.XtraTabControl1.Dock = System.Windows.Forms.DockStyle.Fill - Me.XtraTabControl1.Location = New System.Drawing.Point(153, 159) + Me.XtraTabControl1.Location = New System.Drawing.Point(175, 159) Me.XtraTabControl1.Name = "XtraTabControl1" Me.XtraTabControl1.SelectedTabPage = Me.XtraTabPage1 - Me.XtraTabControl1.Size = New System.Drawing.Size(647, 269) + Me.XtraTabControl1.Size = New System.Drawing.Size(625, 269) Me.XtraTabControl1.TabIndex = 5 Me.XtraTabControl1.TabPages.AddRange(New DevExpress.XtraTab.XtraTabPage() {Me.XtraTabPage1, Me.XtraTabPage2}) ' 'XtraTabPage1 ' Me.XtraTabPage1.Name = "XtraTabPage1" - Me.XtraTabPage1.Size = New System.Drawing.Size(645, 246) + Me.XtraTabPage1.Size = New System.Drawing.Size(623, 246) Me.XtraTabPage1.Text = "Business Entities" ' 'XtraTabPage2 ' Me.XtraTabPage2.Name = "XtraTabPage2" - Me.XtraTabPage2.Size = New System.Drawing.Size(645, 246) + Me.XtraTabPage2.Size = New System.Drawing.Size(333, 144) Me.XtraTabPage2.Text = "XtraTabPage2" ' + 'TreeList1 + ' + Me.TreeList1.Columns.AddRange(New DevExpress.XtraTreeList.Columns.TreeListColumn() {Me.TreeListColumn1}) + Me.TreeList1.Dock = System.Windows.Forms.DockStyle.Left + Me.TreeList1.Location = New System.Drawing.Point(0, 159) + Me.TreeList1.MenuManager = Me.RibbonControl1 + Me.TreeList1.Name = "TreeList1" + Me.TreeList1.BeginUnboundLoad() + Me.TreeList1.AppendNode(New Object() {"IDB"}, -1) + Me.TreeList1.AppendNode(New Object() {"Attributes"}, 0, 2, 2, -1, "IDB_ATTRIBUTES") + Me.TreeList1.AppendNode(New Object() {"Business Entities"}, 0, 1, 1, -1, "IDB_ENTITIES") + Me.TreeList1.AppendNode(New Object() {"Globix"}, -1) + Me.TreeList1.AppendNode(New Object() {"Clipboard Watcher"}, -1) + Me.TreeList1.EndUnboundLoad() + Me.TreeList1.OptionsBehavior.Editable = False + Me.TreeList1.OptionsBehavior.ReadOnly = True + Me.TreeList1.OptionsView.ShowColumns = False + Me.TreeList1.OptionsView.ShowHorzLines = False + Me.TreeList1.OptionsView.ShowIndicator = False + Me.TreeList1.OptionsView.ShowVertLines = False + Me.TreeList1.SelectImageList = Me.SvgImageCollection1 + Me.TreeList1.Size = New System.Drawing.Size(175, 269) + Me.TreeList1.TabIndex = 8 + ' + 'TreeListColumn1 + ' + Me.TreeListColumn1.Caption = "TreeListColumn1" + Me.TreeListColumn1.FieldName = "TreeListColumn1" + Me.TreeListColumn1.Name = "TreeListColumn1" + Me.TreeListColumn1.Visible = True + Me.TreeListColumn1.VisibleIndex = 0 + ' + 'SvgImageCollection1 + ' + Me.SvgImageCollection1.Add("shopping_box", "image://svgimages/icon builder/shopping_box.svg") + Me.SvgImageCollection1.Add("bo_organization", "image://svgimages/business objects/bo_organization.svg") + Me.SvgImageCollection1.Add("bo_appearance", "image://svgimages/business objects/bo_appearance.svg") + ' + 'DpiAwareImageCollection1 + ' + Me.DpiAwareImageCollection1.Stream = CType(resources.GetObject("DpiAwareImageCollection1.Stream"), DevExpress.Utils.DPIAwareImageCollectionStreamer) + ' 'frmAdministrationZooFlow ' 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.XtraTabControl1) - Me.Controls.Add(Me.TreeViewMain) + Me.Controls.Add(Me.TreeList1) Me.Controls.Add(Me.RibbonStatusBar1) Me.Controls.Add(Me.RibbonControl1) Me.Name = "frmAdministrationZooFlow" @@ -154,6 +173,9 @@ Partial Class frmAdministrationZooFlow CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.XtraTabControl1, System.ComponentModel.ISupportInitialize).EndInit() Me.XtraTabControl1.ResumeLayout(False) + CType(Me.TreeList1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.DpiAwareImageCollection1, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) Me.PerformLayout() @@ -165,9 +187,12 @@ Partial Class frmAdministrationZooFlow Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents RibbonStatusBar1 As DevExpress.XtraBars.Ribbon.RibbonStatusBar Friend WithEvents RibbonPage2 As DevExpress.XtraBars.Ribbon.RibbonPage - Friend WithEvents TreeViewMain As TreeView Friend WithEvents ImageList1 As ImageList Friend WithEvents XtraTabControl1 As DevExpress.XtraTab.XtraTabControl Friend WithEvents XtraTabPage1 As DevExpress.XtraTab.XtraTabPage Friend WithEvents XtraTabPage2 As DevExpress.XtraTab.XtraTabPage + Friend WithEvents TreeList1 As DevExpress.XtraTreeList.TreeList + Friend WithEvents TreeListColumn1 As DevExpress.XtraTreeList.Columns.TreeListColumn + Friend WithEvents SvgImageCollection1 As DevExpress.Utils.SvgImageCollection + Friend WithEvents DpiAwareImageCollection1 As DevExpress.Utils.DPIAwareImageCollection End Class diff --git a/GUIs.ZooFlow/frmAdministrationZooFlow.resx b/GUIs.ZooFlow/frmAdministrationZooFlow.resx index 14ea33d5..caf8630b 100644 --- a/GUIs.ZooFlow/frmAdministrationZooFlow.resx +++ b/GUIs.ZooFlow/frmAdministrationZooFlow.resx @@ -125,7 +125,7 @@ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAC8 - CQAAAk1TRnQBSQFMAgEBAwEAARgBAAEYAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + CQAAAk1TRnQBSQFMAgEBAwEAATABAAEwAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA @@ -167,6 +167,20 @@ AQcB+AEfBAAB8AEHAfgBHwQAAfABBwH4AR8EAAHwAQcB+AEfBAAB8AEHAfgBHwIAAYABAAHwAQcB+AEf AgABgAEAAfABBwH8AT8CAAH8AQAB8AEHAcABEQIAAfwBAAHwAQcBwAEBAgAB/AEAAfABBwHAAQECAAH8 AQAB8AEHAcABAQIAAfwBAAL/AcABAQIAAfwBAAL/AcABAwIACw== + + + + 127, 17 + + + 293, 17 + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYxOS4yLCBWZXJzaW9uPTE5LjIu + My4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAAADBE + ZXZFeHByZXNzLlV0aWxzLkRQSUF3YXJlSW1hZ2VDb2xsZWN0aW9uU3RyZWFtZXIAAAAAAgAAAAs= \ No newline at end of file diff --git a/GUIs.ZooFlow/frmAdministrationZooFlow.vb b/GUIs.ZooFlow/frmAdministrationZooFlow.vb index ea47aa1f..342785e7 100644 --- a/GUIs.ZooFlow/frmAdministrationZooFlow.vb +++ b/GUIs.ZooFlow/frmAdministrationZooFlow.vb @@ -1,21 +1,6 @@ Public Class frmAdministrationZooFlow Private _TABIndex As Integer - Private Sub frmAdministrationZooFlow_Load(sender As Object, e As EventArgs) Handles MyBase.Load - End Sub - - Private Sub TreeView1_AfterSelect(sender As Object, e As TreeViewEventArgs) Handles TreeViewMain.AfterSelect - Dim selnode As TreeNode = TreeViewMain.SelectedNode - If Not IsNothing(selnode) Then - Select Case selnode.Text - Case "Business Entities" - _TABIndex = 0 - Case "Attributes" - _TABIndex = 1 - End Select - DisplayTabs() - End If - End Sub Sub DisplayTabs() Try Dim oindex = 0 @@ -30,4 +15,19 @@ End Try End Sub + + Private Sub TreeList1_FocusedNodeChanged(sender As Object, e As DevExpress.XtraTreeList.FocusedNodeChangedEventArgs) Handles TreeList1.FocusedNodeChanged + If e.Node Is Nothing OrElse e.Node.Tag Is Nothing Then + Exit Sub + End If + + Select Case e.Node.Tag.ToString + Case "IDB_ATTRIBUTES" + _TABIndex = 0 + Case "IDB_ENTITIES" + _TABIndex = 1 + End Select + + DisplayTabs() + End Sub End Class \ No newline at end of file From f9c7761474febc38ec02c225693699c8bc9c7729 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 18 Nov 2020 16:27:27 +0100 Subject: [PATCH 5/7] ZooFlow: Small fixes --- GUIs.ZooFlow/ApplicationEvents.vb | 2 +- GUIs.ZooFlow/ClassFilehandle.vb | 4 +++- GUIs.ZooFlow/Config/ClassUIConfig.vb | 2 ++ GUIs.ZooFlow/My Project/licenses.licx | 19 ++++++++++--------- GUIs.ZooFlow/MyApplication.vb | 2 +- GUIs.ZooFlow/Queries/ClassCommonQueries.vb | 4 ++++ GUIs.ZooFlow/ZooFlow.vbproj | 10 +++++----- 7 files changed, 26 insertions(+), 17 deletions(-) diff --git a/GUIs.ZooFlow/ApplicationEvents.vb b/GUIs.ZooFlow/ApplicationEvents.vb index 6adaa98c..777dee28 100644 --- a/GUIs.ZooFlow/ApplicationEvents.vb +++ b/GUIs.ZooFlow/ApplicationEvents.vb @@ -46,7 +46,7 @@ Namespace My oCommandLineArgs.Parse(oArgs) CommandLineFunction = oCommandLineArgs.FunctionName - CommandLineArgs = oCommandLineArgs.FunctionArgs + CommandLineArguments = oCommandLineArgs.FunctionArgs End Sub Public Sub App_Shutdown(sender As Object, e As EventArgs) Handles Me.Shutdown diff --git a/GUIs.ZooFlow/ClassFilehandle.vb b/GUIs.ZooFlow/ClassFilehandle.vb index e719051a..c32d573c 100644 --- a/GUIs.ZooFlow/ClassFilehandle.vb +++ b/GUIs.ZooFlow/ClassFilehandle.vb @@ -1,4 +1,6 @@ -Imports System.IO +Option Explicit On + +Imports System.IO Imports System.Text.RegularExpressions Imports DigitalData.Modules.Logging Imports Independentsoft diff --git a/GUIs.ZooFlow/Config/ClassUIConfig.vb b/GUIs.ZooFlow/Config/ClassUIConfig.vb index 9491bc58..8e99d85b 100644 --- a/GUIs.ZooFlow/Config/ClassUIConfig.vb +++ b/GUIs.ZooFlow/Config/ClassUIConfig.vb @@ -7,6 +7,8 @@ End Class Public Class SearchFormConfig Public Property Location As New Point(0, 0) + Public Property Size As New Size(0, 0) + Public Property OpenSearchInSameWindow As Boolean = False End Class Public Class GlobixConfig Public Property FilePreview As Boolean = True diff --git a/GUIs.ZooFlow/My Project/licenses.licx b/GUIs.ZooFlow/My Project/licenses.licx index f385a333..7071bdc3 100644 --- a/GUIs.ZooFlow/My Project/licenses.licx +++ b/GUIs.ZooFlow/My Project/licenses.licx @@ -1,14 +1,15 @@ -DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.ProgressBarControl, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraBars.FormAssistant, DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.DateEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraTreeList.TreeList, DevExpress.XtraTreeList.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.Repository.RepositoryItemDateEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.Repository.RepositoryItemDateEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.DateEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.ProgressBarControl, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a diff --git a/GUIs.ZooFlow/MyApplication.vb b/GUIs.ZooFlow/MyApplication.vb index 095ecb9d..8067b867 100644 --- a/GUIs.ZooFlow/MyApplication.vb +++ b/GUIs.ZooFlow/MyApplication.vb @@ -51,7 +51,7 @@ Namespace My Public Property GDPictureLicense As String Public CommandLineFunction As String - Public CommandLineArgs As New Dictionary(Of String, String) + Public CommandLineArguments As New Dictionary(Of String, String) End Class End Namespace diff --git a/GUIs.ZooFlow/Queries/ClassCommonQueries.vb b/GUIs.ZooFlow/Queries/ClassCommonQueries.vb index bd537361..dbab0284 100644 --- a/GUIs.ZooFlow/Queries/ClassCommonQueries.vb +++ b/GUIs.ZooFlow/Queries/ClassCommonQueries.vb @@ -6,4 +6,8 @@ Public Function FNDD_MODULE_INIT(Username As String) As String Return String.Format("SELECT * FROM [dbo].[FNZF_GET_MODULE_INFO] ('{0}')", Username) End Function + + Public Function FNIDB_GET_SEARCH_PROFILES(UserId As Integer, UserLanguage As String) As String + Return String.Format("SELECT * FROM [dbo].[FNIDB_GET_SEARCH_PROFILES] ({0},'{1}')", UserId, UserLanguage) + End Function End Class diff --git a/GUIs.ZooFlow/ZooFlow.vbproj b/GUIs.ZooFlow/ZooFlow.vbproj index d878127d..8f3a79bd 100644 --- a/GUIs.ZooFlow/ZooFlow.vbproj +++ b/GUIs.ZooFlow/ZooFlow.vbproj @@ -145,10 +145,10 @@ Form - - frmPreSearch.vb + + frmSearchPredefined.vb - + Form @@ -210,8 +210,8 @@ frmGlobix_Index.vb - - frmPreSearch.vb + + frmSearchPredefined.vb frmSearchStart.vb From 148092eb23501307ba789704d6dcad1e32c0fb2b Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 18 Nov 2020 16:28:08 +0100 Subject: [PATCH 6/7] ZooFlow: Small fixes for FlowForm, Save Location on Form Move and Resize --- GUIs.ZooFlow/frmFlowForm.Designer.vb | 35 ++++++++------- GUIs.ZooFlow/frmFlowForm.resx | 5 +-- GUIs.ZooFlow/frmFlowForm.vb | 65 +++++++++++++--------------- 3 files changed, 51 insertions(+), 54 deletions(-) diff --git a/GUIs.ZooFlow/frmFlowForm.Designer.vb b/GUIs.ZooFlow/frmFlowForm.Designer.vb index 5924ecb7..e1fa02ab 100644 --- a/GUIs.ZooFlow/frmFlowForm.Designer.vb +++ b/GUIs.ZooFlow/frmFlowForm.Designer.vb @@ -37,7 +37,7 @@ Partial Class frmFlowForm Me.AlleAnzeigenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() Me.TimerRefreshData = New System.Windows.Forms.Timer(Me.components) Me.PictureBoxAbo = New System.Windows.Forms.PictureBox() - Me.PictureBox1 = New System.Windows.Forms.PictureBox() + Me.PictureBoxDragDrop = New System.Windows.Forms.PictureBox() Me.PictureBoxGlobix = New System.Windows.Forms.PictureBox() Me.PictureBoxPM = New System.Windows.Forms.PictureBox() Me.PictureBoxSearch = New System.Windows.Forms.PictureBox() @@ -47,7 +47,7 @@ Partial Class frmFlowForm Me.ContextMenuSystray.SuspendLayout() Me.ContextMenuForm.SuspendLayout() CType(Me.PictureBoxAbo, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.PictureBoxDragDrop, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.PictureBoxGlobix, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.PictureBoxPM, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.PictureBoxSearch, System.ComponentModel.ISupportInitialize).BeginInit() @@ -121,28 +121,30 @@ Partial Class frmFlowForm ' 'PictureBoxAbo ' + Me.PictureBoxAbo.Cursor = System.Windows.Forms.Cursors.Hand Me.PictureBoxAbo.Image = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources._2_ZOO_FLOW_Abo - Me.PictureBoxAbo.Location = New System.Drawing.Point(203, 69) + Me.PictureBoxAbo.Location = New System.Drawing.Point(209, 75) Me.PictureBoxAbo.Name = "PictureBoxAbo" Me.PictureBoxAbo.Size = New System.Drawing.Size(40, 36) Me.PictureBoxAbo.TabIndex = 11 Me.PictureBoxAbo.TabStop = False Me.ToolTip1.SetToolTip(Me.PictureBoxAbo, "Abonnierte Suchen") ' - 'PictureBox1 + 'PictureBoxDragDrop ' - Me.PictureBox1.Dock = System.Windows.Forms.DockStyle.Left - Me.PictureBox1.Image = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources._1_LOGO_ZOO_FLOW - Me.PictureBox1.Location = New System.Drawing.Point(0, 0) - Me.PictureBox1.Name = "PictureBox1" - Me.PictureBox1.Size = New System.Drawing.Size(197, 150) - Me.PictureBox1.TabIndex = 10 - Me.PictureBox1.TabStop = False - Me.ToolTip1.SetToolTip(Me.PictureBox1, "Drag and Drop files here") + Me.PictureBoxDragDrop.Dock = System.Windows.Forms.DockStyle.Left + Me.PictureBoxDragDrop.Image = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources._1_LOGO_ZOO_FLOW + Me.PictureBoxDragDrop.Location = New System.Drawing.Point(0, 0) + Me.PictureBoxDragDrop.Name = "PictureBoxDragDrop" + Me.PictureBoxDragDrop.Size = New System.Drawing.Size(197, 150) + Me.PictureBoxDragDrop.TabIndex = 10 + Me.PictureBoxDragDrop.TabStop = False + Me.ToolTip1.SetToolTip(Me.PictureBoxDragDrop, "Drag and Drop files here") ' 'PictureBoxGlobix ' Me.PictureBoxGlobix.BackColor = System.Drawing.Color.Transparent + Me.PictureBoxGlobix.Cursor = System.Windows.Forms.Cursors.Hand Me.PictureBoxGlobix.Image = CType(resources.GetObject("PictureBoxGlobix.Image"), System.Drawing.Image) Me.PictureBoxGlobix.Location = New System.Drawing.Point(448, 23) Me.PictureBoxGlobix.Name = "PictureBoxGlobix" @@ -155,6 +157,7 @@ Partial Class frmFlowForm 'PictureBoxPM ' Me.PictureBoxPM.BackColor = System.Drawing.Color.Transparent + Me.PictureBoxPM.Cursor = System.Windows.Forms.Cursors.Hand Me.PictureBoxPM.Image = CType(resources.GetObject("PictureBoxPM.Image"), System.Drawing.Image) Me.PictureBoxPM.Location = New System.Drawing.Point(335, 23) Me.PictureBoxPM.Name = "PictureBoxPM" @@ -168,6 +171,7 @@ Partial Class frmFlowForm 'PictureBoxSearch ' Me.PictureBoxSearch.BackColor = System.Drawing.Color.Transparent + Me.PictureBoxSearch.Cursor = System.Windows.Forms.Cursors.Hand Me.PictureBoxSearch.Image = CType(resources.GetObject("PictureBoxSearch.Image"), System.Drawing.Image) Me.PictureBoxSearch.Location = New System.Drawing.Point(220, 23) Me.PictureBoxSearch.Name = "PictureBoxSearch" @@ -198,12 +202,11 @@ Partial Class frmFlowForm Me.ClientSize = New System.Drawing.Size(577, 150) Me.ContextMenuStrip = Me.ContextMenuForm Me.Controls.Add(Me.PictureBoxAbo) - Me.Controls.Add(Me.PictureBox1) + Me.Controls.Add(Me.PictureBoxDragDrop) Me.Controls.Add(Me.PictureBoxGlobix) Me.Controls.Add(Me.PictureBoxPM) Me.Controls.Add(Me.PictureBoxSearch) Me.DoubleBuffered = True - Me.Font = New System.Drawing.Font("Tahoma", 8.25!) Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None Me.Name = "frmFlowForm" Me.Text = "frmFlowForm_Test1" @@ -211,7 +214,7 @@ Partial Class frmFlowForm Me.ContextMenuSystray.ResumeLayout(False) Me.ContextMenuForm.ResumeLayout(False) CType(Me.PictureBoxAbo, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.PictureBoxDragDrop, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.PictureBoxGlobix, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.PictureBoxPM, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.PictureBoxSearch, System.ComponentModel.ISupportInitialize).EndInit() @@ -227,7 +230,7 @@ Partial Class frmFlowForm Friend WithEvents ZooFlowBeendenToolStripMenuItem As ToolStripMenuItem Friend WithEvents ContextMenuForm As ContextMenuStrip Friend WithEvents AlleAnzeigenToolStripMenuItem As ToolStripMenuItem - Friend WithEvents PictureBox1 As PictureBox + Friend WithEvents PictureBoxDragDrop As PictureBox Friend WithEvents TimerRefreshData As Timer Friend WithEvents PictureBoxAbo As PictureBox Friend WithEvents ToolTip1 As ToolTip diff --git a/GUIs.ZooFlow/frmFlowForm.resx b/GUIs.ZooFlow/frmFlowForm.resx index 1b32040c..118ec9e7 100644 --- a/GUIs.ZooFlow/frmFlowForm.resx +++ b/GUIs.ZooFlow/frmFlowForm.resx @@ -2040,13 +2040,10 @@ iTozEYp40EgT8aCRIsXWP0j108YYpYdeAAAAAElFTkSuQmCC - - 764, 17 - 863, 17 - 17, 56 + 1045, 17 \ No newline at end of file diff --git a/GUIs.ZooFlow/frmFlowForm.vb b/GUIs.ZooFlow/frmFlowForm.vb index 6d1396d9..ff866c40 100644 --- a/GUIs.ZooFlow/frmFlowForm.vb +++ b/GUIs.ZooFlow/frmFlowForm.vb @@ -2,6 +2,7 @@ Imports DevExpress.XtraSplashScreen Imports DigitalData.Modules.Logging Imports DigitalData.Modules.Messaging +Imports DigitalData.GUIs.ClipboardWatcher Public Class frmFlowForm ' Constants @@ -11,10 +12,14 @@ Public Class frmFlowForm Private ActiveModules As List(Of String) Private Logger As Logger - Private Init As ClassInit Private DTIDB_SEARCHES As DataTable - Private CLSFileDrop As ClassFileDrop - Private clsFilehandle As ClassFilehandle + + ' Helper Classes + Private Init As ClassInit + Private FileDrop As ClassFileDrop + Private FileHandle As ClassFilehandle + Private ProfileFilter As ProfileFilter + ' Runtime Flags Private ApplicationLoading As Boolean = True Private IDBSearchActive As Boolean = False @@ -26,6 +31,7 @@ Public Class frmFlowForm ' Events Public Event ClipboardChanged As EventHandler(Of IDataObject) + Private WithEvents Watcher As ClassClipboardWatcher = ClassClipboardWatcher.Singleton Public Sub New() ' Dieser Aufruf ist für den Designer erforderlich. @@ -44,8 +50,9 @@ Public Class frmFlowForm ' === Initialization === Init = New ClassInit(My.LogConfig, Me) - CLSFileDrop = New ClassFileDrop(My.LogConfig) - clsFilehandle = New ClassFilehandle(My.LogConfig) + FileDrop = New ClassFileDrop(My.LogConfig) + FileHandle = New ClassFilehandle(My.LogConfig) + AddHandler Init.Completed, AddressOf Init_Completed Init.InitializeApplication() End Sub @@ -59,9 +66,6 @@ Public Class frmFlowForm AddHandler TimerRefreshData.Tick, AddressOf TimerRefreshData_Tick TimerRefreshData.Enabled = True - ' === Setup Flow Form === - Location = My.UIConfig.FlowForm.Location - ' === Register As Event Listener === EventBus.Instance.Register(Me) @@ -82,7 +86,7 @@ Public Class frmFlowForm Next ' TODO: Clean up - Dim oSQL = $"SELECT * FROM [dbo].[FNIDB_GET_SEARCH_PROFILES] ({My.Application.User.UserId},'{My.Application.User.Language}')" + Dim oSQL = My.Queries.Common.FNIDB_GET_SEARCH_PROFILES(My.Application.User.UserId, My.Application.User.Language) Dim oDatatable As DataTable = My.DatabaseIDB.GetDatatable(oSQL) PictureBoxSearch.Visible = False @@ -100,15 +104,15 @@ Public Class frmFlowForm 'TODO: Refresh Data End Sub - Private Sub frmFlowForm_MouseLeave(sender As Object, e As EventArgs) + Private Sub frmFlowForm_MouseLeave(sender As Object, e As EventArgs) Handles MyBase.MouseLeave Opacity = OPACITY_HIDDEN End Sub - Private Sub frmFlowForm_MouseEnter(sender As Object, e As EventArgs) Handles Me.MouseEnter, MyBase.MouseLeave + Private Sub frmFlowForm_MouseEnter(sender As Object, e As EventArgs) Handles Me.MouseEnter Opacity = OPACITY_SHOWN End Sub - Private Sub frmFlowForm_MouseMove(ByVal sender As Object, ByVal e As MouseEventArgs) Handles Me.MouseMove, PictureBox1.MouseMove + Private Sub frmFlowForm_MouseMove(ByVal sender As Object, ByVal e As MouseEventArgs) Handles Me.MouseMove, PictureBoxDragDrop.MouseMove If e.Button = MouseButtons.Left Then ClassWin32.ReleaseCapture() ClassWin32.SendMessage(Handle, ClassWin32.WM_NCLBUTTONDOWN, ClassWin32.HTCAPTION, 0) @@ -130,13 +134,8 @@ Public Class frmFlowForm End Sub Sub ExitZooflow() - Dim oResult As DialogResult = MessageBox.Show("Exit Zooflow", "Please Varify", MessageBoxButtons.YesNo) + Dim oResult As DialogResult = MessageBox.Show("Exit Zooflow", "Are you sure you want to close ZooFlow", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If oResult = DialogResult.Yes Then - ' Save Settings - My.UIConfig.FlowForm.Location = Location - My.UIConfigManager.Save() - - ' Exit Application.Exit() Else ESCHitCount = 0 @@ -192,7 +191,7 @@ Public Class frmFlowForm End Sub Private Sub frmFlowForm_DragEnter(sender As Object, e As DragEventArgs) Handles MyBase.DragEnter - PictureBox1.Image = My.Resources._1_LOGO_ZOO_FLOW_DROP3 + PictureBoxDragDrop.Image = My.Resources._1_LOGO_ZOO_FLOW_DROP3 e.Effect = DragDropEffects.Copy Drag_Enter(sender, e) @@ -203,7 +202,7 @@ Public Class frmFlowForm End Sub Private Sub frmFlowForm_DragLeave(sender As Object, e As EventArgs) Handles Me.DragLeave - PictureBox1.Image = My.Resources._1_LOGO_ZOO_FLOW1 + PictureBoxDragDrop.Image = My.Resources._1_LOGO_ZOO_FLOW1 End Sub Private Sub PictureBoxAbo_MouseEnter(sender As Object, e As EventArgs) Handles PictureBoxAbo.MouseEnter @@ -220,7 +219,7 @@ Public Class frmFlowForm Cursor = Cursors.Default Exit Sub End If - Dim oForm2 As New frmPreSearch() + Dim oForm2 As New frmSearchPredefined() oForm2.Show() Cursor = Cursors.Default End Sub @@ -247,10 +246,6 @@ Public Class frmFlowForm TimerCheckActiveForms.Enabled = False End Function - Private Sub UserKonfigurationToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles UserKonfigurationToolStripMenuItem.Click - - End Sub - Private Sub DatenbankverbindungToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DatenbankverbindungToolStripMenuItem.Click frmConfigDatabase.ShowDialog() End Sub @@ -267,7 +262,7 @@ Public Class frmFlowForm End If End Sub - Private Sub PictureBox1_DragEnter(sender As Object, e As DragEventArgs) Handles PictureBox1.DragEnter + Private Sub PictureBox1_DragEnter(sender As Object, e As DragEventArgs) Handles PictureBoxDragDrop.DragEnter Drag_Enter(sender, e) End Sub Sub Drag_Enter(sender As Object, e As DragEventArgs) @@ -296,12 +291,14 @@ Public Class frmFlowForm 'Erstmal alles löschen My.Database.ExecuteNonQuery("DELETE FROM TBGI_FILES_USER WHERE UPPER(USER@WORK) = UPPER('" & Environment.UserName & "')") - If CLSFileDrop.Drop_File(e) = True Then + If FileDrop.Drop_File(e) = True Then TimerCheckDroppedFiles.Start() End If + + PictureBoxDragDrop.Image = My.Resources._1_LOGO_ZOO_FLOW1 End Sub - Private Sub PictureBox1_DragDrop(sender As Object, e As DragEventArgs) Handles PictureBox1.DragDrop + Private Sub PictureBox1_DragDrop(sender As Object, e As DragEventArgs) Handles PictureBoxDragDrop.DragDrop DragDropForm(e) End Sub @@ -319,7 +316,7 @@ Public Class frmFlowForm Dim handleType As String = Str.Substring(0, Str.LastIndexOf("|") + 1) Dim filename As String = Str.Substring(Str.LastIndexOf("|") + 1) If My.Application.Globix.FileExistsinDropTable(filename) = False Then - clsFilehandle.Decide_FileHandle(filename, handleType) + FileHandle.Decide_FileHandle(filename, handleType) i += 1 Else ' Console.WriteLine("File gibt es bereits") @@ -366,9 +363,6 @@ Public Class frmFlowForm End Sub Sub Globix_Open_IndexDialog() Try - - 'Hide() - IndexForm = New frmGlobix_Index(My.LogConfig) IndexForm.Show() Cursor = Cursors.Default @@ -378,8 +372,11 @@ Public Class frmFlowForm Catch ex As Exception Logger.Error(ex) MsgBox(ex.Message, MsgBoxStyle.Critical) - Finally - ' Show() End Try End Sub + + Private Sub frmFlowForm_ResizeEnd(sender As Object, e As EventArgs) Handles Me.ResizeEnd + My.UIConfig.FlowForm.Location = Location + My.UIConfigManager.Save() + End Sub End Class \ No newline at end of file From 3468544d429c9b5b81725e5cf51430612925e8ca Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 18 Nov 2020 16:38:41 +0100 Subject: [PATCH 7/7] ZooFlow: Add Startup Path to ConfigManagers --- GUIs.ZooFlow/ApplicationEvents.vb | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/GUIs.ZooFlow/ApplicationEvents.vb b/GUIs.ZooFlow/ApplicationEvents.vb index 777dee28..bf1c2b0e 100644 --- a/GUIs.ZooFlow/ApplicationEvents.vb +++ b/GUIs.ZooFlow/ApplicationEvents.vb @@ -1,8 +1,6 @@ -Imports Microsoft.VisualBasic.ApplicationServices +Imports DigitalData.Modules.Config Imports DigitalData.Modules.Logging -Imports DigitalData.Modules.Config Imports DigitalData.Modules.Logging.LogConfig -Imports System.Text.RegularExpressions Namespace My ' Für MyApplication sind folgende Ereignisse verfügbar: @@ -17,23 +15,24 @@ Namespace My Private _BaseUserConfigPath As String = Windows.Forms.Application.UserAppDataPath Private _BaseLocalUserConfigPath As String = Windows.Forms.Application.LocalUserAppDataPath Private _BaseMachineConfigPath As String = Windows.Forms.Application.CommonAppDataPath + Private _BaseStartupPath As String = Windows.Forms.Application.StartupPath Public Sub App_Startup() Handles Me.Startup - Dim oLogConfig As New LogConfig(LogPath:=PathType.AppData, CompanyName:="Digital Data", ProductName:="ZooFlow") With { - .Debug = True - } + Dim oLogConfig As New LogConfig(LogPath:=PathType.AppData, CompanyName:="Digital Data", ProductName:="ZooFlow") With {.Debug = True} ' System Config files like Service Url will be saved in %LocalAppdata% so they will remain on the machine Dim oSystemConfigManager As New ConfigManager(Of ClassConfig)(oLogConfig, _BaseLocalUserConfigPath, - _BaseMachineConfigPath) + _BaseMachineConfigPath, + _BaseStartupPath) ' Layout files will be saved in %Appdata% (Roaming) so they will be syncronized with the user profile Dim oUIConfigPath = IO.Path.Combine(_BaseUserConfigPath, ClassConstants.FOLDER_NAME_LAYOUT) - Dim oUIConfigManager As New ConfigManager(Of ClassUIConfig)(oLogConfig, oUIConfigPath, oUIConfigPath) + Dim oUIConfigAlternatePath = IO.Path.Combine(_BaseStartupPath, ClassConstants.FOLDER_NAME_LAYOUT) + Dim oUIConfigManager As New ConfigManager(Of ClassUIConfig)(oLogConfig, oUIConfigPath, oUIConfigPath, oUIConfigAlternatePath) LogConfig = oLogConfig - LogConfig.Debug = True 'oSystemConfigManager.Config.LogDebug + LogConfig.Debug = True SystemConfigManager = oSystemConfigManager UIConfigManager = oUIConfigManager