From 809b4dafc3e2cbce3d4ebf944850201552716ed1 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Tue, 29 Mar 2022 16:35:24 +0200 Subject: [PATCH] EDMI: Checkin/out --- GUIs.Common/Common.vbproj | 3 + GUIs.Common/DocumentResultList/Layout.vb | 41 ++++- GUIs.Common/My Project/Resources.Designer.vb | 10 ++ GUIs.Common/My Project/Resources.resx | 43 +++--- GUIs.Common/Resources/business_world.svg | 15 ++ GUIs.Common/frmDocumentResultList.Designer.vb | 32 ++-- GUIs.Common/frmDocumentResultList.resx | 142 +++++++++--------- GUIs.Common/frmDocumentResultList.vb | 127 ++++++++++------ GUIs.ZooFlow/frmFlowForm.Designer.vb | 48 +++--- GUIs.ZooFlow/frmFlowForm.resx | 2 +- GUIs.ZooFlow/frmFlowForm.vb | 4 - Modules.Base/Base/IDB/FileStore.vb | 2 + Service.EDMIService/IDB/Helpers.vb | 4 +- .../CheckInOutFile/CheckInOutFileMethod.vb | 4 + 14 files changed, 294 insertions(+), 183 deletions(-) create mode 100644 GUIs.Common/Resources/business_world.svg diff --git a/GUIs.Common/Common.vbproj b/GUIs.Common/Common.vbproj index 8ee7a874..61e7b302 100644 --- a/GUIs.Common/Common.vbproj +++ b/GUIs.Common/Common.vbproj @@ -374,5 +374,8 @@ + + + \ No newline at end of file diff --git a/GUIs.Common/DocumentResultList/Layout.vb b/GUIs.Common/DocumentResultList/Layout.vb index 39564d5f..11579920 100644 --- a/GUIs.Common/DocumentResultList/Layout.vb +++ b/GUIs.Common/DocumentResultList/Layout.vb @@ -22,13 +22,32 @@ Namespace DocumentResultList End Sub #Region "Saving and Restoring layout" + Public Sub Workspace_Save(pWorkspaceManager As WorkspaceManager) + Try + Dim oFileName = GetWorkspace_LayoutName() + pWorkspaceManager.SaveWorkspaces(oFileName) + Catch ex As Exception + Logger.Error(ex) + Logger.Info("Error while restoring Workspaces: " & ex.Message) + End Try + End Sub - + Public Sub Workspace_Restore(pWorkspaceManager As WorkspaceManager) + Try + Dim oFileName = GetWorkspace_LayoutName() + If IO.File.Exists(oFileName) Then + pWorkspaceManager.LoadWorkspaces(oFileName) + End If + Catch ex As Exception + Logger.Error(ex) + Logger.Info("Error while restoring Workspaces: " & ex.Message) + End Try + End Sub Public Sub DockManager_SaveLayout(pDockManager As DockManager) Try - Dim oXml As String = GetDockmanager_LayoutName() - pDockManager.SaveLayoutToXml(oXml) + Dim oFileName As String = GetDockmanager_LayoutName() + pDockManager.SaveLayoutToXml(oFileName) Catch ex As Exception Logger.Error(ex) Logger.Info("Error while saving GridLayout: " & ex.Message) @@ -37,8 +56,10 @@ Namespace DocumentResultList Public Sub DockManager_RestoreLayout(pDockManager As DockManager) Try - Dim oXml As String = GetDockmanager_LayoutName() - pDockManager.RestoreLayoutFromXml(oXml) + Dim oFilename As String = GetDockmanager_LayoutName() + If IO.File.Exists(oFilename) Then + pDockManager.RestoreLayoutFromXml(oFilename) + End If Catch ex As Exception Logger.Error(ex) Logger.Info("Error while restoring GridLayout: " & ex.Message) @@ -59,8 +80,8 @@ Namespace DocumentResultList Public Sub GridView_SaveLayout(pGridView As GridView) Try - Dim oXml As String = GetGrid_LayoutName(pGridView) - pGridView.SaveLayoutToXml(oXml, OptionsLayoutBase.FullLayout) + Dim oFileName As String = GetGrid_LayoutName(pGridView) + pGridView.SaveLayoutToXml(oFileName, OptionsLayoutBase.FullLayout) Catch ex As Exception Logger.Error(ex) Logger.Info("Error while saving GridLayout: " & ex.Message) @@ -79,6 +100,12 @@ Namespace DocumentResultList Return IO.Path.Combine(oDirectory, Filename) End Function + Public Function GetWorkspace_LayoutName() As String + Dim Filename As String = $"Workspace_UserLayout.xml" + Dim oDirectory As String = IO.Path.GetDirectoryName(Config.UserConfigPath) + Return IO.Path.Combine(oDirectory, Filename) + End Function + Public Sub LoadWindowLocationAndSize(ByRef pForm As Form) If Utils.IsVisibleOnAnyScreen(Config.Config.WindowLocation) Then If Utils.LocationIsVisible(Config.Config.WindowLocation) Then diff --git a/GUIs.Common/My Project/Resources.Designer.vb b/GUIs.Common/My Project/Resources.Designer.vb index 8c3a8099..876316be 100644 --- a/GUIs.Common/My Project/Resources.Designer.vb +++ b/GUIs.Common/My Project/Resources.Designer.vb @@ -130,6 +130,16 @@ Namespace My.Resources End Get End Property + ''' + ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. + ''' + Friend ReadOnly Property business_world() As DevExpress.Utils.Svg.SvgImage + Get + Dim obj As Object = ResourceManager.GetObject("business_world", resourceCulture) + Return CType(obj,DevExpress.Utils.Svg.SvgImage) + End Get + End Property + ''' ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' diff --git a/GUIs.Common/My Project/Resources.resx b/GUIs.Common/My Project/Resources.resx index 752211a8..162cdbc7 100644 --- a/GUIs.Common/My Project/Resources.resx +++ b/GUIs.Common/My Project/Resources.resx @@ -145,6 +145,9 @@ ..\Resources\ZooFlow-Vergroessern.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\save.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + ..\Resources\Open_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -157,8 +160,8 @@ ..\Resources\jpg.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\xls.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\editcolors.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\ppt.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -166,14 +169,11 @@ ..\Resources\copy.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\zoom_more.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\refreshallpivottable.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\columnheaders.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\insertpagecount.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\enablescrolling.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -181,9 +181,6 @@ ..\Resources\title.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\clearpivottable.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - ..\Resources\singlepageview1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -196,8 +193,8 @@ ..\Resources\singlepageview.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\_page.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\clearpivottable.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a ..\Resources\categorize.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a @@ -205,11 +202,17 @@ ..\Resources\tiff.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\editcolors.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\open.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\save.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\columnheaders.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + ..\Resources\_page.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\xls.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\dwg.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -229,13 +232,13 @@ ..\Resources\save1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - ..\Resources\open.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\zoom_more.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\Article_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\insertpagecount.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + ..\Resources\business_world.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a \ No newline at end of file diff --git a/GUIs.Common/Resources/business_world.svg b/GUIs.Common/Resources/business_world.svg new file mode 100644 index 00000000..b7c75a44 --- /dev/null +++ b/GUIs.Common/Resources/business_world.svg @@ -0,0 +1,15 @@ + + + + + + + \ No newline at end of file diff --git a/GUIs.Common/frmDocumentResultList.Designer.vb b/GUIs.Common/frmDocumentResultList.Designer.vb index 9a3c3852..db5ed8f2 100644 --- a/GUIs.Common/frmDocumentResultList.Designer.vb +++ b/GUIs.Common/frmDocumentResultList.Designer.vb @@ -82,6 +82,7 @@ Partial Class frmDocumentResultList Me.RibbonPageGroup_Layout = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RepositoryItemTextEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit() Me.RepositoryItemTextEdit2 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit() + Me.RepositoryItemSearchControl1 = New DevExpress.XtraEditors.Repository.RepositoryItemSearchControl() Me.RibbonStatusBar = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() Me.SplitContainerControl2 = New DevExpress.XtraEditors.SplitContainerControl() Me.GridControl2 = New DevExpress.XtraGrid.GridControl() @@ -124,6 +125,7 @@ Partial Class frmDocumentResultList CType(Me.RibbonControl, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.RepositoryItemSearchControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SplitContainerControl2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SplitContainerControl2.Panel1, System.ComponentModel.ISupportInitialize).BeginInit() Me.SplitContainerControl2.Panel1.SuspendLayout() @@ -216,12 +218,12 @@ Partial Class frmDocumentResultList Me.RibbonControl.ExpandCollapseItem.Id = 0 Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.RibbonControl.SearchEditItem, Me.SwitchMainContainerHorizontal, Me.SwitchDetailContainerHorizontal, Me.BarButtonItemExportGrid1, Me.BarStaticItem1, Me.labelResultCount, Me.BarButtonBack, Me.BarButtonResetLayout, Me.labelCriticalError, Me.labelWarning, Me.MenuItemFileOpen, Me.MenuItemPropertiesIDB, Me.MenuItemFolderOpen, Me.MenuItemFilepathCopy, Me.MenuItemFolderpathCopy, Me.MenuItemProperties, Me.MenuItemsOpenFileZooFlow, Me.MenuItemPropertiesZooFlow, Me.ButtonRefresh, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarButtonItem3, Me.BarButtonItem4, Me.BarButtonItem5, Me.BarButtonItem6, Me.MenuItemStartAdhocWorkflow, Me.MenuItemCheckInFile, Me.MenuItemCheckOutFile, Me.MenuItemVersionFile, Me.chkGridShowQuickfilter, Me.chkGridShowGrouping, Me.chkGridShowTitle, Me.MenuItemSaveProperties, Me.BarButtonItem11, Me.BarWorkspaceMenuItem1}) resources.ApplyResources(Me.RibbonControl, "RibbonControl") - Me.RibbonControl.MaxItemId = 48 + Me.RibbonControl.MaxItemId = 49 Me.RibbonControl.Name = "RibbonControl" Me.RibbonControl.PageCategories.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageCategory() {Me.RibbonPageCategoryFile, Me.RibbonPageCategoryAttribute}) Me.RibbonControl.PageHeaderItemLinks.Add(Me.BarWorkspaceMenuItem1) Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPageStart, Me.RibbonPage2}) - Me.RibbonControl.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemTextEdit1, Me.RepositoryItemTextEdit2}) + Me.RibbonControl.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemTextEdit1, Me.RepositoryItemTextEdit2, Me.RepositoryItemSearchControl1}) Me.RibbonControl.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False] Me.RibbonControl.ShowToolbarCustomizeItem = False Me.RibbonControl.StatusBar = Me.RibbonStatusBar @@ -471,10 +473,12 @@ Partial Class frmDocumentResultList ' 'BarWorkspaceMenuItem1 ' - resources.ApplyResources(Me.BarWorkspaceMenuItem1, "BarWorkspaceMenuItem1") Me.BarWorkspaceMenuItem1.Id = 45 + Me.BarWorkspaceMenuItem1.ImageOptions.SvgImage = Global.DigitalData.GUIs.Common.My.Resources.Resources.business_world Me.BarWorkspaceMenuItem1.Name = "BarWorkspaceMenuItem1" + Me.BarWorkspaceMenuItem1.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText Me.BarWorkspaceMenuItem1.WorkspaceManager = Me.WorkspaceManager1 + Me.BarWorkspaceMenuItem1.WorkspacesSortMode = DevExpress.XtraBars.WorspacesSortMode.Usage ' 'WorkspaceManager1 ' @@ -616,6 +620,12 @@ Partial Class frmDocumentResultList resources.ApplyResources(Me.RepositoryItemTextEdit2, "RepositoryItemTextEdit2") Me.RepositoryItemTextEdit2.Name = "RepositoryItemTextEdit2" ' + 'RepositoryItemSearchControl1 + ' + resources.ApplyResources(Me.RepositoryItemSearchControl1, "RepositoryItemSearchControl1") + Me.RepositoryItemSearchControl1.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Repository.ClearButton(), New DevExpress.XtraEditors.Repository.SearchButton()}) + Me.RepositoryItemSearchControl1.Name = "RepositoryItemSearchControl1" + ' 'RibbonStatusBar ' Me.RibbonStatusBar.ItemLinks.Add(Me.labelResultCount) @@ -759,7 +769,7 @@ Partial Class frmDocumentResultList resources.ApplyResources(Me.DockPanelStatus, "DockPanelStatus") Me.DockPanelStatus.Name = "DockPanelStatus" Me.DockPanelStatus.Options.ShowCloseButton = False - Me.DockPanelStatus.OriginalSize = New System.Drawing.Size(268, 434) + Me.DockPanelStatus.OriginalSize = New System.Drawing.Size(268, 413) ' 'ControlContainer1 ' @@ -800,7 +810,7 @@ Partial Class frmDocumentResultList Me.Root.GroupBordersVisible = False Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlGroup1, Me.EmptySpaceItem1}) Me.Root.Name = "Root" - Me.Root.Size = New System.Drawing.Size(268, 413) + Me.Root.Size = New System.Drawing.Size(268, 434) Me.Root.TextVisible = False ' 'LayoutControlGroup1 @@ -818,7 +828,7 @@ Partial Class frmDocumentResultList Me.LayoutControlItem1.Name = "LayoutControlItem1" Me.LayoutControlItem1.Size = New System.Drawing.Size(224, 24) resources.ApplyResources(Me.LayoutControlItem1, "LayoutControlItem1") - Me.LayoutControlItem1.TextSize = New System.Drawing.Size(126, 13) + Me.LayoutControlItem1.TextSize = New System.Drawing.Size(137, 13) ' 'LayoutControlItem2 ' @@ -827,14 +837,14 @@ Partial Class frmDocumentResultList Me.LayoutControlItem2.Name = "LayoutControlItem2" Me.LayoutControlItem2.Size = New System.Drawing.Size(224, 24) resources.ApplyResources(Me.LayoutControlItem2, "LayoutControlItem2") - Me.LayoutControlItem2.TextSize = New System.Drawing.Size(126, 13) + Me.LayoutControlItem2.TextSize = New System.Drawing.Size(137, 13) ' 'EmptySpaceItem1 ' Me.EmptySpaceItem1.AllowHotTrack = False Me.EmptySpaceItem1.Location = New System.Drawing.Point(0, 93) Me.EmptySpaceItem1.Name = "EmptySpaceItem1" - Me.EmptySpaceItem1.Size = New System.Drawing.Size(248, 300) + Me.EmptySpaceItem1.Size = New System.Drawing.Size(248, 321) Me.EmptySpaceItem1.TextSize = New System.Drawing.Size(0, 0) ' 'DockPanelMetadata @@ -845,7 +855,7 @@ Partial Class frmDocumentResultList resources.ApplyResources(Me.DockPanelMetadata, "DockPanelMetadata") Me.DockPanelMetadata.Name = "DockPanelMetadata" Me.DockPanelMetadata.Options.ShowCloseButton = False - Me.DockPanelMetadata.OriginalSize = New System.Drawing.Size(268, 434) + Me.DockPanelMetadata.OriginalSize = New System.Drawing.Size(268, 413) ' 'DockPanel3_Container ' @@ -883,9 +893,9 @@ Partial Class frmDocumentResultList Me.AllowFormGlass = DevExpress.Utils.DefaultBoolean.[True] resources.ApplyResources(Me, "$this") Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.Controls.Add(Me.DockPanelFileList) Me.Controls.Add(Me.DockPanelDocViewer) Me.Controls.Add(Me.panelContainer1) + Me.Controls.Add(Me.DockPanelFileList) Me.Controls.Add(Me.RibbonStatusBar) Me.Controls.Add(Me.RibbonControl) Me.IconOptions.Icon = CType(resources.GetObject("frmDocumentResultList.IconOptions.Icon"), System.Drawing.Icon) @@ -904,6 +914,7 @@ Partial Class frmDocumentResultList CType(Me.RibbonControl, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.RepositoryItemSearchControl1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.SplitContainerControl2.Panel1, System.ComponentModel.ISupportInitialize).EndInit() Me.SplitContainerControl2.Panel1.ResumeLayout(False) CType(Me.SplitContainerControl2.Panel2, System.ComponentModel.ISupportInitialize).EndInit() @@ -1031,4 +1042,5 @@ Partial Class frmDocumentResultList Friend WithEvents LayoutControlItem1 As DevExpress.XtraLayout.LayoutControlItem Friend WithEvents LayoutControlItem2 As DevExpress.XtraLayout.LayoutControlItem Friend WithEvents EmptySpaceItem1 As DevExpress.XtraLayout.EmptySpaceItem + Friend WithEvents RepositoryItemSearchControl1 As DevExpress.XtraEditors.Repository.RepositoryItemSearchControl End Class diff --git a/GUIs.Common/frmDocumentResultList.resx b/GUIs.Common/frmDocumentResultList.resx index f7aaa212..0e5069e4 100644 --- a/GUIs.Common/frmDocumentResultList.resx +++ b/GUIs.Common/frmDocumentResultList.resx @@ -474,9 +474,6 @@ Spaltenauswahl - - BarWorkspaceMenuItem1 - 456, 22 @@ -489,49 +486,6 @@ 1189, 671 - - 3, 46 - - - 578, 442 - - - - 0 - - - DockPanel2_Container - - - DevExpress.XtraBars.Docking.ControlContainer, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - - DockPanelFileList - - - 0 - - - 0, 158 - - - 585, 491 - - - Ergebnisse - - - DockPanelFileList - - - DevExpress.XtraBars.Docking.DockPanel, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - - $this - - - 0 - Fill @@ -539,8 +493,9 @@ 0, 0 - 323, 441 + 323, 459 + 0 @@ -557,10 +512,10 @@ 0 - 3, 46 + 3, 26 - 323, 441 + 323, 459 0 @@ -581,7 +536,7 @@ 585, 158 - 329, 491 + 329, 489 Vorschau @@ -596,13 +551,13 @@ $this - 1 + 0 - 162, 45 + 173, 45 - 82, 20 + 71, 20 4 @@ -623,7 +578,7 @@ - 162, 69 + 173, 69 @@ -633,7 +588,7 @@ Combo - 82, 20 + 71, 20 5 @@ -666,7 +621,7 @@ In Bearbeitung - 268, 413 + 268, 434 0 @@ -690,7 +645,7 @@ 0, 0 - 268, 413 + 268, 434 0 @@ -708,10 +663,10 @@ 0 - 4, 46 + 4, 26 - 268, 413 + 268, 434 Status @@ -735,7 +690,7 @@ 0, 0 - 268, 413 + 268, 434 0 @@ -756,7 +711,7 @@ 0, 0 - 268, 413 + 268, 434 0 @@ -774,10 +729,10 @@ 0 - 4, 46 + 4, 26 - 268, 413 + 268, 434 Eigenschaften @@ -798,7 +753,7 @@ 914, 158 - 275, 491 + 275, 489 panelContainer1 @@ -813,13 +768,55 @@ $this + 1 + + + 3, 26 + + + 578, 460 + + + 0 + + + DockPanel2_Container + + + DevExpress.XtraBars.Docking.ControlContainer, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + DockPanelFileList + + + 0 + + + 0, 158 + + + 585, 489 + + + Ergebnisse + + + DockPanelFileList + + + DevExpress.XtraBars.Docking.DockPanel, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + $this + + 2 - 0, 649 + 0, 647 - 1189, 22 + 1189, 24 RibbonStatusBar @@ -1258,6 +1255,12 @@ DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + RepositoryItemSearchControl1 + + + DevExpress.XtraEditors.Repository.RepositoryItemSearchControl, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + GridView2 @@ -1405,6 +1408,9 @@ False + + False + 1189, 158 @@ -1421,7 +1427,7 @@ 4 - 568, 442 + 568, 460 0 @@ -1592,7 +1598,7 @@ 1 - 578, 442 + 578, 460 2 diff --git a/GUIs.Common/frmDocumentResultList.vb b/GUIs.Common/frmDocumentResultList.vb index 1cd1b6fe..2d2a375a 100644 --- a/GUIs.Common/frmDocumentResultList.vb +++ b/GUIs.Common/frmDocumentResultList.vb @@ -37,22 +37,22 @@ Public Class frmDocumentResultList ' Helper Classes Private Client As Client - Private Documentloader As DocumentResultList.Loader + Private Documentloader As Loader Private ControlManager As AttributeControls Private CheckoutManager As CheckInOut - Private ReadOnly Config As ConfigManager(Of DocumentResultList.Config) + Private ReadOnly Config As ConfigManager(Of Config) Private ReadOnly Environment As Environment Private ReadOnly Filesystem As Modules.Filesystem.File Private ReadOnly GridBuilder As GridBuilder Private ReadOnly FileEx As Modules.Windows.File Private ReadOnly Helpers As DocumentResultList.Helpers - Private ReadOnly Params As DocumentResultList.Params - Private ReadOnly LayoutManager As DocumentResultList.Layout - Private WithEvents Watcher As DocumentResultList.Watcher + Private ReadOnly Params As Params + Private ReadOnly LayoutManager As Layout + Private WithEvents Watcher As Watcher ' Runtime variables - Private Property ResultLists As List(Of DocumentResultList.DocumentResult) + Private Property ResultLists As List(Of DocumentResult) Private IsLoading As Boolean = True Private _DragBoxFromMouseDown As Rectangle @@ -72,7 +72,11 @@ Public Class frmDocumentResultList Private Property ViewList As List(Of BandedGridView) Private Property OperationMode As OperationMode Implements IResultForm.OperationMode - + Public ReadOnly Property Config1 As ConfigManager(Of Config) + Get + Return Config + End Get + End Property Public Event NeedsRefresh As EventHandler(Of Integer) Implements IResultForm.NeedsRefresh Public Event ResultsRefreshed As EventHandler(Of List(Of DocumentResultList.DocumentResult)) @@ -151,10 +155,12 @@ Public Class frmDocumentResultList 'Load config LayoutManager.LoadWindowLocationAndSize(Me) LayoutManager.DockManager_RestoreLayout(DockManager1) - SplitContainerControl1.SplitterPosition = Config.Config.SplitContainer1Distance - SwitchMainContainerHorizontal.Checked = Config.Config.SplitContainer1Horizontal - SplitContainerControl2.SplitterPosition = Config.Config.SplitContainer2Distance - SwitchDetailContainerHorizontal.Checked = Config.Config.SplitContainer2Horizontal + LayoutManager.Workspace_Restore(WorkspaceManager1) + + SplitContainerControl1.SplitterPosition = Config1.Config.SplitContainer1Distance + SwitchMainContainerHorizontal.Checked = Config1.Config.SplitContainer1Horizontal + SplitContainerControl2.SplitterPosition = Config1.Config.SplitContainer2Distance + SwitchDetailContainerHorizontal.Checked = Config1.Config.SplitContainer2Horizontal ' Hide options relating to a filepath for zooflow If OperationMode = OperationMode.ZooFlow Then @@ -163,17 +169,17 @@ Public Class frmDocumentResultList RibbonPageGroupFilesystem.Visible = False End If - If OperationMode = OperationMode.NoAppServer Then - DockPanelMetadata.Visibility = Docking.DockVisibility.Hidden - End If - - If OperationMode <> OperationMode.NoAppServer Then + If OperationMode = OperationMode.ZooFlow Or OperationMode = OperationMode.WithAppServer Then CtrlObjectPropertyDialog.Initialize(LogConfig, Me, Client, Environment) SwitchMainContainerHorizontal.Visibility = BarItemVisibility.Never SwitchDetailContainerHorizontal.Visibility = BarItemVisibility.Never End If + If OperationMode = OperationMode.NoAppServer Then + DockPanelMetadata.Visibility = Docking.DockVisibility.Hidden + End If + UpdateTotalResults() LoadGridDataAndLayout() @@ -195,6 +201,7 @@ Public Class frmDocumentResultList Private Sub frmDocumentResultList_Closing(sender As Object, e As CancelEventArgs) Handles Me.FormClosing Try LayoutManager.GridView_SaveLayout(_ActiveGrid.MainView) + LayoutManager.Workspace_Save(WorkspaceManager1) LayoutManager.DockManager_SaveLayout(DockManager1) LayoutManager.SaveWindowLocationAndSize(Me) @@ -214,7 +221,7 @@ Public Class frmDocumentResultList Dim oRow = sender.GetDataRow(Helpers.ActiveRowHandle) Dim oObjectId = oRow.ItemEx(Of Long)(ColumnDocumentId, 0) Dim oFullPath = oRow.ItemEx(ColumnFilepath, "") - Dim oDocumentInfo As DocumentResultList.Document = Nothing + Dim oDocument As DocumentResultList.Document = Nothing ' Show Ribbon Category If RibbonPageCategoryFile.Visible = False Then @@ -223,41 +230,31 @@ Public Class frmDocumentResultList End If ' Load DocumentInfo - oDocumentInfo = Documentloader.Load(oObjectId, oFullPath) - If IsNothing(oDocumentInfo) Then - DocumentViewer1.CloseDocument() - ErrorHandler.ShowErrorMessage("File could not be loaded!") + oDocument = Documentloader.Load(oObjectId, oFullPath) + + If oDocument Is Nothing Then Exit Sub End If + UpdateRibbonActions(oDocument) + ' Save reference to current document - _CurrentDocument = oDocumentInfo + _CurrentDocument = oDocument ' Load Document in Document Viewer - Dim oFileName = $"{oObjectId}.{oDocumentInfo.Extension}" - DocumentViewer1.LoadFile(oFileName, New MemoryStream(oDocumentInfo.Contents)) + Dim oFileName = $"{oObjectId}.{oDocument.Extension}" + DocumentViewer1.LoadFile(oFileName, New MemoryStream(oDocument.Contents)) + If IsNothing(oDocument) Then + DocumentViewer1.CloseDocument() + ErrorHandler.ShowErrorMessage("File could not be loaded!") - ' Hide Export and filesystem options for view only right - If oDocumentInfo.AccessRight = Rights.AccessRight.VIEW_ONLY Then - DocumentViewer1.SetViewOnly(True) - RibbonPageGroupExport.Visible = False - RibbonPageGroupFilesystem.Visible = False - Else - DocumentViewer1.SetViewOnly(False) - RibbonPageGroupExport.Visible = True - RibbonPageGroupFilesystem.Visible = True + Exit Sub End If If OperationMode = OperationMode.ZooFlow Or OperationMode = OperationMode.WithAppServer Then - 'Dim oEntityId = 1 - 'Dim oAttributes = Await ControlManager.GetAttributesForBusinessEntity(oEntityId) - 'If oAttributes.Count = 0 Then - ' MsgBox($"Es konnten keine Attribute für das Objekt '{oObjectId}' geladen werden!", MsgBoxStyle.Critical, Text) - 'End If - Await CtrlObjectPropertyDialog.LoadObject(oObjectId) - Dim oCheckoutState = Await CheckOutManager.GetCheckoutState(oObjectId) + Dim oCheckoutState = Await CheckoutManager.GetCheckoutState(oObjectId) If oCheckoutState IsNot Nothing Then txtCheckedOutWho.EditValue = oCheckoutState.CheckedOutWho dateCheckedOutWhen.EditValue = oCheckoutState.CheckedOutWhen @@ -266,9 +263,9 @@ Public Class frmDocumentResultList dateCheckedOutWhen.EditValue = Nothing End If End If + Else - RibbonPageCategoryFile.Visible = False - RibbonControl.SelectedPage = RibbonPageStart + UpdateRibbonActions(Nothing) End If Catch ex As Exception ErrorHandler.ShowErrorMessage(ex, "GridView_FocusedRowChanged") @@ -277,6 +274,40 @@ Public Class frmDocumentResultList End Try End Sub + Private Function UpdateRibbonActions(pDocument As DocumentResultList.Document) As Boolean + Try + If pDocument Is Nothing Then + RibbonPageCategoryFile.Visible = False + RibbonControl.SelectedPage = RibbonPageStart + Return True + End If + + ' Hide Export and filesystem options for view only right + If pDocument.AccessRight = Rights.AccessRight.VIEW_ONLY Then + DocumentViewer1.SetViewOnly(True) + RibbonPageGroupExport.Visible = False + + If OperationMode = OperationMode.NoAppServer Then + RibbonPageGroupFilesystem.Visible = False + MenuItemProperties.Visibility = BarItemVisibility.Never + End If + Else + DocumentViewer1.SetViewOnly(False) + RibbonPageGroupExport.Visible = True + + If OperationMode = OperationMode.NoAppServer Then + RibbonPageGroupFilesystem.Visible = True + MenuItemProperties.Visibility = BarItemVisibility.Always + End If + End If + + Return True + Catch ex As Exception + Logger.Error(ex) + Return False + End Try + End Function + #Region "Watcher" Public Async Sub Watcher_FileOpened(sender As Object, e As DocumentResultList.Watcher.FileOpenedArgs) Handles Watcher.FileOpened @@ -940,29 +971,29 @@ Public Class frmDocumentResultList #Region "Layout" Private Sub SplitContainerControl1_SplitterPositionChanged(sender As Object, e As EventArgs) Handles SplitContainerControl1.SplitterPositionChanged If IsLoading = False Then - Config.Config.SplitContainer1Distance = SplitContainerControl1.SplitterPosition + Config1.Config.SplitContainer1Distance = SplitContainerControl1.SplitterPosition End If End Sub Private Sub SplitContainerControl2_SplitterPositionChanged(sender As Object, e As EventArgs) Handles SplitContainerControl2.SplitterPositionChanged If IsLoading = False Then - Config.Config.SplitContainer2Distance = SplitContainerControl2.SplitterPosition + Config1.Config.SplitContainer2Distance = SplitContainerControl2.SplitterPosition End If End Sub Private Sub SwitchMainContainerHorizontal_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles SwitchMainContainerHorizontal.CheckedChanged SplitContainerControl1.Horizontal = SwitchMainContainerHorizontal.Checked - If Config IsNot Nothing And IsLoading = False Then - Config.Config.SplitContainer1Horizontal = SwitchMainContainerHorizontal.Checked + If Config1 IsNot Nothing And IsLoading = False Then + Config1.Config.SplitContainer1Horizontal = SwitchMainContainerHorizontal.Checked End If End Sub Private Sub SwitchDetailContainerHorizontal2_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles SwitchDetailContainerHorizontal.CheckedChanged SplitContainerControl2.Horizontal = SwitchDetailContainerHorizontal.Checked - If Config IsNot Nothing And IsLoading = False Then - Config.Config.SplitContainer2Horizontal = SwitchDetailContainerHorizontal.Checked + If Config1 IsNot Nothing And IsLoading = False Then + Config1.Config.SplitContainer2Horizontal = SwitchDetailContainerHorizontal.Checked End If End Sub #End Region diff --git a/GUIs.ZooFlow/frmFlowForm.Designer.vb b/GUIs.ZooFlow/frmFlowForm.Designer.vb index e94c74db..3865389f 100644 --- a/GUIs.ZooFlow/frmFlowForm.Designer.vb +++ b/GUIs.ZooFlow/frmFlowForm.Designer.vb @@ -30,13 +30,13 @@ Partial Class frmFlowForm Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmFlowForm)) Me.NotifyIcon = New System.Windows.Forms.NotifyIcon(Me.components) Me.ContextMenuSystray = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.EinblendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() Me.ToolStripSeparator1 = New System.Windows.Forms.ToolStripSeparator() Me.VerwaltungToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() Me.ToolStripSeparator3 = New System.Windows.Forms.ToolStripSeparator() Me.TestToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() Me.ToolStripSeparator2 = New System.Windows.Forms.ToolStripSeparator() Me.ZooFlowBeendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() - Me.EinblendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() Me.TimerRefreshData = New System.Windows.Forms.Timer(Me.components) Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components) Me.PictureBoxPM = New DevExpress.XtraEditors.SvgImageBox() @@ -98,50 +98,50 @@ Partial Class frmFlowForm ' Me.ContextMenuSystray.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.EinblendenToolStripMenuItem, Me.ToolStripSeparator1, Me.VerwaltungToolStripMenuItem, Me.ToolStripSeparator3, Me.TestToolStripMenuItem, Me.ToolStripSeparator2, Me.ZooFlowBeendenToolStripMenuItem}) Me.ContextMenuSystray.Name = "ContextMenuSystray" - Me.ContextMenuSystray.Size = New System.Drawing.Size(181, 132) + Me.ContextMenuSystray.Size = New System.Drawing.Size(170, 110) + ' + 'EinblendenToolStripMenuItem + ' + Me.EinblendenToolStripMenuItem.Image = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.action_add_16xMD + Me.EinblendenToolStripMenuItem.Name = "EinblendenToolStripMenuItem" + Me.EinblendenToolStripMenuItem.Size = New System.Drawing.Size(169, 22) + Me.EinblendenToolStripMenuItem.Text = "Einblenden" + Me.EinblendenToolStripMenuItem.Visible = False ' 'ToolStripSeparator1 ' Me.ToolStripSeparator1.Name = "ToolStripSeparator1" - Me.ToolStripSeparator1.Size = New System.Drawing.Size(177, 6) + Me.ToolStripSeparator1.Size = New System.Drawing.Size(166, 6) ' 'VerwaltungToolStripMenuItem ' Me.VerwaltungToolStripMenuItem.Image = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.gear_32xLG Me.VerwaltungToolStripMenuItem.Name = "VerwaltungToolStripMenuItem" - Me.VerwaltungToolStripMenuItem.Size = New System.Drawing.Size(180, 22) + Me.VerwaltungToolStripMenuItem.Size = New System.Drawing.Size(169, 22) Me.VerwaltungToolStripMenuItem.Text = "Verwaltung" ' 'ToolStripSeparator3 ' Me.ToolStripSeparator3.Name = "ToolStripSeparator3" - Me.ToolStripSeparator3.Size = New System.Drawing.Size(177, 6) + Me.ToolStripSeparator3.Size = New System.Drawing.Size(166, 6) ' 'TestToolStripMenuItem ' Me.TestToolStripMenuItem.Name = "TestToolStripMenuItem" - Me.TestToolStripMenuItem.Size = New System.Drawing.Size(180, 22) + Me.TestToolStripMenuItem.Size = New System.Drawing.Size(169, 22) Me.TestToolStripMenuItem.Text = "Test" ' 'ToolStripSeparator2 ' Me.ToolStripSeparator2.Name = "ToolStripSeparator2" - Me.ToolStripSeparator2.Size = New System.Drawing.Size(177, 6) + Me.ToolStripSeparator2.Size = New System.Drawing.Size(166, 6) ' 'ZooFlowBeendenToolStripMenuItem ' Me.ZooFlowBeendenToolStripMenuItem.Name = "ZooFlowBeendenToolStripMenuItem" - Me.ZooFlowBeendenToolStripMenuItem.Size = New System.Drawing.Size(180, 22) + Me.ZooFlowBeendenToolStripMenuItem.Size = New System.Drawing.Size(169, 22) Me.ZooFlowBeendenToolStripMenuItem.Text = "ZooFlow beenden" ' - 'EinblendenToolStripMenuItem - ' - Me.EinblendenToolStripMenuItem.Image = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.action_add_16xMD - Me.EinblendenToolStripMenuItem.Name = "EinblendenToolStripMenuItem" - Me.EinblendenToolStripMenuItem.Size = New System.Drawing.Size(180, 22) - Me.EinblendenToolStripMenuItem.Text = "Einblenden" - Me.EinblendenToolStripMenuItem.Visible = False - ' 'PictureBoxPM ' Me.PictureBoxPM.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) @@ -162,7 +162,7 @@ Partial Class frmFlowForm Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.PictureBoxSearch.Cursor = System.Windows.Forms.Cursors.Hand Me.PictureBoxSearch.ItemHitTestType = DevExpress.XtraEditors.ItemHitTestType.BoundingBox - Me.PictureBoxSearch.Location = New System.Drawing.Point(21, 280) + Me.PictureBoxSearch.Location = New System.Drawing.Point(21, 281) Me.PictureBoxSearch.Name = "PictureBoxSearch" Me.PictureBoxSearch.Size = New System.Drawing.Size(158, 50) Me.PictureBoxSearch.SizeMode = DevExpress.XtraEditors.SvgImageSizeMode.Zoom @@ -182,7 +182,7 @@ Partial Class frmFlowForm Me.pnlQuicksearch1.Controls.Add(Me.PictureEditQuicksearch1) Me.pnlQuicksearch1.Controls.Add(Me.lblQuicksearch1) Me.pnlQuicksearch1.Dock = System.Windows.Forms.DockStyle.Bottom - Me.pnlQuicksearch1.Location = New System.Drawing.Point(0, 335) + Me.pnlQuicksearch1.Location = New System.Drawing.Point(0, 336) Me.pnlQuicksearch1.Name = "pnlQuicksearch1" Me.pnlQuicksearch1.Size = New System.Drawing.Size(202, 75) Me.pnlQuicksearch1.TabIndex = 16 @@ -314,9 +314,9 @@ Partial Class frmFlowForm Me.barDockControlBottom.Appearance.Options.UseBackColor = True Me.barDockControlBottom.CausesValidation = False Me.barDockControlBottom.Dock = System.Windows.Forms.DockStyle.Bottom - Me.barDockControlBottom.Location = New System.Drawing.Point(0, 612) + Me.barDockControlBottom.Location = New System.Drawing.Point(0, 613) Me.barDockControlBottom.Manager = Me.BarManager1 - Me.barDockControlBottom.Size = New System.Drawing.Size(202, 26) + Me.barDockControlBottom.Size = New System.Drawing.Size(202, 25) ' 'barDockControlLeft ' @@ -324,7 +324,7 @@ Partial Class frmFlowForm Me.barDockControlLeft.Dock = System.Windows.Forms.DockStyle.Left Me.barDockControlLeft.Location = New System.Drawing.Point(0, 0) Me.barDockControlLeft.Manager = Me.BarManager1 - Me.barDockControlLeft.Size = New System.Drawing.Size(0, 612) + Me.barDockControlLeft.Size = New System.Drawing.Size(0, 613) ' 'barDockControlRight ' @@ -332,7 +332,7 @@ Partial Class frmFlowForm Me.barDockControlRight.Dock = System.Windows.Forms.DockStyle.Right Me.barDockControlRight.Location = New System.Drawing.Point(202, 0) Me.barDockControlRight.Manager = Me.BarManager1 - Me.barDockControlRight.Size = New System.Drawing.Size(0, 612) + Me.barDockControlRight.Size = New System.Drawing.Size(0, 613) ' 'BarButtonItem2 ' @@ -376,7 +376,7 @@ Partial Class frmFlowForm Me.Panel3.Anchor = CType(((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left) _ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Panel3.BackColor = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(49, Byte), Integer)) - Me.Panel3.Location = New System.Drawing.Point(21, 272) + Me.Panel3.Location = New System.Drawing.Point(21, 273) Me.Panel3.Name = "Panel3" Me.Panel3.Size = New System.Drawing.Size(158, 2) Me.Panel3.TabIndex = 17 @@ -412,7 +412,7 @@ Partial Class frmFlowForm Me.Panel2.Dock = System.Windows.Forms.DockStyle.Fill Me.Panel2.Location = New System.Drawing.Point(0, 202) Me.Panel2.Name = "Panel2" - Me.Panel2.Size = New System.Drawing.Size(202, 410) + Me.Panel2.Size = New System.Drawing.Size(202, 411) Me.Panel2.TabIndex = 17 ' 'AdornerUIManager1 diff --git a/GUIs.ZooFlow/frmFlowForm.resx b/GUIs.ZooFlow/frmFlowForm.resx index 1945daa6..8ce010c1 100644 --- a/GUIs.ZooFlow/frmFlowForm.resx +++ b/GUIs.ZooFlow/frmFlowForm.resx @@ -2042,6 +2042,6 @@ - 17, 56 + 990, 17 \ No newline at end of file diff --git a/GUIs.ZooFlow/frmFlowForm.vb b/GUIs.ZooFlow/frmFlowForm.vb index 3a410b9c..4c52b69d 100644 --- a/GUIs.ZooFlow/frmFlowForm.vb +++ b/GUIs.ZooFlow/frmFlowForm.vb @@ -1286,10 +1286,6 @@ Public Class frmFlowForm Await CheckRunSearch1() End Sub - Private Sub PictureEditQuicksearch1_EditValueChanged(sender As Object, e As EventArgs) Handles PictureEditQuicksearch1.EditValueChanged - - End Sub - Private Sub bbtnitmAusblenden_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles bbtnitmAusblenden.ItemClick UnregisterBar() EinblendenToolStripMenuItem.Visible = True diff --git a/Modules.Base/Base/IDB/FileStore.vb b/Modules.Base/Base/IDB/FileStore.vb index d2a839f0..f1dc29e0 100644 --- a/Modules.Base/Base/IDB/FileStore.vb +++ b/Modules.Base/Base/IDB/FileStore.vb @@ -13,6 +13,8 @@ Public Const OBJECT_STATE_FILE_DELETED = "File deleted" Public Const OBJECT_STATE_METADATA_CHANGED = "Metadata changed" Public Const OBJECT_STATE_ATTRIBUTEVALUE_DELETED = "Attributevalue deleted" + Public Const OBJECT_STATE_FILE_CHECKED_OUT = "File Checked Out" + Public Const OBJECT_STATE_FILE_CHECKED_IN = "File Checked In" End Class End Namespace \ No newline at end of file diff --git a/Service.EDMIService/IDB/Helpers.vb b/Service.EDMIService/IDB/Helpers.vb index b5f5c608..0933e44c 100644 --- a/Service.EDMIService/IDB/Helpers.vb +++ b/Service.EDMIService/IDB/Helpers.vb @@ -202,13 +202,15 @@ Namespace IDB Public Function SetObjectState(pObjectId As Long, pState As String, pWho As String) As Boolean Try + Logger.Debug("Setting object state for [{0}]: [{1}]") + Dim oSql As String = $"EXEC PRIDB_OBJECT_SET_STATE {pObjectId}, '{pState}', '{pWho}'" Dim oResult = Database.ExecuteNonQuery(oSql) If oResult = False Then Return False End If - Logger.Info("Object state for [{0}] created: [{1}]", pObjectId, pState) + Logger.Info("Object state for [{0}] set: [{1}]", pObjectId, pState) Return True Catch ex As Exception diff --git a/Service.EDMIService/Methods/IDB/CheckInOutFile/CheckInOutFileMethod.vb b/Service.EDMIService/Methods/IDB/CheckInOutFile/CheckInOutFileMethod.vb index 5e784a18..809b1697 100644 --- a/Service.EDMIService/Methods/IDB/CheckInOutFile/CheckInOutFileMethod.vb +++ b/Service.EDMIService/Methods/IDB/CheckInOutFile/CheckInOutFileMethod.vb @@ -101,7 +101,9 @@ Namespace Methods.IDB.CheckInOutFile VALUES ({pObjectId}, GETDATE(), '{pComment}', '{pUsername}')" If DatabaseIDB.ExecuteNonQuery(oSQL) = True Then + Helpers.SetObjectState(pObjectId, FileStore.OBJECT_STATE_FILE_CHECKED_OUT, pUsername) Logger.Info("File [{0}] checked out successfully!", pObjectId) + Return CheckOutResult.CheckoutSuccessful Else Logger.Warn("File [{0}] could not be checked out because of an internal error!", pObjectId) @@ -134,7 +136,9 @@ Namespace Methods.IDB.CheckInOutFile WHERE IDB_OBJ_ID = {pObjectId} AND ADDED_WHO = '{pUsername}' AND CHECKED_IN_WHEN IS NULL" If DatabaseIDB.ExecuteNonQuery(oSQL) = True Then + Helpers.SetObjectState(pObjectId, FileStore.OBJECT_STATE_FILE_CHECKED_IN, pUsername) Logger.Info("File [{0}] checked in successfully!", pObjectId) + Return CheckInResult.CheckinSuccessful Else Logger.Warn("File [{0}] could not be checked in because of an internal error!", pObjectId)