ZooFlow: Easier Filter

This commit is contained in:
Jonathan Jenne
2020-11-12 16:27:01 +01:00
parent 6b4010232d
commit 3e84c7bdcb
6 changed files with 648 additions and 120 deletions

View File

@@ -44,7 +44,6 @@ Partial Class frmSearchStart
Me.RepositoryItemDateEdit2 = New DevExpress.XtraEditors.Repository.RepositoryItemDateEdit()
Me.cmbFilterTimeframe = New DevExpress.XtraBars.BarEditItem()
Me.RepositoryItemComboBox2 = New DevExpress.XtraEditors.Repository.RepositoryItemComboBox()
Me.SwitchFilter = New DevExpress.XtraBars.BarToggleSwitchItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroupProfiles = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
@@ -98,7 +97,7 @@ Partial Class frmSearchStart
'
Me.RibbonControl1.AutoSizeItems = True
Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItemNewSearch, Me.BarButtonItem2, Me.BarHeaderItem1, Me.BarEditItem1, Me.BarButtonItem1, Me.BarButtonItem3, Me.BarEditItem2, Me.BarStaticItemInfo, Me.BarButtonItem4, Me.BarStaticItem1, Me.txtFilterFrom, Me.txtFilterTo, Me.cmbFilterTimeframe, Me.SwitchFilter})
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItemNewSearch, Me.BarButtonItem2, Me.BarHeaderItem1, Me.BarEditItem1, Me.BarButtonItem1, Me.BarButtonItem3, Me.BarEditItem2, Me.BarStaticItemInfo, Me.BarButtonItem4, Me.BarStaticItem1, Me.txtFilterFrom, Me.txtFilterTo, Me.cmbFilterTimeframe})
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
Me.RibbonControl1.MaxItemId = 20
Me.RibbonControl1.Name = "RibbonControl1"
@@ -121,7 +120,6 @@ Partial Class frmSearchStart
Me.BarButtonItem2.Id = 2
Me.BarButtonItem2.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem2.Name = "BarButtonItem2"
Me.BarButtonItem2.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText
'
'BarHeaderItem1
'
@@ -232,12 +230,6 @@ Partial Class frmSearchStart
Me.RepositoryItemComboBox2.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)})
Me.RepositoryItemComboBox2.Name = "RepositoryItemComboBox2"
'
'SwitchFilter
'
Me.SwitchFilter.Caption = "Suche Filtern"
Me.SwitchFilter.Id = 18
Me.SwitchFilter.Name = "SwitchFilter"
'
'RibbonPage1
'
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroupProfiles, Me.RibbonPageGroupFilter})
@@ -250,7 +242,6 @@ Partial Class frmSearchStart
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem1)
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItemNewSearch)
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem2)
Me.RibbonPageGroup1.ItemLinks.Add(Me.SwitchFilter)
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
Me.RibbonPageGroup1.Text = "Suchfunktionen"
'
@@ -263,7 +254,6 @@ Partial Class frmSearchStart
'
'RibbonPageGroupFilter
'
Me.RibbonPageGroupFilter.Enabled = False
Me.RibbonPageGroupFilter.ItemLinks.Add(Me.cmbFilterTimeframe)
Me.RibbonPageGroupFilter.ItemLinks.Add(Me.txtFilterFrom)
Me.RibbonPageGroupFilter.ItemLinks.Add(Me.txtFilterTo)
@@ -329,6 +319,7 @@ Partial Class frmSearchStart
Me.XtraTabControl1.Dock = System.Windows.Forms.DockStyle.Fill
Me.XtraTabControl1.HeaderLocation = DevExpress.XtraTab.TabHeaderLocation.Bottom
Me.XtraTabControl1.Location = New System.Drawing.Point(0, 0)
Me.XtraTabControl1.MultiLine = DevExpress.Utils.DefaultBoolean.[False]
Me.XtraTabControl1.Name = "XtraTabControl1"
Me.XtraTabControl1.SelectedTabPage = Me.XtraTabPage1
Me.XtraTabControl1.Size = New System.Drawing.Size(1070, 363)
@@ -350,49 +341,49 @@ Partial Class frmSearchStart
'XtraTabPage3
'
Me.XtraTabPage3.Name = "XtraTabPage3"
Me.XtraTabPage3.Size = New System.Drawing.Size(748, 340)
Me.XtraTabPage3.Size = New System.Drawing.Size(1068, 340)
Me.XtraTabPage3.Text = "Search#3"
'
'XtraTabPage4
'
Me.XtraTabPage4.Name = "XtraTabPage4"
Me.XtraTabPage4.Size = New System.Drawing.Size(748, 340)
Me.XtraTabPage4.Size = New System.Drawing.Size(1068, 340)
Me.XtraTabPage4.Text = "Search#4"
'
'XtraTabPage5
'
Me.XtraTabPage5.Name = "XtraTabPage5"
Me.XtraTabPage5.Size = New System.Drawing.Size(748, 340)
Me.XtraTabPage5.Size = New System.Drawing.Size(1068, 340)
Me.XtraTabPage5.Text = "Search#5"
'
'XtraTabPage6
'
Me.XtraTabPage6.Name = "XtraTabPage6"
Me.XtraTabPage6.Size = New System.Drawing.Size(748, 340)
Me.XtraTabPage6.Size = New System.Drawing.Size(1068, 340)
Me.XtraTabPage6.Text = "Search#6"
'
'XtraTabPage7
'
Me.XtraTabPage7.Name = "XtraTabPage7"
Me.XtraTabPage7.Size = New System.Drawing.Size(748, 340)
Me.XtraTabPage7.Size = New System.Drawing.Size(1068, 340)
Me.XtraTabPage7.Text = "Search#7"
'
'XtraTabPage8
'
Me.XtraTabPage8.Name = "XtraTabPage8"
Me.XtraTabPage8.Size = New System.Drawing.Size(748, 340)
Me.XtraTabPage8.Size = New System.Drawing.Size(1068, 340)
Me.XtraTabPage8.Text = "Search#8"
'
'XtraTabPage9
'
Me.XtraTabPage9.Name = "XtraTabPage9"
Me.XtraTabPage9.Size = New System.Drawing.Size(748, 340)
Me.XtraTabPage9.Size = New System.Drawing.Size(1068, 340)
Me.XtraTabPage9.Text = "Search#9"
'
'XtraTabPage10
'
Me.XtraTabPage10.Name = "XtraTabPage10"
Me.XtraTabPage10.Size = New System.Drawing.Size(748, 340)
Me.XtraTabPage10.Size = New System.Drawing.Size(1068, 340)
Me.XtraTabPage10.Text = "Search#10"
'
'ContextMenuStripSearchTerms
@@ -527,6 +518,5 @@ End Sub
Friend WithEvents RepositoryItemDateEdit2 As DevExpress.XtraEditors.Repository.RepositoryItemDateEdit
Friend WithEvents cmbFilterTimeframe As DevExpress.XtraBars.BarEditItem
Friend WithEvents RepositoryItemComboBox2 As DevExpress.XtraEditors.Repository.RepositoryItemComboBox
Friend WithEvents SwitchFilter As DevExpress.XtraBars.BarToggleSwitchItem
Friend WithEvents RepositoryItemTimeSpanEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemTimeSpanEdit
End Class

