diff --git a/GUIs.ZooFlow/My Project/Resources.Designer.vb b/GUIs.ZooFlow/My Project/Resources.Designer.vb
index 9ff22962..c4078a92 100644
--- a/GUIs.ZooFlow/My Project/Resources.Designer.vb
+++ b/GUIs.ZooFlow/My Project/Resources.Designer.vb
@@ -340,6 +340,26 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property actions_calendar() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("actions_calendar", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property actions_calendar1() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("actions_calendar1", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
'''
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''
@@ -650,6 +670,26 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property bo_category() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("bo_category", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property bo_category1() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("bo_category1", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
'''
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''
@@ -1140,6 +1180,46 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property link() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("link", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property link1() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("link1", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property link2() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("link2", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property link3() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("link3", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
'''
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''
@@ -1230,6 +1310,16 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property new4() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("new4", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
'''
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''
@@ -1510,6 +1600,26 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property unlink() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("unlink", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property unlink1() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("unlink1", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
'''
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''
@@ -1520,6 +1630,26 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property viewmergeddata() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("viewmergeddata", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
+ '''
+ ''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
+ '''
+ Friend ReadOnly Property viewmergeddata1() As DevExpress.Utils.Svg.SvgImage
+ Get
+ Dim obj As Object = ResourceManager.GetObject("viewmergeddata1", resourceCulture)
+ Return CType(obj,DevExpress.Utils.Svg.SvgImage)
+ End Get
+ End Property
+
'''
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''
diff --git a/GUIs.ZooFlow/My Project/Resources.resx b/GUIs.ZooFlow/My Project/Resources.resx
index 8539267f..b4d6774e 100644
--- a/GUIs.ZooFlow/My Project/Resources.resx
+++ b/GUIs.ZooFlow/My Project/Resources.resx
@@ -181,6 +181,9 @@
..\Resources\ZooFlow_CW_DevExpress.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\link2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\editnames.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -214,6 +217,9 @@
..\Resources\text.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\viewmergeddata.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\actions_check6.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -241,9 +247,15 @@
..\Resources\del4.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\viewmergeddata1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\actions_deletecircled1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\link1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\ZooflowTitle.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -259,8 +271,8 @@
..\Resources\actions_add.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\actions_deletecircled3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\gear_32xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
..\Resources\deletetable.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -268,6 +280,9 @@
..\Resources\3_PERSON_AKTIV_ZOO.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\link3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\FLOW_Sidebar_Search_aktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -325,11 +340,8 @@
..\Resources\actions_addcircled1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\documentproperties.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- ..\Resources\FLOW_Sidebar_Task_inaktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\ZooFlow_G_DevExpress.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
..\Resources\1_LOGO_ZOO_FLOW.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -349,8 +361,8 @@
..\Resources\markcomplete.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\ZooFlow_G_DevExpress.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\new4.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
..\Resources\save6.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -370,15 +382,15 @@
..\Resources\bell_delete.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
- ..\Resources\ZooFlow_drop.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
..\Resources\GLOBIX_short.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
..\Resources\Hamburger_icon.svg.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\link.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\actions_database.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -397,6 +409,9 @@
..\Resources\managedatasource1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\Checked-outforEdit_Color_13297.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\ZOOFLOW_DRAG_NORMAL.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -421,8 +436,8 @@
..\Resources\definednameuseinformula1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\properties.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\unlink.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
..\Resources\2_LUPE_INAKTIV_ZOO.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -442,9 +457,6 @@
..\Resources\del5.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\actions_edit1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
..\Resources\new1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -481,12 +493,15 @@
..\Resources\doublenext2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\Compare_RefreshScriptPreview.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\properties.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
..\Resources\new3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\actions_deletecircled3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\actions_check.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -496,6 +511,12 @@
..\Resources\StatusAnnotations_Stop_16xLG_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\actions_calendar1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ ..\Resources\switchrowcolumns.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\actions_deletecircled5.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -505,6 +526,15 @@
..\Resources\ZOOFLOW_DRAG_PROGRESSIVE.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\documentproperties.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ ..\Resources\StatusAnnotations_Information_16xLG_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\Compare_RefreshScriptPreview.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\actions_addcircled4.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -514,6 +544,9 @@
..\Resources\save2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\save8.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\save9.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -529,6 +562,9 @@
..\Resources\ZooFlow_Sidebar_individuelle_suche.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\actions_calendar.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
..\Resources\bo_appointment.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -538,20 +574,20 @@
..\Resources\new2.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\1_LOGO_ZOO_FLOW1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\FLOW_Sidebar_Task_inaktiv1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
..\Resources\ZooFlow_PM_DevExpress.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\StatusAnnotations_Information_16xLG_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\actions_edit1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
..\Resources\del.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\gear_32xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\unlink1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
..\Resources\managedatasource3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -562,8 +598,8 @@
..\Resources\doublenext1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\Checked-outforEdit_Color_13297.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\ZooFlow_drop.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
..\Resources\about4.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -574,8 +610,8 @@
..\Resources\bo_document.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\save8.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\bo_category.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
..\Resources\servermode.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -592,6 +628,9 @@
..\Resources\actions_addcircled3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\1_LOGO_ZOO_FLOW1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\actions_window.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
@@ -601,7 +640,7 @@
..\Resources\del3.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- ..\Resources\switchrowcolumns.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ ..\Resources\bo_category1.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/actions_calendar.svg b/GUIs.ZooFlow/Resources/actions_calendar.svg
new file mode 100644
index 00000000..dc313d67
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/actions_calendar.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/actions_calendar1.svg b/GUIs.ZooFlow/Resources/actions_calendar1.svg
new file mode 100644
index 00000000..dc313d67
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/actions_calendar1.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/bo_category.svg b/GUIs.ZooFlow/Resources/bo_category.svg
new file mode 100644
index 00000000..9dc9c0d9
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/bo_category.svg
@@ -0,0 +1,30 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/bo_category1.svg b/GUIs.ZooFlow/Resources/bo_category1.svg
new file mode 100644
index 00000000..9dc9c0d9
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/bo_category1.svg
@@ -0,0 +1,30 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/link.svg b/GUIs.ZooFlow/Resources/link.svg
new file mode 100644
index 00000000..c26123df
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/link.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/link1.svg b/GUIs.ZooFlow/Resources/link1.svg
new file mode 100644
index 00000000..c26123df
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/link1.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/link2.svg b/GUIs.ZooFlow/Resources/link2.svg
new file mode 100644
index 00000000..c26123df
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/link2.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/link3.svg b/GUIs.ZooFlow/Resources/link3.svg
new file mode 100644
index 00000000..c26123df
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/link3.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/new4.svg b/GUIs.ZooFlow/Resources/new4.svg
new file mode 100644
index 00000000..4a85a96a
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/new4.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/unlink.svg b/GUIs.ZooFlow/Resources/unlink.svg
new file mode 100644
index 00000000..448a01b8
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/unlink.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/unlink1.svg b/GUIs.ZooFlow/Resources/unlink1.svg
new file mode 100644
index 00000000..448a01b8
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/unlink1.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/viewmergeddata.svg b/GUIs.ZooFlow/Resources/viewmergeddata.svg
new file mode 100644
index 00000000..fb703d38
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/viewmergeddata.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Resources/viewmergeddata1.svg b/GUIs.ZooFlow/Resources/viewmergeddata1.svg
new file mode 100644
index 00000000..fb703d38
--- /dev/null
+++ b/GUIs.ZooFlow/Resources/viewmergeddata1.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Search/SearchRunner.vb b/GUIs.ZooFlow/Search/SearchRunner.vb
index 2c50a74b..dd8572df 100644
--- a/GUIs.ZooFlow/Search/SearchRunner.vb
+++ b/GUIs.ZooFlow/Search/SearchRunner.vb
@@ -30,6 +30,11 @@ Public Class SearchRunner
Undefined
End Enum
+ Public Enum TokenOperator
+ [And]
+ [Or]
+ End Enum
+
Public Event NeedsRefresh As EventHandler(Of Integer)
Public Event Closed As EventHandler(Of Integer)
@@ -41,6 +46,8 @@ Public Class SearchRunner
End Property
Private _ActiveDateAttribute As String = SEARCH_FACT_DATE_DEFAULT
+ Private _ActiveTokenOperator As TokenOperator = TokenOperator.And
+
Public ReadOnly Property ActiveDateAttribute As String
Get
Return _ActiveDateAttribute
@@ -151,7 +158,7 @@ Public Class SearchRunner
End If
End Function
- Private Async Function InsertSearchTokens(pTokens As IEnumerable(Of Search.SearchToken.AttributeValueToken)) As Task
+ Private Async Function InsertSearchTokens(pTokens As IEnumerable(Of Search.SearchToken.Token)) As Task
Logger.Debug("Deleting previous user tokens..")
Await My.Database.ExecuteNonQueryIDBAsync($"DELETE FROM TBIDB_SEARCH_INPUT_USER WHERE USR_ID = {UserId}")
@@ -165,10 +172,20 @@ Public Class SearchRunner
Exit Function
End If
+ Dim oOperatorString
+
+ Select Case _ActiveTokenOperator
+ Case TokenOperator.Or
+ oOperatorString = "OR"
+ Case Else
+ oOperatorString = "AND"
+ End Select
+
+
For Each oToken In pTokens
Dim oSQLInsert As String = $"
INSERT INTO [dbo].[TBIDB_SEARCH_INPUT_USER] ([USR_ID], [ATTR_ID], [ATTR_TITLE], [TERM_ID], [OPERATOR])
- VALUES ({UserId}, {oToken.AttributeId}, '{oToken.AttributeTitle}', {oToken.TermId}, 'AND')"
+ VALUES ({UserId}, {oToken.AttributeId}, '{oToken.AttributeTitle}', {oToken.TermId}, '{oOperatorString}')"
Dim oResult = Await My.Database.ExecuteNonQueryIDBAsync(oSQLInsert)
Logger.Warn("Inserting Tokens failed!")
@@ -248,6 +265,10 @@ Public Class SearchRunner
_ActiveDateConstraint = DateConstraintToConstant(pConstraint)
End Sub
+ Public Sub SetTokenOperator(pOperator As TokenOperator)
+ _ActiveTokenOperator = pOperator
+ End Sub
+
Public Function DateConstraintToConstant(pConstraint As DateConstraint) As String
Select Case pConstraint
Case DateConstraint.Today
diff --git a/GUIs.ZooFlow/Search/Test/SearchToken.vb b/GUIs.ZooFlow/Search/SearchToken.vb
similarity index 56%
rename from GUIs.ZooFlow/Search/Test/SearchToken.vb
rename to GUIs.ZooFlow/Search/SearchToken.vb
index c3b3cc58..702f9423 100644
--- a/GUIs.ZooFlow/Search/Test/SearchToken.vb
+++ b/GUIs.ZooFlow/Search/SearchToken.vb
@@ -1,11 +1,31 @@
Namespace Search
Public Class SearchToken
- Public Class AttributeValueToken
+ Public Class Token
Public AttributeTitle As String
Public AttributeId As Integer
Public TermValue As String
Public TermId As Integer
+ End Class
+
+ Public Class ValueOnlyToken
+ Inherits Token
+
+ Public Overrides Function GetHashCode() As Integer
+ Return TermId.GetHashCode
+ End Function
+
+ Public Overrides Function Equals(obj As Object) As Boolean
+ Return GetHashCode() = DirectCast(obj, ValueOnlyToken).GetHashCode()
+ End Function
+
+ Public Overrides Function ToString() As String
+ Return TermValue
+ End Function
+ End Class
+
+ Public Class AttributeValueToken
+ Inherits Token
Public Overrides Function GetHashCode() As Integer
Return (TermId.GetHashCode & AttributeId.GetHashCode).GetHashCode()
diff --git a/GUIs.ZooFlow/Search/Test/SearchFilter.vb b/GUIs.ZooFlow/Search/Test/SearchFilter.vb
index de768ada..1848518f 100644
--- a/GUIs.ZooFlow/Search/Test/SearchFilter.vb
+++ b/GUIs.ZooFlow/Search/Test/SearchFilter.vb
@@ -2,25 +2,25 @@
Public Class SearchFilter
Public Shared Property DefaultFilters As New List(Of FilterTimeframe) From {
- New FilterTimeframe() With {.Name = "Kein", .DisableFilter = True, .[To] = Nothing},
- New FilterTimeframe() With {.Name = "Eigener", .CustomFilter = True, .[To] = Date.Now, .From = Date.Now},
- New FilterTimeframe() With {
- .Name = "letzte 7 Tage",
- .From = Date.Now.Subtract(TimeSpan.FromDays(7))
- },
- New FilterTimeframe() With {
- .Name = "letzte 14 Tage",
- .From = Date.Now.Subtract(TimeSpan.FromDays(14))
- },
- New FilterTimeframe() With {
- .Name = "letzte 30 Tage",
- .From = Date.Now.Subtract(TimeSpan.FromDays(30))
- },
- New FilterTimeframe() With {
- .Name = "aktueller Monat",
- .From = New Date(Now.Year, Now.Month, 1)
+ New FilterTimeframe() With {.Name = "Kein", .DisableFilter = True, .[To] = Nothing},
+ New FilterTimeframe() With {.Name = "Eigener", .CustomFilter = True, .[To] = Date.Now, .From = Date.Now},
+ New FilterTimeframe() With {
+ .Name = "letzte 7 Tage",
+ .From = Date.Now.Subtract(TimeSpan.FromDays(7))
+ },
+ New FilterTimeframe() With {
+ .Name = "letzte 14 Tage",
+ .From = Date.Now.Subtract(TimeSpan.FromDays(14))
+ },
+ New FilterTimeframe() With {
+ .Name = "letzte 30 Tage",
+ .From = Date.Now.Subtract(TimeSpan.FromDays(30))
+ },
+ New FilterTimeframe() With {
+ .Name = "aktueller Monat",
+ .From = New Date(Now.Year, Now.Month, 1)
+ }
}
- }
Public Class FilterTimeframe
Public Property Name As String
diff --git a/GUIs.ZooFlow/Search/frmFlowSearch2.Designer.vb b/GUIs.ZooFlow/Search/frmFlowSearch2.Designer.vb
index d4aa66a6..74ee67f2 100644
--- a/GUIs.ZooFlow/Search/frmFlowSearch2.Designer.vb
+++ b/GUIs.ZooFlow/Search/frmFlowSearch2.Designer.vb
@@ -39,12 +39,15 @@ Partial Class frmFlowSearch2
Me.colDescription = New DevExpress.XtraGrid.Columns.TileViewColumn()
Me.colImage = New DevExpress.XtraGrid.Columns.TileViewColumn()
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
- Me.chkFulltext = New DevExpress.XtraBars.BarToggleSwitchItem()
Me.lblResults = New DevExpress.XtraBars.BarStaticItem()
- Me.chkDateFilter = New DevExpress.XtraBars.BarToggleSwitchItem()
+ Me.chkOperatorAnd = New DevExpress.XtraBars.BarCheckItem()
+ Me.chkOperatorOr = New DevExpress.XtraBars.BarCheckItem()
+ Me.chkDatefilter2 = New DevExpress.XtraBars.BarCheckItem()
+ Me.BarCheckItem4 = New DevExpress.XtraBars.BarCheckItem()
+ Me.chkSearchEverywhere = New DevExpress.XtraBars.BarCheckItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
- Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
+ Me.RibbonPageGroup5 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RepositoryItemMarqueeProgressBar1 = New DevExpress.XtraEditors.Repository.RepositoryItemMarqueeProgressBar()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
@@ -76,8 +79,6 @@ Partial Class frmFlowSearch2
Me.LayoutControlItem5 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem7 = New DevExpress.XtraLayout.LayoutControlItem()
Me.SvgImageCollection1 = New DevExpress.Utils.SvgImageCollection(Me.components)
- Me.chkIgnoreAttributes = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
- Me.BarToggleSwitchItem1 = New DevExpress.XtraBars.BarToggleSwitchItem()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RepositoryItemMarqueeProgressBar1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.PanelControl1, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -141,30 +142,21 @@ Partial Class frmFlowSearch2
'RibbonControl1
'
Me.RibbonControl1.ColorScheme = DevExpress.XtraBars.Ribbon.RibbonControlColorScheme.Green
- Me.RibbonControl1.CommandLayout = DevExpress.XtraBars.Ribbon.CommandLayout.Simplified
Me.RibbonControl1.ExpandCollapseItem.Id = 0
- Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.chkFulltext, Me.lblResults, Me.chkDateFilter, Me.BarToggleSwitchItem1})
+ Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.lblResults, Me.chkOperatorAnd, Me.chkOperatorOr, Me.chkDatefilter2, Me.BarCheckItem4, Me.chkSearchEverywhere})
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
- Me.RibbonControl1.MaxItemId = 6
+ Me.RibbonControl1.MaxItemId = 21
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
Me.RibbonControl1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemMarqueeProgressBar1})
Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
Me.RibbonControl1.ShowDisplayOptionsMenuButton = DevExpress.Utils.DefaultBoolean.[False]
- Me.RibbonControl1.ShowExpandCollapseButton = DevExpress.Utils.DefaultBoolean.[False]
- Me.RibbonControl1.ShowPageHeadersMode = DevExpress.XtraBars.Ribbon.ShowPageHeadersMode.Hide
+ Me.RibbonControl1.ShowPageHeadersMode = DevExpress.XtraBars.Ribbon.ShowPageHeadersMode.Show
Me.RibbonControl1.ShowToolbarCustomizeItem = False
- Me.RibbonControl1.Size = New System.Drawing.Size(954, 63)
+ Me.RibbonControl1.Size = New System.Drawing.Size(954, 158)
Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1
Me.RibbonControl1.Toolbar.ShowCustomizeItem = False
'
- 'chkFulltext
- '
- Me.chkFulltext.Caption = "Volltext durchsuchen"
- Me.chkFulltext.Enabled = False
- Me.chkFulltext.Id = 1
- Me.chkFulltext.Name = "chkFulltext"
- '
'lblResults
'
Me.lblResults.Caption = "Noch keine Ergebnisse"
@@ -173,29 +165,66 @@ Partial Class frmFlowSearch2
Me.lblResults.ItemAppearance.Normal.Options.UseFont = True
Me.lblResults.Name = "lblResults"
'
- 'chkDateFilter
+ 'chkOperatorAnd
'
- Me.chkDateFilter.Caption = "Datumfilter anzeigen"
- Me.chkDateFilter.Id = 3
- Me.chkDateFilter.Name = "chkDateFilter"
+ Me.chkOperatorAnd.BindableChecked = True
+ Me.chkOperatorAnd.Caption = "UND Verknüpfung"
+ Me.chkOperatorAnd.Checked = True
+ Me.chkOperatorAnd.GroupIndex = 1
+ Me.chkOperatorAnd.Id = 16
+ Me.chkOperatorAnd.ImageOptions.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.link3
+ Me.chkOperatorAnd.Name = "chkOperatorAnd"
+ '
+ 'chkOperatorOr
+ '
+ Me.chkOperatorOr.Caption = "ODER Verknüpfung"
+ Me.chkOperatorOr.GroupIndex = 1
+ Me.chkOperatorOr.Id = 17
+ Me.chkOperatorOr.ImageOptions.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.unlink1
+ Me.chkOperatorOr.Name = "chkOperatorOr"
+ '
+ 'chkDatefilter2
+ '
+ Me.chkDatefilter2.Caption = "Datumsfilter anzeigen"
+ Me.chkDatefilter2.Id = 18
+ Me.chkDatefilter2.ImageOptions.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.actions_calendar1
+ Me.chkDatefilter2.Name = "chkDatefilter2"
+ '
+ 'BarCheckItem4
+ '
+ Me.BarCheckItem4.Caption = "Volltext durchsuchen"
+ Me.BarCheckItem4.Enabled = False
+ Me.BarCheckItem4.Id = 19
+ Me.BarCheckItem4.ImageOptions.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.viewmergeddata1
+ Me.BarCheckItem4.Name = "BarCheckItem4"
+ '
+ 'chkSearchEverywhere
+ '
+ Me.chkSearchEverywhere.Caption = "Prozessübergreifend suchen"
+ Me.chkSearchEverywhere.Id = 20
+ Me.chkSearchEverywhere.ImageOptions.SvgImage = Global.DigitalData.GUIs.ZooFlow.My.Resources.Resources.bo_category1
+ Me.chkSearchEverywhere.Name = "chkSearchEverywhere"
'
'RibbonPage1
'
- Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup2, Me.RibbonPageGroup1, Me.chkIgnoreAttributes})
+ Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup2, Me.RibbonPageGroup5})
Me.RibbonPage1.Name = "RibbonPage1"
- Me.RibbonPage1.Text = "Start"
+ Me.RibbonPage1.Text = "Suche"
'
'RibbonPageGroup2
'
- Me.RibbonPageGroup2.ItemLinks.Add(Me.chkFulltext)
+ Me.RibbonPageGroup2.ItemLinks.Add(Me.BarCheckItem4)
+ Me.RibbonPageGroup2.ItemLinks.Add(Me.chkSearchEverywhere)
+ Me.RibbonPageGroup2.ItemLinks.Add(Me.chkDatefilter2)
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
- Me.RibbonPageGroup2.Text = "RibbonPageGroup2"
+ Me.RibbonPageGroup2.Text = "Sucheinstellungen"
'
- 'RibbonPageGroup1
+ 'RibbonPageGroup5
'
- Me.RibbonPageGroup1.ItemLinks.Add(Me.chkDateFilter)
- Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
- Me.RibbonPageGroup1.Text = "RibbonPageGroup1"
+ Me.RibbonPageGroup5.ItemLinks.Add(Me.chkOperatorAnd)
+ Me.RibbonPageGroup5.ItemLinks.Add(Me.chkOperatorOr)
+ Me.RibbonPageGroup5.Name = "RibbonPageGroup5"
+ Me.RibbonPageGroup5.Text = "Begriffsverknüpfung"
'
'RepositoryItemMarqueeProgressBar1
'
@@ -219,10 +248,10 @@ Partial Class frmFlowSearch2
'
Me.PanelControl1.Controls.Add(Me.PanelControl2)
Me.PanelControl1.Dock = System.Windows.Forms.DockStyle.Fill
- Me.PanelControl1.Location = New System.Drawing.Point(0, 63)
+ Me.PanelControl1.Location = New System.Drawing.Point(0, 158)
Me.PanelControl1.Name = "PanelControl1"
Me.PanelControl1.Padding = New System.Windows.Forms.Padding(30)
- Me.PanelControl1.Size = New System.Drawing.Size(954, 576)
+ Me.PanelControl1.Size = New System.Drawing.Size(954, 481)
Me.PanelControl1.TabIndex = 3
'
'PanelControl2
@@ -232,7 +261,7 @@ Partial Class frmFlowSearch2
Me.PanelControl2.Location = New System.Drawing.Point(32, 32)
Me.PanelControl2.Margin = New System.Windows.Forms.Padding(0)
Me.PanelControl2.Name = "PanelControl2"
- Me.PanelControl2.Size = New System.Drawing.Size(890, 512)
+ Me.PanelControl2.Size = New System.Drawing.Size(890, 417)
Me.PanelControl2.TabIndex = 3
'
'LayoutControl1
@@ -252,7 +281,7 @@ Partial Class frmFlowSearch2
Me.LayoutControl1.OptionsView.GroupStyle = DevExpress.Utils.GroupStyle.Title
Me.LayoutControl1.OptionsView.ItemBorderColor = System.Drawing.Color.Transparent
Me.LayoutControl1.Root = Me.Root
- Me.LayoutControl1.Size = New System.Drawing.Size(886, 508)
+ Me.LayoutControl1.Size = New System.Drawing.Size(886, 413)
Me.LayoutControl1.TabIndex = 0
Me.LayoutControl1.Text = "LayoutControl1"
'
@@ -273,7 +302,7 @@ Partial Class frmFlowSearch2
'
'TextEdit1
'
- Me.TextEdit1.Location = New System.Drawing.Point(0, 284)
+ Me.TextEdit1.Location = New System.Drawing.Point(0, 202)
Me.TextEdit1.MenuManager = Me.RibbonControl1
Me.TextEdit1.Name = "TextEdit1"
Me.TextEdit1.Properties.Appearance.Font = New System.Drawing.Font("Segoe UI", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
@@ -293,7 +322,7 @@ Partial Class frmFlowSearch2
Me.GridPredefinedSearches.MainView = Me.TileView1
Me.GridPredefinedSearches.MenuManager = Me.RibbonControl1
Me.GridPredefinedSearches.Name = "GridPredefinedSearches"
- Me.GridPredefinedSearches.Size = New System.Drawing.Size(858, 178)
+ Me.GridPredefinedSearches.Size = New System.Drawing.Size(858, 96)
Me.GridPredefinedSearches.TabIndex = 1
Me.GridPredefinedSearches.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.TileView1, Me.GridView1})
'
@@ -356,7 +385,7 @@ Partial Class frmFlowSearch2
'
'RadioGroupDateConstraints
'
- Me.RadioGroupDateConstraints.Location = New System.Drawing.Point(4, 372)
+ Me.RadioGroupDateConstraints.Location = New System.Drawing.Point(4, 290)
Me.RadioGroupDateConstraints.MenuManager = Me.RibbonControl1
Me.RadioGroupDateConstraints.Name = "RadioGroupDateConstraints"
Me.RadioGroupDateConstraints.Properties.Appearance.BackColor = System.Drawing.SystemColors.Control
@@ -364,14 +393,14 @@ Partial Class frmFlowSearch2
Me.RadioGroupDateConstraints.Properties.Columns = 2
Me.RadioGroupDateConstraints.Properties.ItemHorzAlignment = DevExpress.XtraEditors.RadioItemHorzAlignment.Near
Me.RadioGroupDateConstraints.Properties.ItemsLayout = DevExpress.XtraEditors.RadioGroupItemsLayout.Flow
- Me.RadioGroupDateConstraints.Size = New System.Drawing.Size(615, 132)
+ Me.RadioGroupDateConstraints.Size = New System.Drawing.Size(615, 119)
Me.RadioGroupDateConstraints.StyleController = Me.LayoutControl1
Me.RadioGroupDateConstraints.TabIndex = 4
'
'DateEditFrom
'
Me.DateEditFrom.EditValue = Nothing
- Me.DateEditFrom.Location = New System.Drawing.Point(724, 375)
+ Me.DateEditFrom.Location = New System.Drawing.Point(724, 293)
Me.DateEditFrom.MenuManager = Me.RibbonControl1
Me.DateEditFrom.Name = "DateEditFrom"
Me.DateEditFrom.Properties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)})
@@ -383,7 +412,7 @@ Partial Class frmFlowSearch2
'DateEditTo
'
Me.DateEditTo.EditValue = Nothing
- Me.DateEditTo.Location = New System.Drawing.Point(724, 428)
+ Me.DateEditTo.Location = New System.Drawing.Point(724, 346)
Me.DateEditTo.MenuManager = Me.RibbonControl1
Me.DateEditTo.Name = "DateEditTo"
Me.DateEditTo.Properties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)})
@@ -394,7 +423,7 @@ Partial Class frmFlowSearch2
'
'CheckEdit1
'
- Me.CheckEdit1.Location = New System.Drawing.Point(627, 402)
+ Me.CheckEdit1.Location = New System.Drawing.Point(627, 320)
Me.CheckEdit1.MenuManager = Me.RibbonControl1
Me.CheckEdit1.Name = "CheckEdit1"
Me.CheckEdit1.Properties.OffText = "Datum bis deaktiviert"
@@ -405,7 +434,7 @@ Partial Class frmFlowSearch2
'
'ComboBoxDateAttributes
'
- Me.ComboBoxDateAttributes.Location = New System.Drawing.Point(724, 458)
+ Me.ComboBoxDateAttributes.Location = New System.Drawing.Point(724, 376)
Me.ComboBoxDateAttributes.MenuManager = Me.RibbonControl1
Me.ComboBoxDateAttributes.Name = "ComboBoxDateAttributes"
Me.ComboBoxDateAttributes.Properties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)})
@@ -420,7 +449,7 @@ Partial Class frmFlowSearch2
Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlGroupDate1, Me.LayoutControlGroupDate2, Me.LayoutControlGroup3, Me.LayoutControlItem5, Me.LayoutControlItem7})
Me.Root.Name = "Root"
Me.Root.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
- Me.Root.Size = New System.Drawing.Size(886, 508)
+ Me.Root.Size = New System.Drawing.Size(886, 413)
Me.Root.TextVisible = False
'
'LayoutControlGroupDate1
@@ -433,10 +462,10 @@ Partial Class frmFlowSearch2
Me.LayoutControlGroupDate1.BestFitWeight = 0
Me.LayoutControlGroupDate1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[False]
Me.LayoutControlGroupDate1.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem1})
- Me.LayoutControlGroupDate1.Location = New System.Drawing.Point(0, 328)
+ Me.LayoutControlGroupDate1.Location = New System.Drawing.Point(0, 246)
Me.LayoutControlGroupDate1.Name = "LayoutControlGroupDate1"
Me.LayoutControlGroupDate1.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
- Me.LayoutControlGroupDate1.Size = New System.Drawing.Size(623, 180)
+ Me.LayoutControlGroupDate1.Size = New System.Drawing.Size(623, 167)
Me.LayoutControlGroupDate1.Spacing = New DevExpress.XtraLayout.Utils.Padding(2, 2, 20, 2)
Me.LayoutControlGroupDate1.Text = "Datums Einschränkung"
Me.LayoutControlGroupDate1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
@@ -446,7 +475,7 @@ Partial Class frmFlowSearch2
Me.LayoutControlItem1.Control = Me.RadioGroupDateConstraints
Me.LayoutControlItem1.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem1.Name = "LayoutControlItem1"
- Me.LayoutControlItem1.Size = New System.Drawing.Size(619, 136)
+ Me.LayoutControlItem1.Size = New System.Drawing.Size(619, 123)
Me.LayoutControlItem1.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem1.TextVisible = False
'
@@ -458,10 +487,10 @@ Partial Class frmFlowSearch2
Me.LayoutControlGroupDate2.AppearanceGroup.Options.UseBorderColor = True
Me.LayoutControlGroupDate2.BestFitWeight = 0
Me.LayoutControlGroupDate2.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem2, Me.LayoutControlItem4, Me.EmptySpaceItem1, Me.LayoutControlItem6, Me.LayoutControlItem8})
- Me.LayoutControlGroupDate2.Location = New System.Drawing.Point(623, 328)
+ Me.LayoutControlGroupDate2.Location = New System.Drawing.Point(623, 246)
Me.LayoutControlGroupDate2.Name = "LayoutControlGroupDate2"
Me.LayoutControlGroupDate2.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
- Me.LayoutControlGroupDate2.Size = New System.Drawing.Size(263, 180)
+ Me.LayoutControlGroupDate2.Size = New System.Drawing.Size(263, 167)
Me.LayoutControlGroupDate2.Spacing = New DevExpress.XtraLayout.Utils.Padding(2, 2, 20, 2)
Me.LayoutControlGroupDate2.Text = "Eigenes Datum"
Me.LayoutControlGroupDate2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
@@ -492,7 +521,7 @@ Partial Class frmFlowSearch2
Me.EmptySpaceItem1.AllowHotTrack = False
Me.EmptySpaceItem1.Location = New System.Drawing.Point(0, 113)
Me.EmptySpaceItem1.Name = "EmptySpaceItem1"
- Me.EmptySpaceItem1.Size = New System.Drawing.Size(259, 23)
+ Me.EmptySpaceItem1.Size = New System.Drawing.Size(259, 10)
Me.EmptySpaceItem1.TextSize = New System.Drawing.Size(0, 0)
'
'LayoutControlItem6
@@ -521,7 +550,7 @@ Partial Class frmFlowSearch2
Me.LayoutControlGroup3.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem3})
Me.LayoutControlGroup3.Location = New System.Drawing.Point(0, 56)
Me.LayoutControlGroup3.Name = "LayoutControlGroup3"
- Me.LayoutControlGroup3.Size = New System.Drawing.Size(886, 228)
+ Me.LayoutControlGroup3.Size = New System.Drawing.Size(886, 146)
Me.LayoutControlGroup3.Text = "Meine Suchen"
'
'LayoutControlItem3
@@ -529,7 +558,7 @@ Partial Class frmFlowSearch2
Me.LayoutControlItem3.Control = Me.GridPredefinedSearches
Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem3.Name = "LayoutControlItem3"
- Me.LayoutControlItem3.Size = New System.Drawing.Size(862, 182)
+ Me.LayoutControlItem3.Size = New System.Drawing.Size(862, 100)
Me.LayoutControlItem3.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem3.TextVisible = False
'
@@ -537,7 +566,7 @@ Partial Class frmFlowSearch2
'
Me.LayoutControlItem5.BestFitWeight = 0
Me.LayoutControlItem5.Control = Me.TextEdit1
- Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 284)
+ Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 202)
Me.LayoutControlItem5.Name = "LayoutControlItem5"
Me.LayoutControlItem5.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
Me.LayoutControlItem5.Size = New System.Drawing.Size(886, 44)
@@ -557,21 +586,11 @@ Partial Class frmFlowSearch2
'
'SvgImageCollection1
'
- Me.SvgImageCollection1.Add("day", "image://svgimages/scheduling/dayview.svg")
+ Me.SvgImageCollection1.Add("yesterday", "image://svgimages/scheduling/dayview.svg")
Me.SvgImageCollection1.Add("month", "image://svgimages/scheduling/monthview.svg")
Me.SvgImageCollection1.Add("week", "image://svgimages/scheduling/next7days.svg")
- '
- 'chkIgnoreAttributes
- '
- Me.chkIgnoreAttributes.ItemLinks.Add(Me.BarToggleSwitchItem1)
- Me.chkIgnoreAttributes.Name = "chkIgnoreAttributes"
- Me.chkIgnoreAttributes.Text = "RibbonPageGroup3"
- '
- 'BarToggleSwitchItem1
- '
- Me.BarToggleSwitchItem1.Caption = "Prozessübergreifend suchen"
- Me.BarToggleSwitchItem1.Id = 5
- Me.BarToggleSwitchItem1.Name = "BarToggleSwitchItem1"
+ Me.SvgImageCollection1.Add("year", "image://svgimages/scheduling/groupbynone.svg")
+ Me.SvgImageCollection1.Add("today", "image://svgimages/scheduling/today.svg")
'
'frmFlowSearch2
'
@@ -654,11 +673,7 @@ Partial Class frmFlowSearch2
Friend WithEvents LayoutControlItem5 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents CheckEdit1 As DevExpress.XtraEditors.ToggleSwitch
Friend WithEvents LayoutControlItem6 As DevExpress.XtraLayout.LayoutControlItem
- Friend WithEvents chkFulltext As DevExpress.XtraBars.BarToggleSwitchItem
- Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents lblResults As DevExpress.XtraBars.BarStaticItem
- Friend WithEvents chkDateFilter As DevExpress.XtraBars.BarToggleSwitchItem
- Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RepositoryItemMarqueeProgressBar1 As DevExpress.XtraEditors.Repository.RepositoryItemMarqueeProgressBar
Friend WithEvents SvgImageCollection1 As DevExpress.Utils.SvgImageCollection
Friend WithEvents colImage As DevExpress.XtraGrid.Columns.TileViewColumn
@@ -666,6 +681,11 @@ Partial Class frmFlowSearch2
Friend WithEvents LayoutControlItem7 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents ComboBoxDateAttributes As DevExpress.XtraEditors.ComboBoxEdit
Friend WithEvents LayoutControlItem8 As DevExpress.XtraLayout.LayoutControlItem
- Friend WithEvents BarToggleSwitchItem1 As DevExpress.XtraBars.BarToggleSwitchItem
- Friend WithEvents chkIgnoreAttributes As DevExpress.XtraBars.Ribbon.RibbonPageGroup
+ Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
+ Friend WithEvents chkOperatorAnd As DevExpress.XtraBars.BarCheckItem
+ Friend WithEvents chkOperatorOr As DevExpress.XtraBars.BarCheckItem
+ Friend WithEvents chkDatefilter2 As DevExpress.XtraBars.BarCheckItem
+ Friend WithEvents BarCheckItem4 As DevExpress.XtraBars.BarCheckItem
+ Friend WithEvents chkSearchEverywhere As DevExpress.XtraBars.BarCheckItem
+ Friend WithEvents RibbonPageGroup5 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
End Class
diff --git a/GUIs.ZooFlow/Search/frmFlowSearch2.vb b/GUIs.ZooFlow/Search/frmFlowSearch2.vb
index 97cffeb3..18069798 100644
--- a/GUIs.ZooFlow/Search/frmFlowSearch2.vb
+++ b/GUIs.ZooFlow/Search/frmFlowSearch2.vb
@@ -16,51 +16,46 @@ Public Class frmFlowSearch2
Private ReadOnly Logger = My.LogConfig.GetLogger()
Private SearchRunner As SearchRunner
+ Private TokenTable As DataTable = Nothing
+ Private FormLoading As Boolean = True
+
Private TokenListDefault As New Dictionary(Of String, Object)
Private TokenListOperands As New Dictionary(Of String, Object)
Private TokenListAttrValues As New Dictionary(Of String, Object)
Private Sub frmFlowSearch2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
+
SearchRunner = New SearchRunner(My.LogConfig, My.Application.GetEnvironment, "FlowSearch") With {
- .BaseSearchSQL = LoadBaseSQL()
+ .BaseSearchSQL = SQL_FLOW_SEARCH_BASE
}
-
+ TokenTable = GetTokenTable()
RadioGroupDateConstraints.Properties.Items.AddRange(LoadDateConstraints().ToArray)
ComboBoxDateAttributes.Properties.Items.AddRange(LoadDateAttributes())
GridPredefinedSearches.DataSource = LoadPredefinedSearches()
-
- Dim oTokens = GetValueTokensForAttribute()
+ Dim oTokens = GetTokensFromTable(Of AttributeValueToken)(TokenTable)
AddTokens(TokenEditEx1, oTokens)
+
+ FormLoading = False
End Sub
- Private Function LoadBaseSQL() As String
- Dim oSQL = ""
-
- For Each oRow As DataRow In My.Tables.DTIDB_COMMON_SQL.Rows
- If oRow.Item("TITLE") = SQLCMD_FLOW_SEARCH_BASE Then
- oSQL = oRow.Item("SQL_COMMAND")
- oSQL = oSQL.Replace("@USER_ID", My.Application.User.UserId)
- oSQL = oSQL.Replace("@LANG_CODE", My.Application.User.Language)
- End If
- Next
-
- Return oSQL
- End Function
-
- Public Function GetValueTokensForAttribute() As List(Of AttributeValueToken)
+ Public Function GetTokenTable() As DataTable
Dim oSQL = $"EXEC PRIDB_SEARCH_AUTOSUGGEST '{My.Application.User.Language}', {My.Application.User.UserId}"
Dim oTable = My.Database.GetDatatableIDB(oSQL)
- Dim oTokens As New List(Of AttributeValueToken)
+ Return oTable
+ End Function
- For Each oRow As DataRow In oTable.Rows
+ Public Function GetTokensFromTable(Of T As {New, Token})(pTable As DataTable) As List(Of T)
+ Dim oTokens As New List(Of T)
+
+ For Each oRow As DataRow In pTable.Rows
Dim oTermValue = oRow.Item("TERM")
Dim oTermId = oRow.ItemEx("TERM_ID", 0)
Dim oAttributeTitle = oRow.Item("ATTR_TITLE")
Dim oAttributeId = oRow.ItemEx("ATTR_ID", 0)
- oTokens.Add(New AttributeValueToken() With {
+ oTokens.Add(New T() With {
.AttributeId = oAttributeId,
.AttributeTitle = oAttributeTitle,
.TermId = oTermId,
@@ -101,13 +96,13 @@ Public Class frmFlowSearch2
.Name = "Heute",
.Description = "Dokumente, die heute abgelegt wurden",
.DateConstraint = SearchRunner.DateConstraint.Today,
- .Image = SvgImageCollection1.Item("day")
+ .Image = SvgImageCollection1.Item("today")
},
New PredefinedDateSearch() With {
.Name = "Gestern",
.Description = "Dokumente, die gestern abgelegt wurden",
.DateConstraint = SearchRunner.DateConstraint.Yesterday,
- .Image = SvgImageCollection1.Item("day")
+ .Image = SvgImageCollection1.Item("yesterday")
},
New PredefinedDateSearch() With {
.Name = "Letzte Woche",
@@ -126,13 +121,25 @@ Public Class frmFlowSearch2
.Description = "Dokumente, die im letzten Monat abgelegt wurden",
.DateConstraint = SearchRunner.DateConstraint.LastMonth,
.Image = SvgImageCollection1.Item("month")
+ },
+ New PredefinedDateSearch() With {
+ .Name = "Dieses Jahr",
+ .Description = "Dokumente, die in diesem Jahr abgelegt wurden",
+ .DateConstraint = SearchRunner.DateConstraint.CurrentYear,
+ .Image = SvgImageCollection1.Item("year")
+ },
+ New PredefinedDateSearch() With {
+ .Name = "Letztes Jahr",
+ .Description = "Dokumente, die im letzten Jahr abgelegt wurden",
+ .DateConstraint = SearchRunner.DateConstraint.LastYear,
+ .Image = SvgImageCollection1.Item("year")
}
}
End Function
Private Function GetTokens() As IEnumerable(Of AttributeValueToken)
Dim oTokens = TokenEditEx1.GetTokenList()
- Return oTokens.Select(Of AttributeValueToken)(Function(token) token.Value)
+ Return oTokens.Select(Of AttributeValueToken)(Function(token) token.Value).ToList()
End Function
Private Async Sub TextEdit1_KeyUp(sender As Object, e As KeyEventArgs) Handles TextEdit1.KeyUp
@@ -156,7 +163,7 @@ Public Class frmFlowSearch2
End If
End Sub
- Private Async Function RunSearch(pTokens As IEnumerable(Of AttributeValueToken)) As Threading.Tasks.Task
+ Private Async Function RunSearch(pTokens As IEnumerable(Of Token)) As Threading.Tasks.Task
Dim oHandle = StartUpdateUI()
If pTokens.Count = 0 Then
@@ -239,7 +246,6 @@ Public Class frmFlowSearch2
' Force update of LookAndFeel
LookAndFeelHelper.ForceDefaultLookAndFeelChanged()
-
End Sub
Private Sub RadioGroup1_EditValueChanged(sender As Object, e As EventArgs) Handles RadioGroupDateConstraints.EditValueChanged
@@ -281,22 +287,12 @@ Public Class frmFlowSearch2
DateEditTo.Enabled = CheckEdit1.IsOn
End Sub
- Private Sub chkDateFilter_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles chkDateFilter.CheckedChanged
- If chkDateFilter.Checked Then
- LayoutControlGroupDate1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always
- LayoutControlGroupDate2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always
- Else
- LayoutControlGroupDate1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
- LayoutControlGroupDate2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
- End If
- End Sub
-
- Private Sub SetTokens(Editor As TokenEdit, Tokens As Dictionary(Of String, Object))
+ Private Sub SetTokens(Editor As TokenEdit, Tokens As IEnumerable(Of Token))
Editor.Properties.Tokens.Clear()
AddTokens(Editor, Tokens)
End Sub
- Private Sub AddTokens(Editor As TokenEdit, Tokens As IEnumerable(Of AttributeValueToken))
+ Private Sub AddTokens(Editor As TokenEdit, Tokens As IEnumerable(Of Token))
For Each oToken In Tokens
Dim oTokenEditToken = New TokenEditToken With {
.Description = oToken.ToString,
@@ -323,7 +319,53 @@ Public Class frmFlowSearch2
SearchRunner.SetDateAttribute(ComboBoxDateAttributes.EditValue)
End Sub
- Private Sub BarToggleSwitchItem1_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarToggleSwitchItem1.CheckedChanged
+ Private Sub TokenEditEx1_Properties_TokenAdding(sender As Object, e As TokenEditTokenAddingEventArgs) Handles TokenEditEx1.Properties.TokenAdding
+ ' Prevent adding more than two tokens for now
+ If TokenEditEx1.GetTokenList.Count >= 2 Then
+ e.Cancel = True
+ End If
+ End Sub
+
+ Private Sub BarToggleSwitchItem2_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs)
End Sub
+
+ Private Sub BarCheckItem3_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles chkDatefilter2.CheckedChanged
+ If chkDatefilter2.Checked Then
+ LayoutControlGroupDate1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always
+ LayoutControlGroupDate2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always
+ Else
+ LayoutControlGroupDate1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
+ LayoutControlGroupDate2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
+ End If
+ End Sub
+
+ Private Sub chkSearchEverywhere_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles chkSearchEverywhere.CheckedChanged
+ Dim oTokens As IEnumerable(Of Token)
+
+ If chkSearchEverywhere.Checked = True Then
+ ' Create a list of tokens that only contains every term once,
+ ' without caring about attribute names.
+ oTokens = GetTokensFromTable(Of ValueOnlyToken)(TokenTable)
+
+ Else
+ ' Create a list of tokens where every term - attribute value is present once.
+ oTokens = GetTokensFromTable(Of AttributeValueToken)(TokenTable)
+
+ End If
+
+ SetTokens(TokenEditEx1, oTokens)
+ End Sub
+
+ Private Sub chkOperatorAnd_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles chkOperatorAnd.CheckedChanged
+ If chkOperatorAnd.Checked And FormLoading = False Then
+ SearchRunner.SetTokenOperator(SearchRunner.TokenOperator.And)
+ End If
+ End Sub
+
+ Private Sub chkOperatorOr_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles chkOperatorOr.CheckedChanged
+ If chkOperatorOr.Checked And FormLoading = False Then
+ SearchRunner.SetTokenOperator(SearchRunner.TokenOperator.Or)
+ End If
+ End Sub
End Class
\ No newline at end of file
diff --git a/GUIs.ZooFlow/ZooFlow.vbproj b/GUIs.ZooFlow/ZooFlow.vbproj
index 4f40c730..6f656e73 100644
--- a/GUIs.ZooFlow/ZooFlow.vbproj
+++ b/GUIs.ZooFlow/ZooFlow.vbproj
@@ -461,7 +461,7 @@
-
+
frmAdmin_ClipboardWatcher.vb
@@ -812,7 +812,6 @@
-
@@ -1119,6 +1118,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+