Common/DocumentResultList: Refactor file loading, add zooflow file loading

This commit is contained in:
Jonathan Jenne 2021-12-17 16:40:25 +01:00
parent 8d19f70abc
commit 1b6a69b24f
14 changed files with 823 additions and 516 deletions

View File

@ -106,6 +106,7 @@
<Compile Include="DataResultList\frmDataResultList.vb"> <Compile Include="DataResultList\frmDataResultList.vb">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
<Compile Include="DocumentResultList\DocumentLoader.vb" />
<Compile Include="DocumentResultList\DocumentResultConfig.vb" /> <Compile Include="DocumentResultList\DocumentResultConfig.vb" />
<Compile Include="DocumentResultList\DocumentResultInfo.vb" /> <Compile Include="DocumentResultList\DocumentResultInfo.vb" />
<Compile Include="DocumentResultList\DocumentResultList.vb" /> <Compile Include="DocumentResultList\DocumentResultList.vb" />
@ -284,5 +285,17 @@
<ItemGroup> <ItemGroup>
<None Include="Resources\open.svg" /> <None Include="Resources\open.svg" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<None Include="Resources\singlepageview.svg" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\singlepageview1.svg" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\categorize.svg" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\editcolors.svg" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
</Project> </Project>

View File

@ -0,0 +1,92 @@
Imports System.IO
Imports DigitalData.Modules.EDMI.API
Imports DigitalData.Modules.EDMI.API.Client
Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.ZooFlow.Constants
Public Class DocumentLoader
Inherits Modules.ZooFlow.Base.BaseClass
Private ReadOnly Client As Client
Private ReadOnly Mode As OperationMode
Private ReadOnly User As DigitalData.Modules.ZooFlow.State.UserState
Public Sub New(pLogConfig As LogConfig, pMode As OperationMode, pClient As Client, pUser As DigitalData.Modules.ZooFlow.State.UserState)
MyBase.New(pLogConfig)
Client = pClient
Mode = pMode
User = pUser
End Sub
Public Function Load(pObjectId As Long, pFullPath As String) As DocumentResultInfo
Select Case Mode
Case OperationMode.NoAppServer
Return Load_FromWindream(pObjectId, pFullPath)
Case OperationMode.WithAppServer
Return Load_FromIDB(pObjectId)
Case OperationMode.ZooFlow
Return Load_FromZooflow(pObjectId)
Case Else
Return Nothing
End Select
End Function
Private Function Load_FromWindream(pObjectId As Long, pFullPath As String) As DocumentResultInfo
Dim oFileInfo As New FileInfo(pFullPath)
Dim oResultDocumentInfo = New DocumentResultInfo(pObjectId) With {
.Contents = Load_FromDisk(pFullPath),
.AccessRight = Rights.AccessRight.FULL,
.FullPath = pFullPath,
.Extension = oFileInfo.Extension.Substring(1)
}
Return oResultDocumentInfo
End Function
Private Function Load_FromIDB(pObjectId As Long) As DocumentResultInfo
Dim oDocumentInfo As DocumentInfo = Client.GetDocumentInfo(User.UserId, pObjectId)
Dim oFileInfo As New FileInfo(oDocumentInfo.FullPath)
Dim oResultDocumentInfo As New DocumentResultInfo(pObjectId) With {
.Contents = Load_FromDisk(oDocumentInfo.FullPath),
.AccessRight = oDocumentInfo.AccessRight,
.FullPath = oDocumentInfo.FullPath,
.Extension = oFileInfo.Extension.Substring(1)
}
Return oResultDocumentInfo
End Function
Private Function Load_FromZooflow(pObjectId As Long) As DocumentResultInfo
Dim oFileObject As FileObject = Client.GetFileObject(pObjectId, pLoadFileContents:=True)
Dim oResultDocumentInfo As New DocumentResultInfo(pObjectId) With {
.Contents = oFileObject._FileContents,
.Extension = oFileObject._FileExtension,
.AccessRight = Rights.AccessRight.FULL,
.FullPath = Nothing
}
Return oResultDocumentInfo
End Function
Private Function Load_FromDisk(pFullPath) As Byte()
Try
Logger.Debug("Loading file [{0}]", pFullPath)
Using oStream = File.OpenRead(pFullPath)
Using oMemoryStream = New MemoryStream()
oStream.CopyTo(oMemoryStream)
Logger.Debug("Loaded file [{0}] successfully.", pFullPath)
Return oMemoryStream.ToArray()
End Using
End Using
Catch ex As Exception
Logger.Warn("Loading file [{0}] failed.", pFullPath)
Logger.Error(ex)
Return Nothing
End Try
End Function
End Class

View File

@ -37,11 +37,11 @@ Public Class DocumentResultCache
End Get End Get
End Property End Property
Public Sub Add(item As DocumentResultInfo) Implements ICollection(Of DocumentResultInfo).Add Public Sub Add(pItem As DocumentResultInfo) Implements ICollection(Of DocumentResultInfo).Add
SyncLock Lock SyncLock Lock
If Index.ContainsKey(item.FullPath) Then If Index.ContainsKey(pItem.Id) Then
List.Remove(Index(item.FullPath)) List.Remove(Index(pItem.Id))
Index(item.FullPath) = List.AddLast(item) Index(pItem.Id) = List.AddLast(pItem)
Return Return
End If End If
@ -50,23 +50,22 @@ Public Class DocumentResultCache
Remove(Oldest) Remove(Oldest)
End If End If
Index.Add(item.FullPath, List.AddLast(item)) Index.Add(pItem.Id, List.AddLast(pItem))
If item.Contents IsNot Nothing Then If pItem.Contents IsNot Nothing Then
Count = Count + item.Contents?.Length Count += pItem.Contents?.Length
End If End If
End SyncLock End SyncLock
End Sub End Sub
Public Function Contains(item As DocumentResultInfo) As Boolean Implements ICollection(Of DocumentResultInfo).Contains Public Function Contains(pItem As DocumentResultInfo) As Boolean Implements ICollection(Of DocumentResultInfo).Contains
Return Index.ContainsKey(item.FullPath) Return Index.ContainsKey(pItem.Id)
End Function End Function
Public Sub CopyTo(array As DocumentResultInfo(), ByVal arrayIndex As Integer) Implements ICollection(Of DocumentResultInfo).CopyTo Public Sub CopyTo(pArray As DocumentResultInfo(), pIndex As Integer) Implements ICollection(Of DocumentResultInfo).CopyTo
SyncLock Lock SyncLock Lock
For Each item As DocumentResultInfo In Me For Each item As DocumentResultInfo In Me
array(Math.Min(System.Threading.Interlocked.Increment(arrayIndex), arrayIndex - 1)) = item pArray(Math.Min(System.Threading.Interlocked.Increment(pIndex), pIndex - 1)) = item
Next Next
End SyncLock End SyncLock
End Sub End Sub
@ -84,15 +83,15 @@ Public Class DocumentResultCache
End Get End Get
End Property End Property
Public Function Remove(item As DocumentResultInfo) As Boolean Implements ICollection(Of DocumentResultInfo).Remove Public Function Remove(pItem As DocumentResultInfo) As Boolean Implements ICollection(Of DocumentResultInfo).Remove
SyncLock Lock SyncLock Lock
If Index.ContainsKey(item.FullPath) Then If Index.ContainsKey(pItem.Id) Then
List.Remove(Index(item.FullPath)) List.Remove(Index(pItem.Id))
Index.Remove(item.FullPath) Index.Remove(pItem.Id)
If item.Contents IsNot Nothing Then If pItem.Contents IsNot Nothing Then
Count -= item.Contents.Length Count -= pItem.Contents.Length
End If End If
Return True Return True

View File