View File

@@ -58,8 +58,8 @@ Public Class frmSearchStart
Next
RepositoryItemComboBox2.Items.AddRange(New List(Of FilterTimeframe) From {
New FilterTimeframe() With {.Name = "Alle", .From = Nothing, .[To] = Nothing},
New FilterTimeframe() With {.Name = "Eigener", .From = Nothing, .[To] = Nothing},
New FilterTimeframe() With {.Name = "Kein", .DisableFilter = True},
New FilterTimeframe() With {.Name = "Eigener", .CustomFilter = True},
New FilterTimeframe() With {
.Name = "letzte 7 Tage",
.From = Date.Now.Subtract(TimeSpan.FromDays(7)),
@@ -69,6 +69,11 @@ Public Class frmSearchStart
.Name = "letzte 14 Tage",
.From = Date.Now.Subtract(TimeSpan.FromDays(14)),
.[To] = Date.Now
},
New FilterTimeframe() With {
.Name = "letzte 30 Tage",
.From = Date.Now.Subtract(TimeSpan.FromDays(30)),
.[To] = Date.Now
}
})
@@ -926,18 +931,12 @@ Public Class frmSearchStart
End If
End Sub
Private Sub SwitchFilter_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles SwitchFilter.CheckedChanged
If SwitchFilter.Checked Then
RibbonPageGroupFilter.Enabled = True
Else
RibbonPageGroupFilter.Enabled = False
End If
End Sub
Private Class FilterTimeframe
Public Property Name As String
Public Property From As Date
Public Property [To] As Date
Public Property DisableFilter As Boolean = False
Public Property CustomFilter As Boolean = False
Public Overrides Function ToString() As String
Return Name.ToString
@@ -947,11 +946,17 @@ Public Class frmSearchStart
Private Sub cmbFilterTimeframe_EditValueChanged(sender As Object, e As EventArgs) Handles cmbFilterTimeframe.EditValueChanged
Dim oTimeframe As FilterTimeframe = DirectCast(cmbFilterTimeframe.EditValue, FilterTimeframe)
If IsNothing(oTimeframe.From) And IsNothing(oTimeframe.To) Then
If oTimeframe.DisableFilter Then
txtFilterFrom.Enabled = False
txtFilterFrom.Reset()
txtFilterTo.Enabled = False
txtFilterTo.Reset()
Else
txtFilterFrom.Enabled = True
txtFilterFrom.EditValue = oTimeframe.From
txtFilterTo.Enabled = True
txtFilterTo.EditValue = oTimeframe.[To]
End If