@ -1,8 +1,32 @@
Imports DigitalData.Modules.EDMI.API.Client Imports DigitalData.Modules.EDMI.API.Client
Imports DigitalData.Modules.EDMI.API.Rights
Public Class DocumentResultInfo Public Class DocumentResultInfo
Inherits DocumentInfo ''' <summary>
''' Primary identifier of the Document.
''' Can be a Windream DocId or an IDB ObjectId.
''' </summary>
Public Property Id As Long
Public Contents As Byte() Public Property AccessRight As AccessRight
Public LastWriteTime As Date
''' <summary>
''' Extension is needed for determining the type of file
''' and showing it in the DocumentViewer
''' </summary>
Public Property Extension As String
''' <summary>
''' Binary contents of the file.
''' </summary>
Public Property Contents As Byte()
' Optional properties
Public Property LastWriteTime As Date = Nothing
Public Property FullPath As String = Nothing
Public Sub New(pPrimaryKey As Long)
Id = pPrimaryKey
End Sub
End Class End Class

View File

@ -4,9 +4,9 @@ Imports DevExpress.XtraGrid.Views.Base
Imports DigitalData.Modules.Logging Imports DigitalData.Modules.Logging
Public Class DocumentResultList Public Class DocumentResultList
Private Logger As Logger Private ReadOnly Logger As Logger
Public ActiveRowHandle As Integer = Constants.NO_ROW_HANDLE Public Property ActiveRowHandle As Integer = Constants.NO_ROW_HANDLE
Public Sub New(LogConfig As LogConfig) Public Sub New(LogConfig As LogConfig)
Logger = LogConfig.GetLogger() Logger = LogConfig.GetLogger()

View File

@ -32,9 +32,7 @@ Partial Class frmDocumentResultList
Me.BarStaticItem1 = New DevExpress.XtraBars.BarStaticItem() Me.BarStaticItem1 = New DevExpress.XtraBars.BarStaticItem()
Me.labelResultCount = New DevExpress.XtraBars.BarStaticItem() Me.labelResultCount = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonBack = New DevExpress.XtraBars.BarButtonItem() Me.BarButtonBack = New DevExpress.XtraBars.BarButtonItem()
Me.BarButtonItem5 = New DevExpress.XtraBars.BarButtonItem() Me.BarButtonResetLayout = New DevExpress.XtraBars.BarButtonItem()
Me.RepositoryItemTextEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
Me.RepositoryItemTextEdit2 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
Me.labelCriticalError = New DevExpress.XtraBars.BarStaticItem() Me.labelCriticalError = New DevExpress.XtraBars.BarStaticItem()
Me.labelWarning = New DevExpress.XtraBars.BarStaticItem() Me.labelWarning = New DevExpress.XtraBars.BarStaticItem()
Me.MenuItemFileOpen = New DevExpress.XtraBars.BarButtonItem() Me.MenuItemFileOpen = New DevExpress.XtraBars.BarButtonItem()
@ -43,10 +41,14 @@ Partial Class frmDocumentResultList
Me.MenuItemFilepathCopy = New DevExpress.XtraBars.BarButtonItem() Me.MenuItemFilepathCopy = New DevExpress.XtraBars.BarButtonItem()
Me.MenuItemFolderpathCopy = New DevExpress.XtraBars.BarButtonItem() Me.MenuItemFolderpathCopy = New DevExpress.XtraBars.BarButtonItem()
Me.MenuItemPropertiesECM = New DevExpress.XtraBars.BarButtonItem() Me.MenuItemPropertiesECM = New DevExpress.XtraBars.BarButtonItem()
Me.MenuItemsOpenFileZooFlow = New DevExpress.XtraBars.BarButtonItem()
Me.MenuItemPropertiesZooFlow = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup_Navigation = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup_Navigation = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup_Layout = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup_Layout = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup_Export = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup_Export = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RepositoryItemTextEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
Me.RepositoryItemTextEdit2 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
Me.RibbonStatusBar = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() Me.RibbonStatusBar = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.SplitContainerControl2 = New DevExpress.XtraEditors.SplitContainerControl() Me.SplitContainerControl2 = New DevExpress.XtraEditors.SplitContainerControl()
Me.GridControl2 = New DevExpress.XtraGrid.GridControl() Me.GridControl2 = New DevExpress.XtraGrid.GridControl()
@ -61,7 +63,12 @@ Partial Class frmDocumentResultList
Me.MenuFullAccess_IDB = New DevExpress.XtraBars.PopupMenu(Me.components) Me.MenuFullAccess_IDB = New DevExpress.XtraBars.PopupMenu(Me.components)
Me.MenuViewAccess_IDB = New DevExpress.XtraBars.PopupMenu(Me.components) Me.MenuViewAccess_IDB = New DevExpress.XtraBars.PopupMenu(Me.components)
Me.MenuFullAccess_EDM = New DevExpress.XtraBars.PopupMenu(Me.components) Me.MenuFullAccess_EDM = New DevExpress.XtraBars.PopupMenu(Me.components)
Me.MenuFullAccess_ZOOFLOW = New DevExpress.XtraBars.PopupMenu(Me.components)
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl1.Panel1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl1.Panel1.SuspendLayout()
CType(Me.SplitContainerControl1.Panel2, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl1.Panel2.SuspendLayout()
Me.SplitContainerControl1.SuspendLayout() Me.SplitContainerControl1.SuspendLayout()
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridView1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.GridView1, System.ComponentModel.ISupportInitialize).BeginInit()
@ -69,16 +76,25 @@ Partial Class frmDocumentResultList
CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SplitContainerControl2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl2.Panel1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl2.Panel1.SuspendLayout()
CType(Me.SplitContainerControl2.Panel2, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl2.Panel2.SuspendLayout()
Me.SplitContainerControl2.SuspendLayout() Me.SplitContainerControl2.SuspendLayout()
CType(Me.GridControl2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.GridControl2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridView2, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.GridView2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridControl3, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.GridControl3, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridView3, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.GridView3, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl3, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SplitContainerControl3, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl3.Panel1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl3.Panel1.SuspendLayout()
CType(Me.SplitContainerControl3.Panel2, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl3.Panel2.SuspendLayout()
Me.SplitContainerControl3.SuspendLayout() Me.SplitContainerControl3.SuspendLayout()
CType(Me.MenuFullAccess_IDB, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.MenuFullAccess_IDB, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.MenuViewAccess_IDB, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.MenuViewAccess_IDB, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.MenuFullAccess_EDM, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.MenuFullAccess_EDM, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.MenuFullAccess_ZOOFLOW, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout() Me.SuspendLayout()
' '
'SplitContainerControl1 'SplitContainerControl1
@ -86,8 +102,14 @@ Partial Class frmDocumentResultList
Me.SplitContainerControl1.CollapsePanel = DevExpress.XtraEditors.SplitCollapsePanel.Panel2 Me.SplitContainerControl1.CollapsePanel = DevExpress.XtraEditors.SplitCollapsePanel.Panel2
resources.ApplyResources(Me.SplitContainerControl1, "SplitContainerControl1") resources.ApplyResources(Me.SplitContainerControl1, "SplitContainerControl1")
Me.SplitContainerControl1.Name = "SplitContainerControl1" Me.SplitContainerControl1.Name = "SplitContainerControl1"
'
'SplitContainerControl1.Panel1
'
Me.SplitContainerControl1.Panel1.Controls.Add(Me.GridControl1) Me.SplitContainerControl1.Panel1.Controls.Add(Me.GridControl1)
resources.ApplyResources(Me.SplitContainerControl1.Panel1, "SplitContainerControl1.Panel1") resources.ApplyResources(Me.SplitContainerControl1.Panel1, "SplitContainerControl1.Panel1")
'
'SplitContainerControl1.Panel2
'
Me.SplitContainerControl1.Panel2.Controls.Add(Me.SplitContainerControl2) Me.SplitContainerControl1.Panel2.Controls.Add(Me.SplitContainerControl2)
resources.ApplyResources(Me.SplitContainerControl1.Panel2, "SplitContainerControl1.Panel2") resources.ApplyResources(Me.SplitContainerControl1.Panel2, "SplitContainerControl1.Panel2")
Me.SplitContainerControl1.SplitterPosition = 382 Me.SplitContainerControl1.SplitterPosition = 382
@ -128,9 +150,9 @@ Partial Class frmDocumentResultList
'RibbonControl 'RibbonControl
' '
Me.RibbonControl.ExpandCollapseItem.Id = 0 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.BarButtonItem5, Me.labelCriticalError, Me.labelWarning, Me.MenuItemFileOpen, Me.MenuItemPropertiesIDB, Me.MenuItemFolderOpen, Me.MenuItemFilepathCopy, Me.MenuItemFolderpathCopy, Me.MenuItemPropertiesECM}) 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.MenuItemPropertiesECM, Me.MenuItemsOpenFileZooFlow, Me.MenuItemPropertiesZooFlow})
resources.ApplyResources(Me.RibbonControl, "RibbonControl") resources.ApplyResources(Me.RibbonControl, "RibbonControl")
Me.RibbonControl.MaxItemId = 27 Me.RibbonControl.MaxItemId = 29
Me.RibbonControl.Name = "RibbonControl" Me.RibbonControl.Name = "RibbonControl"
Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1}) Me.RibbonControl.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
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})
@ -183,23 +205,13 @@ Partial Class frmDocumentResultList
Me.BarButtonBack.ImageOptions.LargeImage = CType(resources.GetObject("BarButtonBack.ImageOptions.LargeImage"), System.Drawing.Image) Me.BarButtonBack.ImageOptions.LargeImage = CType(resources.GetObject("BarButtonBack.ImageOptions.LargeImage"), System.Drawing.Image)
Me.BarButtonBack.Name = "BarButtonBack" Me.BarButtonBack.Name = "BarButtonBack"
' '
'BarButtonItem5 'BarButtonResetLayout
' '
resources.ApplyResources(Me.BarButtonItem5, "BarButtonItem5") resources.ApplyResources(Me.BarButtonResetLayout, "BarButtonResetLayout")
Me.BarButtonItem5.Id = 10 Me.BarButtonResetLayout.Id = 10
Me.BarButtonItem5.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem5.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.BarButtonResetLayout.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem5.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem5.Name = "BarButtonItem5" Me.BarButtonResetLayout.Name = "BarButtonResetLayout"
Me.BarButtonItem5.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing Me.BarButtonResetLayout.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
'
'RepositoryItemTextEdit1
'
resources.ApplyResources(Me.RepositoryItemTextEdit1, "RepositoryItemTextEdit1")
Me.RepositoryItemTextEdit1.Name = "RepositoryItemTextEdit1"
'
'RepositoryItemTextEdit2
'
resources.ApplyResources(Me.RepositoryItemTextEdit2, "RepositoryItemTextEdit2")
Me.RepositoryItemTextEdit2.Name = "RepositoryItemTextEdit2"
' '
'labelCriticalError 'labelCriticalError
' '
@ -231,7 +243,7 @@ Partial Class frmDocumentResultList
' '
resources.ApplyResources(Me.MenuItemFileOpen, "MenuItemFileOpen") resources.ApplyResources(Me.MenuItemFileOpen, "MenuItemFileOpen")
Me.MenuItemFileOpen.Id = 16 Me.MenuItemFileOpen.Id = 16
Me.MenuItemFileOpen.ImageOptions.SvgImage = CType(resources.GetObject("MenuItemFileOpen.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.MenuItemFileOpen.ImageOptions.SvgImage = Global.DigitalData.GUIs.Common.My.Resources.Resources.singlepageview
Me.MenuItemFileOpen.Name = "MenuItemFileOpen" Me.MenuItemFileOpen.Name = "MenuItemFileOpen"
' '
'MenuItemPropertiesIDB 'MenuItemPropertiesIDB
@ -269,6 +281,20 @@ Partial Class frmDocumentResultList
Me.MenuItemPropertiesECM.ImageOptions.SvgImage = CType(resources.GetObject("MenuItemPropertiesECM.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.MenuItemPropertiesECM.ImageOptions.SvgImage = CType(resources.GetObject("MenuItemPropertiesECM.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.MenuItemPropertiesECM.Name = "MenuItemPropertiesECM" Me.MenuItemPropertiesECM.Name = "MenuItemPropertiesECM"
' '
'MenuItemsOpenFileZooFlow
'
resources.ApplyResources(Me.MenuItemsOpenFileZooFlow, "MenuItemsOpenFileZooFlow")
Me.MenuItemsOpenFileZooFlow.Id = 27
Me.MenuItemsOpenFileZooFlow.ImageOptions.SvgImage = Global.DigitalData.GUIs.Common.My.Resources.Resources.singlepageview1
Me.MenuItemsOpenFileZooFlow.Name = "MenuItemsOpenFileZooFlow"
'
'MenuItemPropertiesZooFlow
'
resources.ApplyResources(Me.MenuItemPropertiesZooFlow, "MenuItemPropertiesZooFlow")
Me.MenuItemPropertiesZooFlow.Id = 28
Me.MenuItemPropertiesZooFlow.ImageOptions.SvgImage = Global.DigitalData.GUIs.Common.My.Resources.Resources.editcolors
Me.MenuItemPropertiesZooFlow.Name = "MenuItemPropertiesZooFlow"
'
'RibbonPage1 'RibbonPage1
' '
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup_Navigation, Me.RibbonPageGroup_Layout, Me.RibbonPageGroup_Export}) Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup_Navigation, Me.RibbonPageGroup_Layout, Me.RibbonPageGroup_Export})
@ -287,7 +313,7 @@ Partial Class frmDocumentResultList
Me.RibbonPageGroup_Layout.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far Me.RibbonPageGroup_Layout.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
Me.RibbonPageGroup_Layout.ItemLinks.Add(Me.SwitchMainContainerHorizontal) Me.RibbonPageGroup_Layout.ItemLinks.Add(Me.SwitchMainContainerHorizontal)
Me.RibbonPageGroup_Layout.ItemLinks.Add(Me.SwitchDetailContainerHorizontal) Me.RibbonPageGroup_Layout.ItemLinks.Add(Me.SwitchDetailContainerHorizontal)
Me.RibbonPageGroup_Layout.ItemLinks.Add(Me.BarButtonItem5) Me.RibbonPageGroup_Layout.ItemLinks.Add(Me.BarButtonResetLayout)
Me.RibbonPageGroup_Layout.Name = "RibbonPageGroup_Layout" Me.RibbonPageGroup_Layout.Name = "RibbonPageGroup_Layout"
resources.ApplyResources(Me.RibbonPageGroup_Layout, "RibbonPageGroup_Layout") resources.ApplyResources(Me.RibbonPageGroup_Layout, "RibbonPageGroup_Layout")
' '
@ -298,6 +324,16 @@ Partial Class frmDocumentResultList
Me.RibbonPageGroup_Export.Name = "RibbonPageGroup_Export" Me.RibbonPageGroup_Export.Name = "RibbonPageGroup_Export"
resources.ApplyResources(Me.RibbonPageGroup_Export, "RibbonPageGroup_Export") resources.ApplyResources(Me.RibbonPageGroup_Export, "RibbonPageGroup_Export")
' '
'RepositoryItemTextEdit1
'
resources.ApplyResources(Me.RepositoryItemTextEdit1, "RepositoryItemTextEdit1")
Me.RepositoryItemTextEdit1.Name = "RepositoryItemTextEdit1"
'
'RepositoryItemTextEdit2
'
resources.ApplyResources(Me.RepositoryItemTextEdit2, "RepositoryItemTextEdit2")
Me.RepositoryItemTextEdit2.Name = "RepositoryItemTextEdit2"
'
'RibbonStatusBar 'RibbonStatusBar
' '
Me.RibbonStatusBar.ItemLinks.Add(Me.labelResultCount) Me.RibbonStatusBar.ItemLinks.Add(Me.labelResultCount)
@ -313,8 +349,14 @@ Partial Class frmDocumentResultList
resources.ApplyResources(Me.SplitContainerControl2, "SplitContainerControl2") resources.ApplyResources(Me.SplitContainerControl2, "SplitContainerControl2")
Me.SplitContainerControl2.Horizontal = False Me.SplitContainerControl2.Horizontal = False
Me.SplitContainerControl2.Name = "SplitContainerControl2" Me.SplitContainerControl2.Name = "SplitContainerControl2"
'
'SplitContainerControl2.Panel1
'
Me.SplitContainerControl2.Panel1.Controls.Add(Me.GridControl2) Me.SplitContainerControl2.Panel1.Controls.Add(Me.GridControl2)
resources.ApplyResources(Me.SplitContainerControl2.Panel1, "SplitContainerControl2.Panel1") resources.ApplyResources(Me.SplitContainerControl2.Panel1, "SplitContainerControl2.Panel1")
'
'SplitContainerControl2.Panel2
'
Me.SplitContainerControl2.Panel2.Controls.Add(Me.GridControl3) Me.SplitContainerControl2.Panel2.Controls.Add(Me.GridControl3)
resources.ApplyResources(Me.SplitContainerControl2.Panel2, "SplitContainerControl2.Panel2") resources.ApplyResources(Me.SplitContainerControl2.Panel2, "SplitContainerControl2.Panel2")
Me.SplitContainerControl2.SplitterPosition = 223 Me.SplitContainerControl2.SplitterPosition = 223
@ -382,8 +424,14 @@ Partial Class frmDocumentResultList
Me.SplitContainerControl3.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.[Default] Me.SplitContainerControl3.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.[Default]
resources.ApplyResources(Me.SplitContainerControl3, "SplitContainerControl3") resources.ApplyResources(Me.SplitContainerControl3, "SplitContainerControl3")
Me.SplitContainerControl3.Name = "SplitContainerControl3" Me.SplitContainerControl3.Name = "SplitContainerControl3"
'
'SplitContainerControl3.Panel1
'
Me.SplitContainerControl3.Panel1.Controls.Add(Me.SplitContainerControl1) Me.SplitContainerControl3.Panel1.Controls.Add(Me.SplitContainerControl1)
resources.ApplyResources(Me.SplitContainerControl3.Panel1, "SplitContainerControl3.Panel1") resources.ApplyResources(Me.SplitContainerControl3.Panel1, "SplitContainerControl3.Panel1")
'
'SplitContainerControl3.Panel2
'
Me.SplitContainerControl3.Panel2.Controls.Add(Me.DocumentViewer1) Me.SplitContainerControl3.Panel2.Controls.Add(Me.DocumentViewer1)
resources.ApplyResources(Me.SplitContainerControl3.Panel2, "SplitContainerControl3.Panel2") resources.ApplyResources(Me.SplitContainerControl3.Panel2, "SplitContainerControl3.Panel2")
Me.SplitContainerControl3.SplitterPosition = 762 Me.SplitContainerControl3.SplitterPosition = 762
@ -424,6 +472,13 @@ Partial Class frmDocumentResultList
Me.MenuFullAccess_EDM.Name = "MenuFullAccess_EDM" Me.MenuFullAccess_EDM.Name = "MenuFullAccess_EDM"
Me.MenuFullAccess_EDM.Ribbon = Me.RibbonControl Me.MenuFullAccess_EDM.Ribbon = Me.RibbonControl
' '
'MenuFullAccess_ZOOFLOW
'
Me.MenuFullAccess_ZOOFLOW.ItemLinks.Add(Me.MenuItemsOpenFileZooFlow)
Me.MenuFullAccess_ZOOFLOW.ItemLinks.Add(Me.MenuItemPropertiesZooFlow)
Me.MenuFullAccess_ZOOFLOW.Name = "MenuFullAccess_ZOOFLOW"
Me.MenuFullAccess_ZOOFLOW.Ribbon = Me.RibbonControl
'
'frmDocumentResultList 'frmDocumentResultList
' '
Me.AllowFormGlass = DevExpress.Utils.DefaultBoolean.[True] Me.AllowFormGlass = DevExpress.Utils.DefaultBoolean.[True]
@ -437,6 +492,10 @@ Partial Class frmDocumentResultList
Me.Name = "frmDocumentResultList" Me.Name = "frmDocumentResultList"
Me.Ribbon = Me.RibbonControl Me.Ribbon = Me.RibbonControl
Me.StatusBar = Me.RibbonStatusBar Me.StatusBar = Me.RibbonStatusBar
CType(Me.SplitContainerControl1.Panel1, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl1.Panel1.ResumeLayout(False)
CType(Me.SplitContainerControl1.Panel2, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl1.Panel2.ResumeLayout(False)
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl1.ResumeLayout(False) Me.SplitContainerControl1.ResumeLayout(False)
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit()
@ -444,17 +503,26 @@ Partial Class frmDocumentResultList
CType(Me.RibbonControl, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.RibbonControl, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.RepositoryItemTextEdit2, 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()
Me.SplitContainerControl2.Panel2.ResumeLayout(False)
CType(Me.SplitContainerControl2, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.SplitContainerControl2, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl2.ResumeLayout(False) Me.SplitContainerControl2.ResumeLayout(False)
CType(Me.GridControl2, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.GridControl2, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridView2, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.GridView2, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridControl3, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.GridControl3, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridView3, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.GridView3, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.SplitContainerControl3.Panel1, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl3.Panel1.ResumeLayout(False)
CType(Me.SplitContainerControl3.Panel2, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl3.Panel2.ResumeLayout(False)
CType(Me.SplitContainerControl3, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.SplitContainerControl3, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl3.ResumeLayout(False) Me.SplitContainerControl3.ResumeLayout(False)
CType(Me.MenuFullAccess_IDB, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.MenuFullAccess_IDB, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.MenuViewAccess_IDB, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.MenuViewAccess_IDB, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.MenuFullAccess_EDM, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.MenuFullAccess_EDM, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.MenuFullAccess_ZOOFLOW, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False) Me.ResumeLayout(False)
Me.PerformLayout() Me.PerformLayout()
@ -484,7 +552,7 @@ Partial Class frmDocumentResultList
Friend WithEvents XtraSaveFileDialog As DevExpress.XtraEditors.XtraSaveFileDialog Friend WithEvents XtraSaveFileDialog As DevExpress.XtraEditors.XtraSaveFileDialog
Friend WithEvents BarButtonBack As DevExpress.XtraBars.BarButtonItem Friend WithEvents BarButtonBack As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup_Navigation As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents RibbonPageGroup_Navigation As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents BarButtonItem5 As DevExpress.XtraBars.BarButtonItem Friend WithEvents BarButtonResetLayout As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RepositoryItemTextEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit Friend WithEvents RepositoryItemTextEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit
Friend WithEvents RepositoryItemTextEdit2 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit Friend WithEvents RepositoryItemTextEdit2 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit
Friend WithEvents labelCriticalError As DevExpress.XtraBars.BarStaticItem Friend WithEvents labelCriticalError As DevExpress.XtraBars.BarStaticItem
@ -500,4 +568,7 @@ Partial Class frmDocumentResultList
Friend WithEvents MenuViewAccess_IDB As DevExpress.XtraBars.PopupMenu Friend WithEvents MenuViewAccess_IDB As DevExpress.XtraBars.PopupMenu
Friend WithEvents MenuFullAccess_EDM As DevExpress.XtraBars.PopupMenu Friend WithEvents MenuFullAccess_EDM As DevExpress.XtraBars.PopupMenu
Friend WithEvents MenuItemPropertiesECM As DevExpress.XtraBars.BarButtonItem Friend WithEvents MenuItemPropertiesECM As DevExpress.XtraBars.BarButtonItem
Friend WithEvents MenuFullAccess_ZOOFLOW As DevExpress.XtraBars.PopupMenu
Friend WithEvents MenuItemsOpenFileZooFlow As DevExpress.XtraBars.BarButtonItem
Friend WithEvents MenuItemPropertiesZooFlow As DevExpress.XtraBars.BarButtonItem
End Class End Class

View File

@ -152,7 +152,7 @@
<assembly alias="DevExpress.Data.v21.2" name="DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" /> <assembly alias="DevExpress.Data.v21.2" name="DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="BarButtonItemExportGrid1.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="BarButtonItemExportGrid1.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAHYNAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAHYNAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
@ -252,12 +252,12 @@
9R2NAy0xdbc3UVqAub8fp91RTf0DZ0rWioS6adsAAAAASUVORK5CYII= 9R2NAy0xdbc3UVqAub8fp91RTf0DZ0rWioS6adsAAAAASUVORK5CYII=
</value> </value>
</data> </data>
<data name="BarButtonItem5.Caption" xml:space="preserve"> <data name="BarButtonResetLayout.Caption" xml:space="preserve">
<value>Layout zurücksetzen</value> <value>Layout zurücksetzen</value>
</data> </data>
<data name="BarButtonItem5.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="BarButtonItem5.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALICAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALICAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
@ -279,7 +279,7 @@
</data> </data>
<data name="labelCriticalError.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="labelCriticalError.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALMCAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALMCAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
@ -301,7 +301,7 @@
</data> </data>
<data name="labelWarning.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="labelWarning.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABkEAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABkEAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
@ -327,32 +327,12 @@
<data name="MenuItemFileOpen.Caption" xml:space="preserve"> <data name="MenuItemFileOpen.Caption" xml:space="preserve">
<value>Datei öffnen</value> <value>Datei öffnen</value>
</data> </data>
<data name="MenuItemFileOpen.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAOMCAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ
LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD
MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9IlNpbmdsZVBhZ2VWaWV3Ij4NCiAgICA8cGF0aCBk
PSJNMjcsMEgzQzIuNCwwLDIsMC40LDIsMXYyOGMwLDAuNiwwLjQsMSwxLDFoMjRjMC42LDAsMS0wLjQs
MS0xVjFDMjgsMC40LDI3LjYsMCwyNywweiBNMjYsMjhINFYyaDIyVjI4eiIgY2xhc3M9IkJsYWNrIiAv
Pg0KICAgIDxwYXRoIGQ9Ik0yMiw4SDhWNmgxNFY4eiBNMjIsMTBIOHYyaDE0VjEweiBNMjIsMTRIOHYy
aDE0VjE0eiBNMjIsMThIOHYyaDE0VjE4eiBNMjIsMjJIOHYyaDE0VjIyeiIgY2xhc3M9IkJsdWUiIC8+
DQogIDwvZz4NCjwvc3ZnPgs=
</value>
</data>
<data name="MenuItemPropertiesIDB.Caption" xml:space="preserve"> <data name="MenuItemPropertiesIDB.Caption" xml:space="preserve">
<value>Eigenschaften</value> <value>Eigenschaften</value>
</data> </data>
<data name="MenuItemPropertiesIDB.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="MenuItemPropertiesIDB.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACcFAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACcFAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
@ -384,7 +364,7 @@
</data> </data>
<data name="MenuItemFolderOpen.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="MenuItemFolderOpen.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAAMDAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAAMDAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
@ -403,7 +383,7 @@
</value> </value>
</data> </data>
<data name="MenuItemFilepathCopy.Caption" xml:space="preserve"> <data name="MenuItemFilepathCopy.Caption" xml:space="preserve">
<value>Dateipfad in Zwischenablage</value> <value>Dateipfad kopeieren</value>
</data> </data>
<data name="MenuItemFolderpathCopy.Caption" xml:space="preserve"> <data name="MenuItemFolderpathCopy.Caption" xml:space="preserve">
<value>Ordnerpfad in Zwischenablage</value> <value>Ordnerpfad in Zwischenablage</value>
@ -413,7 +393,7 @@
</data> </data>
<data name="MenuItemPropertiesECM.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="MenuItemPropertiesECM.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACcFAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACcFAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
@ -440,6 +420,12 @@
IHJ4PSIwIiByeT0iMCIgY2xhc3M9IkJsdWUiIC8+DQogICAgPC9nPg0KICA8L2c+DQo8L3N2Zz4L IHJ4PSIwIiByeT0iMCIgY2xhc3M9IkJsdWUiIC8+DQogICAgPC9nPg0KICA8L2c+DQo8L3N2Zz4L
</value> </value>
</data> </data>
<data name="MenuItemsOpenFileZooFlow.Caption" xml:space="preserve">
<value>Datei öffnen</value>
</data>
<data name="MenuItemPropertiesZooFlow.Caption" xml:space="preserve">
<value>Eigenschaften</value>
</data>
<data name="RibbonControl.Location" type="System.Drawing.Point, System.Drawing"> <data name="RibbonControl.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value> <value>0, 0</value>
</data> </data>
@ -466,10 +452,10 @@
<value>1189, 132</value> <value>1189, 132</value>
</data> </data>
<data name="RibbonStatusBar.Location" type="System.Drawing.Point, System.Drawing"> <data name="RibbonStatusBar.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 647</value> <value>0, 649</value>
</data> </data>
<data name="RibbonStatusBar.Size" type="System.Drawing.Size, System.Drawing"> <data name="RibbonStatusBar.Size" type="System.Drawing.Size, System.Drawing">
<value>1189, 24</value> <value>1189, 22</value>
</data> </data>
<data name="&gt;&gt;RibbonStatusBar.Name" xml:space="preserve"> <data name="&gt;&gt;RibbonStatusBar.Name" xml:space="preserve">
<value>RibbonStatusBar</value> <value>RibbonStatusBar</value>
@ -496,7 +482,7 @@
<value>2</value> <value>2</value>
</data> </data>
<data name="GridControl1.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>382, 511</value> <value>382, 513</value>
</data> </data>
<data name="GridControl1.TabIndex" type="System.Int32, mscorlib"> <data name="GridControl1.TabIndex" type="System.Int32, mscorlib">
<value>0</value> <value>0</value>
@ -516,6 +502,18 @@
<data name="SplitContainerControl1.Panel1.Text" xml:space="preserve"> <data name="SplitContainerControl1.Panel1.Text" xml:space="preserve">
<value>Panel1</value> <value>Panel1</value>
</data> </data>
<data name="&gt;&gt;SplitContainerControl1.Panel1.Name" xml:space="preserve">
<value>SplitContainerControl1.Panel1</value>
</data>
<data name="&gt;&gt;SplitContainerControl1.Panel1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SplitGroupPanel, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainerControl1.Panel1.Parent" xml:space="preserve">
<value>SplitContainerControl1</value>
</data>
<data name="&gt;&gt;SplitContainerControl1.Panel1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="SplitContainerControl2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="SplitContainerControl2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
</data> </data>
@ -558,6 +556,18 @@
<data name="SplitContainerControl2.Panel1.Text" xml:space="preserve"> <data name="SplitContainerControl2.Panel1.Text" xml:space="preserve">
<value>Panel1</value> <value>Panel1</value>
</data> </data>
<data name="&gt;&gt;SplitContainerControl2.Panel1.Name" xml:space="preserve">
<value>SplitContainerControl2.Panel1</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SplitGroupPanel, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel1.Parent" xml:space="preserve">
<value>SplitContainerControl2</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="GridControl3.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="GridControl3.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
</data> </data>
@ -574,7 +584,7 @@
<value>GridBand3</value> <value>GridBand3</value>
</data> </data>
<data name="GridControl3.Size" type="System.Drawing.Size, System.Drawing"> <data name="GridControl3.Size" type="System.Drawing.Size, System.Drawing">
<value>370, 278</value> <value>370, 280</value>
</data> </data>
<data name="GridControl3.TabIndex" type="System.Int32, mscorlib"> <data name="GridControl3.TabIndex" type="System.Int32, mscorlib">
<value>0</value> <value>0</value>
@ -594,8 +604,20 @@
<data name="SplitContainerControl2.Panel2.Text" xml:space="preserve"> <data name="SplitContainerControl2.Panel2.Text" xml:space="preserve">
<value>Panel2</value> <value>Panel2</value>
</data> </data>
<data name="&gt;&gt;SplitContainerControl2.Panel2.Name" xml:space="preserve">
<value>SplitContainerControl2.Panel2</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel2.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SplitGroupPanel, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel2.Parent" xml:space="preserve">
<value>SplitContainerControl2</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel2.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="SplitContainerControl2.Size" type="System.Drawing.Size, System.Drawing"> <data name="SplitContainerControl2.Size" type="System.Drawing.Size, System.Drawing">
<value>370, 511</value> <value>370, 513</value>
</data> </data>
<data name="SplitContainerControl2.TabIndex" type="System.Int32, mscorlib"> <data name="SplitContainerControl2.TabIndex" type="System.Int32, mscorlib">
<value>0</value> <value>0</value>
@ -618,8 +640,20 @@
<data name="SplitContainerControl1.Panel2.Text" xml:space="preserve"> <data name="SplitContainerControl1.Panel2.Text" xml:space="preserve">
<value>Panel2</value> <value>Panel2</value>
</data> </data>
<data name="&gt;&gt;SplitContainerControl1.Panel2.Name" xml:space="preserve">
<value>SplitContainerControl1.Panel2</value>
</data>
<data name="&gt;&gt;SplitContainerControl1.Panel2.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SplitGroupPanel, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainerControl1.Panel2.Parent" xml:space="preserve">
<value>SplitContainerControl1</value>
</data>
<data name="&gt;&gt;SplitContainerControl1.Panel2.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="SplitContainerControl1.Size" type="System.Drawing.Size, System.Drawing"> <data name="SplitContainerControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>762, 511</value> <value>762, 513</value>
</data> </data>
<data name="SplitContainerControl1.TabIndex" type="System.Int32, mscorlib"> <data name="SplitContainerControl1.TabIndex" type="System.Int32, mscorlib">
<value>2</value> <value>2</value>
@ -648,6 +682,18 @@
<data name="SplitContainerControl3.Panel1.Text" xml:space="preserve"> <data name="SplitContainerControl3.Panel1.Text" xml:space="preserve">
<value>Panel1</value> <value>Panel1</value>
</data> </data>
<data name="&gt;&gt;SplitContainerControl3.Panel1.Name" xml:space="preserve">
<value>SplitContainerControl3.Panel1</value>
</data>
<data name="&gt;&gt;SplitContainerControl3.Panel1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SplitGroupPanel, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainerControl3.Panel1.Parent" xml:space="preserve">
<value>SplitContainerControl3</value>
</data>
<data name="&gt;&gt;SplitContainerControl3.Panel1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="DocumentViewer1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="DocumentViewer1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
</data> </data>
@ -655,7 +701,7 @@
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="DocumentViewer1.Size" type="System.Drawing.Size, System.Drawing"> <data name="DocumentViewer1.Size" type="System.Drawing.Size, System.Drawing">
<value>413, 511</value> <value>413, 513</value>
</data> </data>
<data name="DocumentViewer1.TabIndex" type="System.Int32, mscorlib"> <data name="DocumentViewer1.TabIndex" type="System.Int32, mscorlib">
<value>0</value> <value>0</value>
@ -675,8 +721,20 @@
<data name="SplitContainerControl3.Panel2.Text" xml:space="preserve"> <data name="SplitContainerControl3.Panel2.Text" xml:space="preserve">
<value>Panel2</value> <value>Panel2</value>
</data> </data>
<data name="&gt;&gt;SplitContainerControl3.Panel2.Name" xml:space="preserve">
<value>SplitContainerControl3.Panel2</value>
</data>
<data name="&gt;&gt;SplitContainerControl3.Panel2.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SplitGroupPanel, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainerControl3.Panel2.Parent" xml:space="preserve">
<value>SplitContainerControl3</value>
</data>
<data name="&gt;&gt;SplitContainerControl3.Panel2.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="SplitContainerControl3.Size" type="System.Drawing.Size, System.Drawing"> <data name="SplitContainerControl3.Size" type="System.Drawing.Size, System.Drawing">
<value>1189, 515</value> <value>1189, 517</value>
</data> </data>
<data name="SplitContainerControl3.TabIndex" type="System.Int32, mscorlib"> <data name="SplitContainerControl3.TabIndex" type="System.Int32, mscorlib">
<value>5</value> <value>5</value>
@ -708,6 +766,9 @@
<metadata name="MenuFullAccess_EDM.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="MenuFullAccess_EDM.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>522, 21</value> <value>522, 21</value>
</metadata> </metadata>
<metadata name="MenuFullAccess_ZOOFLOW.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>692, 21</value>
</metadata>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
@ -771,7 +832,7 @@
</data> </data>
<data name="frmDocumentResultList.IconOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="frmDocumentResultList.IconOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALMEAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAALMEAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
@ -848,24 +909,12 @@
<data name="&gt;&gt;BarButtonBack.Type" xml:space="preserve"> <data name="&gt;&gt;BarButtonBack.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;BarButtonItem5.Name" xml:space="preserve"> <data name="&gt;&gt;BarButtonResetLayout.Name" xml:space="preserve">
<value>BarButtonItem5</value> <value>BarButtonResetLayout</value>
</data> </data>
<data name="&gt;&gt;BarButtonItem5.Type" xml:space="preserve"> <data name="&gt;&gt;BarButtonResetLayout.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;RepositoryItemTextEdit1.Name" xml:space="preserve">
<value>RepositoryItemTextEdit1</value>
</data>
<data name="&gt;&gt;RepositoryItemTextEdit1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;RepositoryItemTextEdit2.Name" xml:space="preserve">
<value>RepositoryItemTextEdit2</value>
</data>
<data name="&gt;&gt;RepositoryItemTextEdit2.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;labelCriticalError.Name" xml:space="preserve"> <data name="&gt;&gt;labelCriticalError.Name" xml:space="preserve">
<value>labelCriticalError</value> <value>labelCriticalError</value>
</data> </data>
@ -914,6 +963,18 @@
<data name="&gt;&gt;MenuItemPropertiesECM.Type" xml:space="preserve"> <data name="&gt;&gt;MenuItemPropertiesECM.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;MenuItemsOpenFileZooFlow.Name" xml:space="preserve">
<value>MenuItemsOpenFileZooFlow</value>
</data>
<data name="&gt;&gt;MenuItemsOpenFileZooFlow.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;MenuItemPropertiesZooFlow.Name" xml:space="preserve">
<value>MenuItemPropertiesZooFlow</value>
</data>
<data name="&gt;&gt;MenuItemPropertiesZooFlow.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;RibbonPage1.Name" xml:space="preserve"> <data name="&gt;&gt;RibbonPage1.Name" xml:space="preserve">
<value>RibbonPage1</value> <value>RibbonPage1</value>
</data> </data>
@ -938,6 +999,18 @@
<data name="&gt;&gt;RibbonPageGroup_Export.Type" xml:space="preserve"> <data name="&gt;&gt;RibbonPageGroup_Export.Type" xml:space="preserve">
<value>DevExpress.XtraBars.Ribbon.RibbonPageGroup, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.Ribbon.RibbonPageGroup, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;RepositoryItemTextEdit1.Name" xml:space="preserve">
<value>RepositoryItemTextEdit1</value>
</data>
<data name="&gt;&gt;RepositoryItemTextEdit1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;RepositoryItemTextEdit2.Name" xml:space="preserve">
<value>RepositoryItemTextEdit2</value>
</data>
<data name="&gt;&gt;RepositoryItemTextEdit2.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;GridView2.Name" xml:space="preserve"> <data name="&gt;&gt;GridView2.Name" xml:space="preserve">
<value>GridView2</value> <value>GridView2</value>
</data> </data>
@ -986,6 +1059,12 @@
<data name="&gt;&gt;MenuFullAccess_EDM.Type" xml:space="preserve"> <data name="&gt;&gt;MenuFullAccess_EDM.Type" xml:space="preserve">
<value>DevExpress.XtraBars.PopupMenu, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.PopupMenu, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;MenuFullAccess_ZOOFLOW.Name" xml:space="preserve">
<value>MenuFullAccess_ZOOFLOW</value>
</data>
<data name="&gt;&gt;MenuFullAccess_ZOOFLOW.Type" xml:space="preserve">
<value>DevExpress.XtraBars.PopupMenu, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve"> <data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmDocumentResultList</value> <value>frmDocumentResultList</value>
</data> </data>

View File

@ -52,19 +52,23 @@ Public Class frmDocumentResultList
Private ReadOnly _Filesystem As Modules.Filesystem.File Private ReadOnly _Filesystem As Modules.Filesystem.File
Private ReadOnly _GridBuilder As GridBuilder Private ReadOnly _GridBuilder As GridBuilder
Private ReadOnly _File As Modules.Windows.File Private ReadOnly _File As Modules.Windows.File
Private ReadOnly _OpenDocuments As New DocumentResultCache(50000000) Private ReadOnly _Cache As New DocumentResultCache(50000000)
' Runtime variables ' Runtime variables
Private _IsLoading As Boolean = True Private _IsLoading As Boolean = True
Private _ActiveGrid As GridControl = Nothing Private _ActiveGrid As GridControl = Nothing
Private _ActiveGridBand As GridBand = Nothing Private _ActiveGridBand As GridBand = Nothing
Private _documentloader As DocumentLoader
' TODO: Hashes for checking if the opened file was modified externally ' TODO: Hashes for checking if the opened file was modified externally
'Private _HashOriginalFile As String = Nothing 'Private _HashOriginalFile As String = Nothing
'Private _HashOpenedFile As String = Nothing 'Private _HashOpenedFile As String = Nothing
Private _CurrentDocument As DocumentResultInfo = Nothing Private _DragBoxFromMouseDown As Rectangle
Private _CurrentDocumentId As Long = Nothing Private _ScreenOffset As Point
Private Property _CurrentDocument As DocumentResultInfo = Nothing
Private ReadOnly _Language As String Private ReadOnly _Language As String
Private WithEvents _FileOpenTimer As New Timer Private WithEvents _FileOpenTimer As New Timer
@ -95,6 +99,7 @@ Public Class frmDocumentResultList
_Params = Params _Params = Params
_File = New Modules.Windows.File(LogConfig) _File = New Modules.Windows.File(LogConfig)
_ResultLists = Params.Results _ResultLists = Params.Results
_Language = Utils.NotNull(_Environment.User.Language, State.UserState.LANG_EN_US) _Language = Utils.NotNull(_Environment.User.Language, State.UserState.LANG_EN_US)
End Sub End Sub
@ -119,10 +124,13 @@ Public Class frmDocumentResultList
' Operation mode is either guessed from service settings ' Operation mode is either guessed from service settings
' or explictly set from OperationModeOverride in Params ' or explictly set from OperationModeOverride in Params
OperationMode = GetOperationMode() OperationMode = GetOperationMode()
If OperationMode = OperationMode.WithAppServer Then If OperationMode = OperationMode.WithAppServer Or OperationMode = OperationMode.ZooFlow Then
InitAppServer() InitAppServer()
End If End If
_documentLoader = New DocumentLoader(_LogConfig, OperationMode, _IDBClient, _Environment.User)
If _Params.WindowTitle <> "" Then If _Params.WindowTitle <> "" Then
Text = $"{Text} - {_Params.WindowTitle}" Text = $"{Text} - {_Params.WindowTitle}"
End If End If
@ -172,6 +180,20 @@ Public Class frmDocumentResultList
End Try End Try
End Sub End Sub
Private Sub frmDocumentResultList_Closing(sender As Object, e As CancelEventArgs) Handles Me.FormClosing
Try
GridViewSave_Layout(_ActiveGrid.MainView)
_Config.Config.WindowLocation = Location
_Config.Config.WindowSize = Size
_Config.Save()
DocumentViewer1.Done()
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Private Sub GridView_FocusedRowChanged(sender As GridView, e As FocusedRowChangedEventArgs) Private Sub GridView_FocusedRowChanged(sender As GridView, e As FocusedRowChangedEventArgs)
_Helpers.SetRowHandle(e) _Helpers.SetRowHandle(e)
@ -180,58 +202,27 @@ Public Class frmDocumentResultList
Cursor = Cursors.WaitCursor Cursor = Cursors.WaitCursor
If e.FocusedRowHandle >= 0 Then If e.FocusedRowHandle >= 0 Then
Dim oRow = sender.GetDataRow(e.FocusedRowHandle) Dim oRow = sender.GetDataRow(_Helpers.ActiveRowHandle)
Dim oObjectId = oRow.ItemEx(Of Long)(COLUMN_DOCID, 0)
Dim oFullPath = oRow.ItemEx(Of String)(COLUMN_FILEPATH, "")
Dim oDocumentInfo As DocumentResultInfo = Nothing Dim oDocumentInfo As DocumentResultInfo = Nothing
DocumentViewer1.CloseDocument() DocumentViewer1.CloseDocument()
Select Case OperationMode oDocumentInfo = _documentloader.Load(oObjectId, oFullPath)
Case OperationMode.NoAppServer Dim oFileName = $"{oObjectId}.{oDocumentInfo.Extension}"
oDocumentInfo = LoadFile_Legacy(oRow)
If oDocumentInfo.Contents IsNot Nothing Then DocumentViewer1.LoadFile(oFileName, New MemoryStream(oDocumentInfo.Contents))
Dim oFileInfo As New FileInfo(oDocumentInfo.FullPath)
DocumentViewer1.LoadFile(oFileInfo.Name, New MemoryStream(oDocumentInfo.Contents))
Else
DocumentViewer1.LoadFile(oDocumentInfo.FullPath)
End If
Case OperationMode.WithAppServer ' Save reference to current
oDocumentInfo = LoadFile_IDB(oRow) _CurrentDocument = oDocumentInfo
If oDocumentInfo.Contents IsNot Nothing Then
Dim oFileInfo As New FileInfo(oDocumentInfo.FullPath)
DocumentViewer1.LoadFile(oFileInfo.Name, New MemoryStream(oDocumentInfo.Contents))
Else
DocumentViewer1.LoadFile(oDocumentInfo.FullPath)
End If
Case OperationMode.ZooFlow
oDocumentInfo = LoadFile_ZooFlow(oRow)
End Select
' Check DocumentInfo
If IsNothing(oDocumentInfo) Then If IsNothing(oDocumentInfo) Then
Show_Warning("File could not be loaded!") Show_Warning("File could not be loaded!")
Exit Sub Exit Sub
End If End If
If Not IO.File.Exists(oDocumentInfo.FullPath) Then
Show_Warning("File does not exist!")
' TODO: Create checksum after closing, compare and take action
'_HashOriginalFile = Nothing
Exit Sub
End If
If oDocumentInfo.Contents IsNot Nothing Then
Dim oFileInfo As New FileInfo(oDocumentInfo.FullPath)
DocumentViewer1.LoadFile(oFileInfo.Name, New MemoryStream(oDocumentInfo.Contents))
Else
DocumentViewer1.LoadFile(oDocumentInfo.FullPath)
End If
If oDocumentInfo.AccessRight = Rights.AccessRight.VIEW_ONLY Then If oDocumentInfo.AccessRight = Rights.AccessRight.VIEW_ONLY Then
DocumentViewer1.SetViewOnly(True) DocumentViewer1.SetViewOnly(True)
RibbonPageGroup_Export.Visible = False RibbonPageGroup_Export.Visible = False
@ -263,153 +254,63 @@ Public Class frmDocumentResultList
Return True Return True
End Function End Function
Private Function LoadFile_Legacy(GridRow As DataRow) As DocumentResultInfo 'Private Function LoadFile_AsByteArray(DocumentInfo As DocumentResultInfo) As DocumentResultInfo
Try ' Try
Dim oFullPath = GridRow.Item(COLUMN_FILEPATH) ' _Logger.Debug("Loading File [{0}]", DocumentInfo.FullPath)
Dim oDocumentInfo = New DocumentResultInfo() With { ' Dim oFullPath As String = DocumentInfo.FullPath
.AccessRight = Rights.AccessRight.FULL, ' Dim oPathExists = From oFile In _Cache
.FullPath = oFullPath ' Where oFile.FullPath = oFullPath And oFile.Contents IsNot Nothing
} ' Select oFile
If IO.File.Exists(oDocumentInfo.FullPath) Then ' Dim oExistsInCache = oPathExists.Count() > 0
oDocumentInfo = LoadFile_AsByteArray(oDocumentInfo) ' Dim oSizeChanged = False
_OpenDocuments.Add(oDocumentInfo) ' Dim oWriteTimeChanged = False
_CurrentDocument = oDocumentInfo
End If
Return oDocumentInfo ' _Logger.Debug("File exists in Cache: [{0}]", oExistsInCache)
Catch ex As Exception
_Logger.Error(ex)
Return Nothing
End Try
End Function
Private Function LoadFile_IDB(GridRow As DataRow) As DocumentResultInfo ' ' Get Information about the file on the filesystem
Try ' Dim oFileInfo As New FileInfo(oFullPath)
Dim oObjectId = GridRow.Item(COLUMN_DOCID)
_Logger.Debug("Loading Information for ObjectId: [{0}]", oObjectId)
' This needs to be Sync bc otherwise the PopupMenuShowing event will fire before this method loaded the Document Info ' If oExistsInCache Then
Dim oDocumentInfo As DocumentInfo = _IDBClient.GetDocumentInfo(_Environment.User.UserId, oObjectId) ' _Logger.Debug("Loading file from cache.")
Dim oResultDocumentInfo As New DocumentResultInfo() With {
.AccessRight = oDocumentInfo.AccessRight,
.FullPath = oDocumentInfo.FullPath
}
_Logger.Debug("Successfully loaded Information for ObjectId: [{0}]", oObjectId)
_Logger.Debug("Loading file [{0}]", oResultDocumentInfo.FullPath) ' Dim oCachedItem = oPathExists.First()
If IO.File.Exists(oResultDocumentInfo.FullPath) Then
oResultDocumentInfo = LoadFile_AsByteArray(oResultDocumentInfo)
_OpenDocuments.Add(oResultDocumentInfo)
_CurrentDocument = oResultDocumentInfo
Else
_Logger.Warn("File [{0}] does not exist.", oResultDocumentInfo.FullPath)
End If
_Logger.Debug("Successfully loaded File [{0}]", oResultDocumentInfo.FullPath)
Return oResultDocumentInfo ' If oCachedItem.Contents Is Nothing Then
' oSizeChanged = False
' Else
' oSizeChanged = Not (oFileInfo.Length = oCachedItem.Contents.Length)
' End If
' _Logger.Debug("Filesize changed: [{0}]", oSizeChanged)
Catch ex As Exception ' If oCachedItem.LastWriteTime = Nothing Then
_Logger.Error(ex) ' oWriteTimeChanged = False
Return Nothing ' Else
' oWriteTimeChanged = Not oFileInfo.LastWriteTime.Equals(oCachedItem.LastWriteTime)
' End If
' _Logger.Debug("Write-time changed: [{0}]", oWriteTimeChanged)
End Try ' If oSizeChanged Or oWriteTimeChanged Then
End Function ' _Logger.Debug("Size or Write-time changed, loading from disk.")
Private Function LoadFile_ZooFlow(GridRow As DataRow) ' Return LoadFile_FromDisk(DocumentInfo, oFileInfo)
Try ' Else
Dim oObjectId = GridRow.Item(COLUMN_DOCID) ' _Logger.Debug("Loading from cache")
_Logger.Debug("Loading FileObject for ObjectId: [{0}]", oObjectId)
' This needs to be Sync bc otherwise the PopupMenuShowing event will fire before this method loaded the FileObject ' Return oCachedItem
Dim oFileObject As FileObject = _IDBClient.GetFileObject(oObjectId) ' End If
Dim oResultDocumentInfo As New DocumentResultInfo() With {
.AccessRight = "",
.FullPath = "",
.Contents = oFileObject._FileContents
}
_Logger.Debug("Successfully loaded Information for ObjectId: [{0}]", oObjectId)
Catch ex As Exception ' Else
_Logger.Error(ex) ' _Logger.Debug("File exists in cache, loading from disk.")
Return Nothing
End Try ' Return LoadFile_FromDisk(DocumentInfo, oFileInfo)
End Function ' End If
Private Function LoadFile_AsByteArray(DocumentInfo As DocumentResultInfo) As DocumentResultInfo ' Catch ex As Exception
Try ' _Logger.Error(ex)
_Logger.Debug("Loading File [{0}]", DocumentInfo.FullPath) ' Return DocumentInfo
Dim oFullPath As String = DocumentInfo.FullPath ' End Try
Dim oPathExists = From oFile In _OpenDocuments 'End Function
Where oFile.FullPath = oFullPath And oFile.Contents IsNot Nothing
Select oFile
Dim oExistsInCache = oPathExists.Count() > 0
Dim oSizeChanged = False
Dim oWriteTimeChanged = False
_Logger.Debug("File exists in Cache: [{0}]", oExistsInCache)
' Get Information about the file on the filesystem
Dim oFileInfo As New FileInfo(oFullPath)
If oExistsInCache Then
_Logger.Debug("Loading file from cache.")
Dim oCachedItem = oPathExists.First()
If oCachedItem.Contents Is Nothing Then
oSizeChanged = False
Else
oSizeChanged = Not (oFileInfo.Length = oCachedItem.Contents.Length)
End If
_Logger.Debug("Filesize changed: [{0}]", oSizeChanged)
If oCachedItem.LastWriteTime = Nothing Then
oWriteTimeChanged = False
Else
oWriteTimeChanged = Not oFileInfo.LastWriteTime.Equals(oCachedItem.LastWriteTime)
End If
_Logger.Debug("Write-time changed: [{0}]", oWriteTimeChanged)
If oSizeChanged Or oWriteTimeChanged Then
_Logger.Debug("Size or Write-time changed, loading from disk.")
Return LoadFile_FromDisk(DocumentInfo, oFileInfo)
Else
_Logger.Debug("Loading from cache")
Return oCachedItem
End If
Else
_Logger.Debug("File exists in cache, loading from disk.")
Return LoadFile_FromDisk(DocumentInfo, oFileInfo)
End If
Catch ex As Exception
_Logger.Error(ex)
Return DocumentInfo
End Try
End Function
Private Function LoadFile_FromDisk(pDocumentInfo As DocumentResultInfo, pFileInfo As FileInfo) As DocumentResultInfo
Using oStream = IO.File.OpenRead(pDocumentInfo.FullPath)
_Logger.Debug("File opened.")
Using oMemoryStream = New MemoryStream()
_Logger.Debug("Copying file contents to memory stream.")
oStream.CopyTo(oMemoryStream)
pDocumentInfo.Contents = oMemoryStream.ToArray()
pDocumentInfo.LastWriteTime = pFileInfo.LastWriteTime
_Logger.Debug("Successfully copied file contents to memory stream.")
End Using
End Using
Return pDocumentInfo
End Function
Public Function RefreshResults(pResults As IEnumerable(Of BaseResult)) As Boolean Implements IResultForm.RefreshResults Public Function RefreshResults(pResults As IEnumerable(Of BaseResult)) As Boolean Implements IResultForm.RefreshResults
_IsLoading = True _IsLoading = True
@ -427,10 +328,6 @@ Public Class frmDocumentResultList
End Try End Try
End Function End Function
Private Sub ClearGridData()
GridControl1.DataSource = Nothing
End Sub
Private Sub LoadGridData(Result As DocumentResult) Private Sub LoadGridData(Result As DocumentResult)
If Result.Datatable.Columns.Contains(COLUMN_DOCID) = False Then If Result.Datatable.Columns.Contains(COLUMN_DOCID) = False Then
Throw New ApplicationException($"Datatable is missing DocId Column [{COLUMN_DOCID}] for search {Result.Title}!") Throw New ApplicationException($"Datatable is missing DocId Column [{COLUMN_DOCID}] for search {Result.Title}!")
@ -627,30 +524,6 @@ Public Class frmDocumentResultList
End Try End Try
End Sub End Sub
Private Function TryGetItem(DataRow As DataRow, ColumnName As String, Optional DefaultValue As String = "") As String
Try
Return DataRow.Item(ColumnName)
Catch ex As Exception
Return DefaultValue
End Try
End Function
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
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
End If
End Sub
Private Sub BarButtonItemExportGrid1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemExportGrid1.ItemClick Private Sub BarButtonItemExportGrid1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemExportGrid1.ItemClick
Dim oActiveGrid = GetActiveGridControl() Dim oActiveGrid = GetActiveGridControl()
@ -676,18 +549,6 @@ Public Class frmDocumentResultList
End If End If
End Sub End Sub
Private Sub SplitContainerControl1_SplitterPositionChanged(sender As Object, e As EventArgs) Handles SplitContainerControl1.SplitterPositionChanged
If _IsLoading = False Then
_Config.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
End If
End Sub
Private Function GetActiveRow() As DataRow Private Function GetActiveRow() As DataRow
Dim oActiveGrid = GetActiveGridControl() Dim oActiveGrid = GetActiveGridControl()
Dim oActiveRowhandle = _Helpers.ActiveRowHandle Dim oActiveRowhandle = _Helpers.ActiveRowHandle
@ -700,10 +561,7 @@ Public Class frmDocumentResultList
Return Nothing Return Nothing
End If End If
End Function End Function
Private Function GetDevexpressGrid_LayoutName(pGridView As GridView)
Dim Filename As String = $"DevExpressGridViewDocResult_{pGridView.Name}UserLayout.xml"
Return Path.Combine(_Config.UserConfigPath.Replace("UserConfig.xml", ""), Filename)
End Function
Private Function GetActiveGridControl() As GridControl Private Function GetActiveGridControl() As GridControl
If _ActiveGrid Is Nothing Then If _ActiveGrid Is Nothing Then
Return Nothing Return Nothing
@ -711,31 +569,9 @@ Public Class frmDocumentResultList
Return _ActiveGrid Return _ActiveGrid
End Function End Function
Private Sub GridViewSave_Layout(pGridView As GridView)
Try
Dim oXml As String = GetDevexpressGrid_LayoutName(pGridView)
pGridView.SaveLayoutToXml(oXml, OptionsLayoutBase.FullLayout)
Catch ex As Exception
_Logger.Error(ex)
_Logger.Info("Error while saving GridLayout: " & ex.Message)
End Try
End Sub
Private Sub RestoreLayout(pGridView As GridView)
Try
Dim oLayoutFile As String = GetDevexpressGrid_LayoutName(pGridView)
If IO.File.Exists(oLayoutFile) Then
pGridView.RestoreLayoutFromXml(oLayoutFile, OptionsLayoutBase.FullLayout)
End If
Catch ex As Exception
_Logger.Error(ex)
_Logger.Info("Error while restoring layout: " & ex.Message)
End Try
End Sub
Private Sub GridControl_Enter(sender As GridControl, e As EventArgs) Handles GridControl1.Enter, GridControl2.Enter, GridControl3.Enter Private Sub GridControl_Enter(sender As GridControl, e As EventArgs) Handles GridControl1.Enter, GridControl2.Enter, GridControl3.Enter
_ActiveGrid = sender _ActiveGrid = sender
BarButtonItem5.Visibility = DevExpress.XtraBars.BarItemVisibility.Always BarButtonResetLayout.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
BarButtonItemExportGrid1.Visibility = DevExpress.XtraBars.BarItemVisibility.Always BarButtonItemExportGrid1.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
SetActiveGridBand() SetActiveGridBand()
End Sub End Sub
@ -757,59 +593,6 @@ Public Class frmDocumentResultList
End If End If
End Sub End Sub
Private Sub OpenFolderPath()
Try
Dim oRow = GetActiveRow()
If oRow IsNot Nothing Then
Dim oFilename = _CurrentDocument.FullPath
Dim oDirectory = IO.Path.GetDirectoryName(oFilename)
Process.Start(oDirectory)
End If
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Private Sub OpenFile()
Try
If _CurrentDocument IsNot Nothing Then
Process.Start(New ProcessStartInfo With {
.FileName = _CurrentDocument.FullPath
})
End If
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Private Sub CopyFileName()
Try
Dim oRow = GetActiveRow()
If oRow IsNot Nothing Then
Dim oFilename = _CurrentDocument.FullPath
Clipboard.SetText(oFilename)
End If
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Private Sub OpenProperties()
Try
Dim oRow = GetActiveRow()
If oRow IsNot Nothing Then
Dim oObjectId = oRow.Item(COLUMN_DOCID)
Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, _IDBClient, oObjectId)
oPropertyDialog.Show()
End If
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Private Sub GridView1_ColumnFilterChanged(sender As GridView, e As EventArgs) Handles GridView1.ColumnFilterChanged Private Sub GridView1_ColumnFilterChanged(sender As GridView, e As EventArgs) Handles GridView1.ColumnFilterChanged
Dim oRowCount = sender.RowCount Dim oRowCount = sender.RowCount
UpdateGridHeader(_ResultLists, 0, oRowCount) UpdateGridHeader(_ResultLists, 0, oRowCount)
@ -830,42 +613,30 @@ Public Class frmDocumentResultList
Close() Close()
End Sub End Sub
Private Sub frmDocumentResultList_Closing(sender As Object, e As CancelEventArgs) Handles Me.FormClosing
Try
GridViewSave_Layout(_ActiveGrid.MainView)
_Config.Config.WindowLocation = Location
_Config.Config.WindowSize = Size
_Config.Save()
DocumentViewer1.Done()
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Private Sub GridControl_DoubleClick(sender As Object, e As EventArgs) Handles GridControl1.DoubleClick, GridControl2.DoubleClick, GridControl3.DoubleClick Private Sub GridControl_DoubleClick(sender As Object, e As EventArgs) Handles GridControl1.DoubleClick, GridControl2.DoubleClick, GridControl3.DoubleClick
If _CurrentDocument IsNot Nothing AndAlso _CurrentDocument.AccessRight > Rights.AccessRight.VIEW_ONLY Then If _CurrentDocument IsNot Nothing AndAlso _CurrentDocument.AccessRight > Rights.AccessRight.VIEW_ONLY Then
OpenFile() Process.Start(New ProcessStartInfo With {
.FileName = _CurrentDocument.FullPath
})
End If End If
End Sub End Sub
Public Sub Show_CriticalError(Message As String) Public Sub Show_CriticalError(Message As String)
labelCriticalError.Visibility = DevExpress.XtraBars.BarItemVisibility.Always labelCriticalError.Visibility = BarItemVisibility.Always
labelCriticalError.Caption = Message labelCriticalError.Caption = Message
End Sub End Sub
Public Sub Show_Warning(Message As String) Public Sub Show_Warning(Message As String)
labelWarning.Visibility = DevExpress.XtraBars.BarItemVisibility.Always labelWarning.Visibility = BarItemVisibility.Always
labelWarning.Caption = Message labelWarning.Caption = Message
End Sub End Sub
Public Sub Reset_Errors() Public Sub Reset_Errors()
labelCriticalError.Visibility = DevExpress.XtraBars.BarItemVisibility.Never labelCriticalError.Visibility = BarItemVisibility.Never
labelWarning.Visibility = DevExpress.XtraBars.BarItemVisibility.Never labelWarning.Visibility = BarItemVisibility.Never
End Sub End Sub
Private Sub BarButtonItem5_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem5.ItemClick Private Sub BarButtonResetLayout_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonResetLayout.ItemClick
If Not IsNothing(_ActiveGrid) Then If Not IsNothing(_ActiveGrid) Then
Try Try
Dim oFile = GetDevexpressGrid_LayoutName(_ActiveGrid.MainView) Dim oFile = GetDevexpressGrid_LayoutName(_ActiveGrid.MainView)
@ -879,15 +650,171 @@ Public Class frmDocumentResultList
End If End If
End Sub End Sub
Private _DragBoxFromMouseDown As Rectangle Private Function TestPathExists(pTitle As String) As Boolean
Private _ScreenOffset As Point If IO.File.Exists(_CurrentDocument.FullPath) = False Then
MessageBox.Show($"Datei {_CurrentDocument.FullPath} existiert nicht oder wurde verschoben!", pTitle, MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
Return False
Else
Return True
End If
End Function
Private Function TestObjectIdExists(pObjectId As Long, pTitle As String) As Boolean
If pObjectId = 0 Then
MessageBox.Show($"Objekt {pObjectId} existiert nicht oder wurde verschoben!", pTitle, MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
Return False
Else
Return True
End If
End Function
Public Sub FileOpenTimer_Elapsed() Handles _FileOpenTimer.Tick
'Try
' Dim oProcesses = Process.GetProcesses()
' Dim oIds = (From oProc In oProcesses
' Select oProc.Id).
' ToList()
' Dim oNewFileOpenList As New Dictionary(Of Integer, String)
' For Each oOpenFile In _FileOpenList
' If oIds.Contains(oOpenFile.Key) Then
' oNewFileOpenList.Add(oOpenFile.Key, oOpenFile.Value)
' End If
' Next
' If oNewFileOpenList.Count < _FileOpenList.Count Then
' Dim oClosedFiles = _FileOpenList.
' Except(oNewFileOpenList).
' ToList()
' If oClosedFiles.Count = 1 Then
' Dim oOpenFile = oClosedFiles.First()
' DocumentViewer1.LoadFile(oOpenFile.Value)
' Else
' ClearGridData()
' UpdateGridData()
' End If
' _FileOpenList = oNewFileOpenList
' End If
'Catch ex As Exception
' _Logger.Error(ex)
'End Try
End Sub
#Region "Context Menu"
Private Sub GridView_PopupMenuShowing(sender As Object, e As PopupMenuShowingEventArgs) Handles GridView2.PopupMenuShowing, GridView3.PopupMenuShowing, GridView1.PopupMenuShowing
Try
Dim oView As GridView = sender
If e.MenuType = GridMenuType.Row Then
Dim oRowHandle = e.HitInfo.RowHandle
Dim oRow As DataRow = oView.GetDataRow(oRowHandle)
Dim oObjectId As Long = oRow.Item(COLUMN_DOCID)
Dim oPoint As Point = oView.GridControl.PointToScreen(e.HitInfo.HitPoint)
Dim oRight As Rights.AccessRight = _CurrentDocument.AccessRight
'_CurrentDocumentId = oObjectId
_CurrentDocument.Id = oObjectId
If OperationMode = OperationMode.WithAppServer Then
If oRight = Rights.AccessRight.FULL Or oRight = Rights.AccessRight.VIEW_EXPORT Then
MenuFullAccess_IDB.ShowPopup(oPoint)
Else
MenuViewAccess_IDB.ShowPopup(oPoint)
End If
ElseIf OperationMode = OperationMode.ZooFlow Then
MenuFullAccess_ZOOFLOW.ShowPopup(oPoint)
Else
MenuFullAccess_EDM.ShowPopup(oPoint)
End If
Else
'_CurrentDocumentId = Nothing
_CurrentDocument.Id = Nothing
End If
Catch ex As Exception
_Logger.Error(ex)
MsgBox("Unexpected Error while preparing context menu", MsgBoxStyle.Critical, Text)
End Try
End Sub
Private Sub MenuItemFolderpathCopyECM_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemFolderpathCopy.ItemClick
Dim oFolderPath = IO.Path.GetDirectoryName(_CurrentDocument.FullPath)
Clipboard.SetText(oFolderPath)
End Sub
Private Sub MenuItemPropertiesECM_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemPropertiesECM.ItemClick
If TestPathExists(OPEN_PROPERTIES) = False Then
Exit Sub
End If
_File.OpenFileProperties(_CurrentDocument.FullPath)
End Sub
Private Sub MenuItemFilepathCopyIDB_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemFilepathCopy.ItemClick
Clipboard.SetText(_CurrentDocument.FullPath)
End Sub
Private Sub MenuItemFolderOpen_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemFolderOpen.ItemClick
If TestPathExists(OPEN_DIRECTORY) = False Then
Exit Sub
End If
Dim oArgs As String = $"/e, /select, ""{_CurrentDocument.FullPath}"""
Dim oInfo As New ProcessStartInfo() With {
.Arguments = oArgs,
.FileName = "explorer"
}
Process.Start(oInfo)
End Sub
Private Sub MenuItemPropertiesIDB_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemPropertiesIDB.ItemClick
If TestObjectIdExists(_CurrentDocument.Id, OPEN_PROPERTIES) = False Then
Exit Sub
End If
Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, _IDBClient, _CurrentDocument.Id)
oPropertyDialog.Show()
End Sub
Private Sub MenuItemFileOpen_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemFileOpen.ItemClick
If TestPathExists(OPEN_FILE) = False Then
Exit Sub
End If
Try
Process.Start(New ProcessStartInfo With {
.FileName = _CurrentDocument.FullPath
})
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Private Sub MenuItemPropertiesZooFlow_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemPropertiesZooFlow.ItemClick
If TestObjectIdExists(_CurrentDocument.Id, OPEN_PROPERTIES) = False Then
Exit Sub
End If
Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, _IDBClient, _CurrentDocument.Id)
oPropertyDialog.Show()
End Sub
Private Sub MenuItemsOpenFileZooFlow_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemsOpenFileZooFlow.ItemClick
'TODO: Save file to temp dir and then open
End Sub
#End Region
#Region "Drag to Export"
Private Sub GridView1_MouseDown(sender As GridView, e As MouseEventArgs) Handles GridView1.MouseDown Private Sub GridView1_MouseDown(sender As GridView, e As MouseEventArgs) Handles GridView1.MouseDown
If sender.FocusedRowHandle >= 0 Then If sender.FocusedRowHandle >= 0 Then
Dim oDragSize As Size = SystemInformation.DragSize Dim oDragSize As Size = SystemInformation.DragSize
_DragBoxFromMouseDown = New Rectangle(New Point(e.X - (oDragSize.Width / 2), _DragBoxFromMouseDown = New Rectangle(New Point(e.X - (oDragSize.Width / 2), e.Y - (oDragSize.Height / 2)), oDragSize)
e.Y - (oDragSize.Height / 2)), oDragSize)
Else Else
_DragBoxFromMouseDown = Rectangle.Empty _DragBoxFromMouseDown = Rectangle.Empty
@ -918,109 +845,67 @@ Public Class frmDocumentResultList
End If End If
End If End If
End Sub End Sub
#End Region
#Region "Layout"
Private Sub SplitContainerControl1_SplitterPositionChanged(sender As Object, e As EventArgs) Handles SplitContainerControl1.SplitterPositionChanged
If _IsLoading = False Then
_Config.Config.SplitContainer1Distance = SplitContainerControl1.SplitterPosition
End If
End Sub
Private Sub GridView_PopupMenuShowing(sender As Object, e As PopupMenuShowingEventArgs) _ Private Sub SplitContainerControl2_SplitterPositionChanged(sender As Object, e As EventArgs) Handles SplitContainerControl2.SplitterPositionChanged
Handles GridView2.PopupMenuShowing, GridView3.PopupMenuShowing, GridView1.PopupMenuShowing If _IsLoading = False Then
_Config.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
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
End If
End Sub
Private Function GetDevexpressGrid_LayoutName(pGridView As GridView)
Dim Filename As String = $"DevExpressGridViewDocResult_{pGridView.Name}UserLayout.xml"
Return Path.Combine(_Config.UserConfigPath.Replace("UserConfig.xml", ""), Filename)
End Function
Private Sub GridViewSave_Layout(pGridView As GridView)
Try Try
Dim oView As GridView = sender Dim oXml As String = GetDevexpressGrid_LayoutName(pGridView)
pGridView.SaveLayoutToXml(oXml, OptionsLayoutBase.FullLayout)
If e.MenuType = GridMenuType.Row Then Catch ex As Exception
Dim oRowHandle = e.HitInfo.RowHandle _Logger.Error(ex)
Dim oRow As DataRow = oView.GetDataRow(oRowHandle) _Logger.Info("Error while saving GridLayout: " & ex.Message)
Dim oObjectId As Long = oRow.Item(COLUMN_DOCID) End Try
Dim oPoint As Point = oView.GridControl.PointToScreen(e.HitInfo.HitPoint) End Sub
Dim oRight As Rights.AccessRight = _CurrentDocument.AccessRight Private Sub RestoreLayout(pGridView As GridView)
Try
_CurrentDocumentId = oObjectId Dim oLayoutFile As String = GetDevexpressGrid_LayoutName(pGridView)
If IO.File.Exists(oLayoutFile) Then
If OperationMode = OperationMode.WithAppServer Then pGridView.RestoreLayoutFromXml(oLayoutFile, OptionsLayoutBase.FullLayout)
If oRight = Rights.AccessRight.FULL Or oRight = Rights.AccessRight.VIEW_EXPORT Then
MenuFullAccess_IDB.ShowPopup(oPoint)
Else
MenuViewAccess_IDB.ShowPopup(oPoint)
End If
Else
MenuFullAccess_EDM.ShowPopup(oPoint)
End If
Else
_CurrentDocumentId = Nothing
End If End If
Catch ex As Exception Catch ex As Exception
_Logger.Error(ex) _Logger.Error(ex)
MsgBox("Unexpected Error while preparing context menu", MsgBoxStyle.Critical, Text) _Logger.Info("Error while restoring layout: " & ex.Message)
End Try End Try
End Sub End Sub
Private Function TestPathExists(pTitle As String) As Boolean
If IO.File.Exists(_CurrentDocument.FullPath) = False Then
MessageBox.Show($"Datei {_CurrentDocument.FullPath} existiert nicht oder wurde verschoben!", pTitle, MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
Return False
Else
Return True
End If
End Function
Private Function TestObjectIdExists(pObjectId As Long, pTitle As String) As Boolean
If pObjectId = 0 Then
MessageBox.Show($"Objekt {pObjectId} existiert nicht oder wurde verschoben!", pTitle, MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
Return False
Else
Return True
End If
End Function
Private Sub MenuItemPropertiesIDB_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemPropertiesIDB.ItemClick
If TestObjectIdExists(_CurrentDocumentId, OPEN_PROPERTIES) = False Then
Exit Sub
End If
Dim oPropertyDialog As New frmObjectPropertyDialog(_LogConfig, _Environment, _IDBClient, _CurrentDocumentId)
oPropertyDialog.Show()
End Sub
Private Sub MenuItemPropertiesECM_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemPropertiesECM.ItemClick #End Region
If TestPathExists(OPEN_PROPERTIES) = False Then
Exit Sub
End If
_File.OpenFileProperties(_CurrentDocument.FullPath)
End Sub
Private Sub MenuItemFileOpen_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemFileOpen.ItemClick
If TestPathExists(OPEN_FILE) = False Then
Exit Sub
End If
Try
Process.Start(New ProcessStartInfo With {
.FileName = _CurrentDocument.FullPath
})
Catch ex As Exception
_Logger.Error(ex)
End Try
End Sub
Private Sub MenuItemFolderOpen_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemFolderOpen.ItemClick
If TestPathExists(OPEN_DIRECTORY) = False Then
Exit Sub
End If
Dim oArgs As String = $"/e, /select, ""{_CurrentDocument.FullPath}"""
Dim oInfo As New ProcessStartInfo() With {
.Arguments = oArgs,
.FileName = "explorer"
}
Process.Start(oInfo)
End Sub
Private Sub MenuItemFilepathCopyIDB_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemFilepathCopy.ItemClick
Clipboard.SetText(_CurrentDocument.FullPath)
End Sub
Private Sub MenuItemFolderpathCopyECM_ItemClick(sender As Object, e As ItemClickEventArgs) Handles MenuItemFolderpathCopy.ItemClick
Dim oFolderPath = IO.Path.GetDirectoryName(_CurrentDocument.FullPath)
Clipboard.SetText(oFolderPath)
End Sub
End Class End Class

View File

@ -90,6 +90,16 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''</summary>
Friend ReadOnly Property categorize() As DevExpress.Utils.Svg.SvgImage
Get
Dim obj As Object = ResourceManager.GetObject("categorize", resourceCulture)
Return CType(obj,DevExpress.Utils.Svg.SvgImage)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''</summary> '''</summary>
@ -140,6 +150,16 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''</summary>
Friend ReadOnly Property editcolors() As DevExpress.Utils.Svg.SvgImage
Get
Dim obj As Object = ResourceManager.GetObject("editcolors", resourceCulture)
Return CType(obj,DevExpress.Utils.Svg.SvgImage)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage. ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''</summary> '''</summary>
@ -210,6 +230,26 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''</summary>
Friend ReadOnly Property singlepageview() As DevExpress.Utils.Svg.SvgImage
Get
Dim obj As Object = ResourceManager.GetObject("singlepageview", resourceCulture)
Return CType(obj,DevExpress.Utils.Svg.SvgImage)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''</summary>
Friend ReadOnly Property singlepageview1() As DevExpress.Utils.Svg.SvgImage
Get
Dim obj As Object = ResourceManager.GetObject("singlepageview1", resourceCulture)
Return CType(obj,DevExpress.Utils.Svg.SvgImage)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. ''' Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap.
'''</summary> '''</summary>

View File

@ -148,6 +148,12 @@
<data name="Copy_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="Copy_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Copy_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\Copy_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="categorize" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\categorize.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="open" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\open.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="txt" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="txt" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\txt.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\txt.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -157,6 +163,9 @@
<data name="jpg" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="jpg" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\jpg.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\jpg.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="singlepageview" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\singlepageview.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="png" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="png" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\png.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\png.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
@ -175,10 +184,13 @@
<data name="_blank" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="_blank" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\_blank.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> <value>..\Resources\_blank.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data> </data>
<data name="singlepageview1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\singlepageview1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="copy" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="copy" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\copy.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>..\Resources\copy.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="open" type="System.Resources.ResXFileRef, System.Windows.Forms"> <data name="editcolors" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\open.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>..\Resources\editcolors.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
</root> </root>

View File

@ -0,0 +1,30 @@
<?xml version='1.0' encoding='UTF-8'?>
<svg x="0px" y="0px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" id="Layer_1" style="enable-background:new 0 0 32 32">
<style type="text/css">
.Yellow{fill:#FFB115;}
.Red{fill:#D11C1C;}
.Blue{fill:#1177D7;}
.Green{fill:#039C23;}
.Black{fill:#727272;}
.White{fill:#FFFFFF;}
.st0{opacity:0.5;}
.st1{display:none;}
.st2{display:inline;fill:#039C23;}
.st3{display:inline;fill:#D11C1C;}
.st4{display:inline;fill:#727272;}
</style>
<g id="Categorize">
<path d="M10,8H4V2h6V8z M18,2h-6v6h6V2z M10,10H4v6h6V10z" class="Yellow" />
<path d="M10,24H4v-6h6V24z M18,10h-6v6h6V10z" class="Green" />
<path d="M26,8h-6V2h6V8z M26,10h-6v6h6V10z" class="Red" />
<path d="M26,24h-6v-6h6V24z M18,18h-6v6h6V18z" class="Blue" />
<g class="st0">
<rect x="4" y="10" width="6" height="6" rx="0" ry="0" class="Green" />
<path d="M18,8h-6V2h6V8z M26,18h-6v6h6V18z" class="Red" />
<path d="M26,16h-6v-6h6V16z M18,10h-6v6h6V10z" class="Blue" />
</g>
<g class="st0">
<rect x="20" y="18" width="6" height="6" rx="0" ry="0" class="Blue" />
</g>
</g>
</svg>

View File

@ -0,0 +1,30 @@
<?xml version='1.0' encoding='UTF-8'?>
<svg x="0px" y="0px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" id="Layer_1" style="enable-background:new 0 0 32 32">
<style type="text/css">
.Yellow{fill:#FFB115;}
.Red{fill:#D11C1C;}
.Black{fill:#727272;}
.Blue{fill:#1177D7;}
.White{fill:#FFFFFF;}
.Green{fill:#039C23;}
.st0{opacity:0.75;}
.st1{opacity:0.5;}
.st2{opacity:0.25;}
.st3{fill:#FFB115;}
</style>
<g id="EditColors">
<path d="M29,0H1C0.5,0,0,0.5,0,1v28c0,0.5,0.5,1,1,1h28c0.5,0,1-0.5,1-1V1C30,0.5,29.5,0,29,0z M28,28H2V2h26V28z" class="Black" />
<path d="M10,10H4V4h6V10z M18,4h-6v6h6V4z M10,12H4v6h6V12z" class="Yellow" />
<path d="M10,26H4v-6h6V26z M18,12h-6v6h6V12z" class="Green" />
<path d="M26,10h-6V4h6V10z M26,12h-6v6h6V12z" class="Red" />
<path d="M26,26h-6v-6h6V26z M18,20h-6v6h6V20z" class="Blue" />
<g class="st1">
<rect x="4" y="12" width="6" height="6" rx="0" ry="0" class="Green" />
<path d="M18,10h-6V4h6V10z M26,20h-6v6h6V20z" class="Red" />
<path d="M26,18h-6v-6h6V18z M18,12h-6v6h6V12z" class="Blue" />
</g>
<g class="st1">
<rect x="20" y="20" width="6" height="6" rx="0" ry="0" class="Blue" />
</g>
</g>
</svg>

View File

@ -0,0 +1,16 @@
<?xml version='1.0' encoding='UTF-8'?>
<svg x="0px" y="0px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" id="Layer_1" style="enable-background:new 0 0 32 32">
<style type="text/css">
.Yellow{fill:#FFB115;}
.Red{fill:#D11C1C;}
.Blue{fill:#1177D7;}
.Green{fill:#039C23;}
.Black{fill:#727272;}
.White{fill:#FFFFFF;}
.st0{opacity:0.75;}
</style>
<g id="SinglePageView">
<path d="M27,0H3C2.4,0,2,0.4,2,1v28c0,0.6,0.4,1,1,1h24c0.6,0,1-0.4,1-1V1C28,0.4,27.6,0,27,0z M26,28H4V2h22V28z" class="Black" />
<path d="M22,8H8V6h14V8z M22,10H8v2h14V10z M22,14H8v2h14V14z M22,18H8v2h14V18z M22,22H8v2h14V22z" class="Blue" />
</g>
</svg>

View File

@ -0,0 +1,16 @@
<?xml version='1.0' encoding='UTF-8'?>
<svg x="0px" y="0px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" id="Layer_1" style="enable-background:new 0 0 32 32">
<style type="text/css">
.Yellow{fill:#FFB115;}
.Red{fill:#D11C1C;}
.Blue{fill:#1177D7;}
.Green{fill:#039C23;}
.Black{fill:#727272;}
.White{fill:#FFFFFF;}
.st0{opacity:0.75;}
</style>
<g id="SinglePageView">
<path d="M27,0H3C2.4,0,2,0.4,2,1v28c0,0.6,0.4,1,1,1h24c0.6,0,1-0.4,1-1V1C28,0.4,27.6,0,27,0z M26,28H4V2h22V28z" class="Black" />
<path d="M22,8H8V6h14V8z M22,10H8v2h14V10z M22,14H8v2h14V14z M22,18H8v2h14V18z M22,22H8v2h14V22z" class="Blue" />
</g>
</svg>