DocumentViewer: WIP Search
This commit is contained in:
parent
e849d21237
commit
47c37ad7b7
122
Controls.DocumentViewer/Classes/Search.vb
Normal file
122
Controls.DocumentViewer/Classes/Search.vb
Normal file
@ -0,0 +1,122 @@
|
||||
Imports DigitalData.Modules.Base
|
||||
Imports DigitalData.Modules.Logging
|
||||
Imports GdPicture14
|
||||
|
||||
Public Class Search
|
||||
Inherits BaseClass
|
||||
|
||||
Public Sub New(pLogConfig As LogConfig, pGDViewer As GdViewer)
|
||||
MyBase.New(pLogConfig)
|
||||
_Viewer = pGDViewer
|
||||
_Viewer.MouseMode = ViewerMouseMode.MouseModeDefault
|
||||
|
||||
AddHandler _Viewer.PageDisplayed, AddressOf Viewer_PageDisplayed
|
||||
End Sub
|
||||
|
||||
Public Property SearchQuery As String = ""
|
||||
Public Property CaseSensitive As Boolean = False
|
||||
Public Property WholeWords As Boolean = False
|
||||
|
||||
Private _Viewer As GdViewer = Nothing
|
||||
|
||||
Private _CurrentPage As Integer = 0
|
||||
Private _CurrentQuery As String = ""
|
||||
Private _CurrentOccurrenceCount = 0
|
||||
Private _CurrentSelectedOccurrence = 0
|
||||
|
||||
Public Sub SearchAll(pQuery As String)
|
||||
' Exit, if query has not changed
|
||||
If _CurrentQuery = pQuery Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
' Save query
|
||||
_CurrentQuery = pQuery
|
||||
|
||||
' Reset previous highlights, then search for the new query
|
||||
_Viewer.RemoveAllRegions()
|
||||
_Viewer.SearchText(_CurrentQuery, 0, CaseSensitive, WholeWords)
|
||||
End Sub
|
||||
|
||||
Public Sub NextHighlight()
|
||||
' This also applies when the page has *NO* occurrences, so 0 = 0
|
||||
If _CurrentOccurrenceCount = _CurrentSelectedOccurrence Then
|
||||
' If there are no occurrences on the current page, got to the *next page*
|
||||
While _CurrentOccurrenceCount = _CurrentSelectedOccurrence And _CurrentPage < _Viewer.PageCount
|
||||
_Viewer.DisplayNextPage()
|
||||
End While
|
||||
|
||||
' Safeguard against selecting a non-existing occurrence on the last page
|
||||
If _CurrentOccurrenceCount > 0 Then
|
||||
SelectHighlight(1)
|
||||
Else
|
||||
' Disable next button
|
||||
End If
|
||||
Else
|
||||
' Otherwise just select the next occurrence
|
||||
SelectHighlight(_CurrentSelectedOccurrence + 1)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Sub PrevHighlight()
|
||||
If _CurrentOccurrenceCount = 0 Or _CurrentSelectedOccurrence = 1 Then
|
||||
|
||||
While (_CurrentOccurrenceCount = 0 Or _CurrentSelectedOccurrence = 1) And _CurrentPage > 1
|
||||
_Viewer.DisplayPreviousPage()
|
||||
End While
|
||||
|
||||
If _CurrentOccurrenceCount > 0 Then
|
||||
SelectHighlight(_CurrentOccurrenceCount)
|
||||
End If
|
||||
|
||||
Else
|
||||
' Otherwise just select the previous occurrence
|
||||
SelectHighlight(_CurrentSelectedOccurrence - 1)
|
||||
End If
|
||||
|
||||
'' If no occurrence found on the current page,
|
||||
'' skip to the *previous* page to look there
|
||||
'If _CurrentOccurrenceCount = 0 Then
|
||||
' While _CurrentOccurrenceCount = 0 And _CurrentPage > 1
|
||||
' _Viewer.DisplayPreviousPage()
|
||||
' End While
|
||||
|
||||
'ElseIf _CurrentSelectedOccurrence = 1 Then
|
||||
' ' Need to switch to the previous *page*
|
||||
' ' and highlight the last occurrence there
|
||||
' If _CurrentPage > 1 Then
|
||||
' _Viewer.DisplayPreviousPage()
|
||||
|
||||
' SelectHighlight(_CurrentOccurrenceCount)
|
||||
' End If
|
||||
'Else
|
||||
' ' Otherwise just select the previous occurrence
|
||||
' SelectHighlight(_CurrentSelectedOccurrence - 1)
|
||||
'End If
|
||||
End Sub
|
||||
|
||||
Private Sub SelectHighlight(pOccurrence As Integer)
|
||||
Dim oFound = _Viewer.SearchText(_CurrentQuery, pOccurrence, CaseSensitive, WholeWords)
|
||||
If _Viewer.GetStat() = GdPictureStatus.OK And _Viewer.IsRect() Then
|
||||
_Viewer.RectIsEditable = False
|
||||
_Viewer.CenterOnRect()
|
||||
|
||||
_CurrentSelectedOccurrence = pOccurrence
|
||||
Else
|
||||
_CurrentSelectedOccurrence = 0
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub Viewer_PageDisplayed()
|
||||
If _CurrentPage <> _Viewer.CurrentPage Then
|
||||
_CurrentPage = _Viewer.CurrentPage
|
||||
|
||||
If _CurrentQuery.Length > 0 Then
|
||||
_Viewer.SearchText(_CurrentQuery, 0, CaseSensitive, WholeWords)
|
||||
_CurrentOccurrenceCount = _Viewer.GetTextOccurrenceCount(_CurrentPage, _CurrentQuery, CaseSensitive, WholeWords)
|
||||
_CurrentSelectedOccurrence = 0
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
91
Controls.DocumentViewer/DocumentViewer.Designer.vb
generated
91
Controls.DocumentViewer/DocumentViewer.Designer.vb
generated
@ -46,21 +46,31 @@ Partial Class DocumentViewer
|
||||
Me.buttonNextPage = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.buttonLastPage = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.buttonSettings = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.txtSearch = New DevExpress.XtraBars.BarEditItem()
|
||||
Me.RepositoryItemTextEdit3 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
|
||||
Me.btnSearch2 = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.btnPrevHighlight = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.btnNextHighlight = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.barDockControlTop = New DevExpress.XtraBars.BarDockControl()
|
||||
Me.barDockControlBottom = New DevExpress.XtraBars.BarDockControl()
|
||||
Me.barDockControlLeft = New DevExpress.XtraBars.BarDockControl()
|
||||
Me.barDockControlRight = New DevExpress.XtraBars.BarDockControl()
|
||||
Me.BarStaticItem1 = New DevExpress.XtraBars.BarStaticItem()
|
||||
Me.btnSearch = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.RepositoryItemTextEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
|
||||
Me.RepositoryItemColorEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemColorEdit()
|
||||
Me.RepositoryItemComboBox1 = New DevExpress.XtraEditors.Repository.RepositoryItemComboBox()
|
||||
Me.RepositoryItemSearchControl1 = New DevExpress.XtraEditors.Repository.RepositoryItemSearchControl()
|
||||
Me.SpreadsheetControl1 = New DevExpress.XtraSpreadsheet.SpreadsheetControl()
|
||||
Me.PrintDocument1 = New System.Drawing.Printing.PrintDocument()
|
||||
Me.LabelControl1 = New DevExpress.XtraEditors.LabelControl()
|
||||
CType(Me.BarManager1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RepositoryItemTextEdit3, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RepositoryItemColorEdit1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RepositoryItemComboBox1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RepositoryItemSearchControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'GdViewer
|
||||
@ -161,10 +171,10 @@ Partial Class DocumentViewer
|
||||
Me.BarManager1.DockControls.Add(Me.barDockControlLeft)
|
||||
Me.BarManager1.DockControls.Add(Me.barDockControlRight)
|
||||
Me.BarManager1.Form = Me
|
||||
Me.BarManager1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.buttonPrint, Me.buttonFitPage, Me.buttonFitWidth, Me.buttonZoomIn, Me.buttonZoomOut, Me.buttonRotateRight, Me.buttonRotateLeft, Me.buttonFlipX, Me.buttonFlipY, Me.buttonSettings, Me.buttonPrevPage, Me.buttonNextPage, Me.buttonFirstPage, Me.buttonLastPage, Me.txtCurrentPage, Me.BarStaticItem1, Me.labelPageCount})
|
||||
Me.BarManager1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.buttonPrint, Me.buttonFitPage, Me.buttonFitWidth, Me.buttonZoomIn, Me.buttonZoomOut, Me.buttonRotateRight, Me.buttonRotateLeft, Me.buttonFlipX, Me.buttonFlipY, Me.buttonSettings, Me.buttonPrevPage, Me.buttonNextPage, Me.buttonFirstPage, Me.buttonLastPage, Me.txtCurrentPage, Me.BarStaticItem1, Me.labelPageCount, Me.txtSearch, Me.btnPrevHighlight, Me.btnNextHighlight, Me.btnSearch, Me.btnSearch2})
|
||||
Me.BarManager1.MainMenu = Me.ToolbarDocumentViewer
|
||||
Me.BarManager1.MaxItemId = 26
|
||||
Me.BarManager1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemTextEdit1, Me.RepositoryItemTextEdit2, Me.RepositoryItemColorEdit1, Me.RepositoryItemComboBox1})
|
||||
Me.BarManager1.MaxItemId = 33
|
||||
Me.BarManager1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemTextEdit1, Me.RepositoryItemTextEdit2, Me.RepositoryItemColorEdit1, Me.RepositoryItemComboBox1, Me.RepositoryItemSearchControl1, Me.RepositoryItemTextEdit3})
|
||||
'
|
||||
'ToolbarDocumentViewer
|
||||
'
|
||||
@ -172,7 +182,7 @@ Partial Class DocumentViewer
|
||||
Me.ToolbarDocumentViewer.DockCol = 0
|
||||
Me.ToolbarDocumentViewer.DockRow = 0
|
||||
Me.ToolbarDocumentViewer.DockStyle = DevExpress.XtraBars.BarDockStyle.Top
|
||||
Me.ToolbarDocumentViewer.LinksPersistInfo.AddRange(New DevExpress.XtraBars.LinkPersistInfo() {New DevExpress.XtraBars.LinkPersistInfo(Me.buttonPrint), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFitWidth), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFitPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonZoomIn), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonZoomOut), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonRotateLeft), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonRotateRight), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFlipX), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFlipY), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFirstPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonPrevPage), New DevExpress.XtraBars.LinkPersistInfo(Me.txtCurrentPage), New DevExpress.XtraBars.LinkPersistInfo(Me.labelPageCount), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonNextPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonLastPage), New DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, Me.buttonSettings, DevExpress.XtraBars.BarItemPaintStyle.Standard)})
|
||||
Me.ToolbarDocumentViewer.LinksPersistInfo.AddRange(New DevExpress.XtraBars.LinkPersistInfo() {New DevExpress.XtraBars.LinkPersistInfo(Me.buttonPrint), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFitWidth), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFitPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonZoomIn), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonZoomOut), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonRotateLeft), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonRotateRight), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFlipX), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFlipY), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonFirstPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonPrevPage), New DevExpress.XtraBars.LinkPersistInfo(Me.txtCurrentPage), New DevExpress.XtraBars.LinkPersistInfo(Me.labelPageCount), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonNextPage), New DevExpress.XtraBars.LinkPersistInfo(Me.buttonLastPage), New DevExpress.XtraBars.LinkPersistInfo(DevExpress.XtraBars.BarLinkUserDefines.PaintStyle, Me.buttonSettings, DevExpress.XtraBars.BarItemPaintStyle.Standard), New DevExpress.XtraBars.LinkPersistInfo(Me.txtSearch), New DevExpress.XtraBars.LinkPersistInfo(Me.btnSearch2), New DevExpress.XtraBars.LinkPersistInfo(Me.btnPrevHighlight), New DevExpress.XtraBars.LinkPersistInfo(Me.btnNextHighlight)})
|
||||
Me.ToolbarDocumentViewer.OptionsBar.AllowCollapse = True
|
||||
Me.ToolbarDocumentViewer.OptionsBar.AllowQuickCustomization = False
|
||||
Me.ToolbarDocumentViewer.OptionsBar.DrawDragBorder = False
|
||||
@ -313,6 +323,41 @@ Partial Class DocumentViewer
|
||||
Me.buttonSettings.Name = "buttonSettings"
|
||||
Me.buttonSettings.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
|
||||
'
|
||||
'txtSearch
|
||||
'
|
||||
Me.txtSearch.Caption = "BarEditItem1"
|
||||
Me.txtSearch.Edit = Me.RepositoryItemTextEdit3
|
||||
Me.txtSearch.Id = 27
|
||||
Me.txtSearch.Name = "txtSearch"
|
||||
'
|
||||
'RepositoryItemTextEdit3
|
||||
'
|
||||
Me.RepositoryItemTextEdit3.AutoHeight = False
|
||||
Me.RepositoryItemTextEdit3.Name = "RepositoryItemTextEdit3"
|
||||
'
|
||||
'btnSearch2
|
||||
'
|
||||
Me.btnSearch2.Caption = "BarButtonItem3"
|
||||
Me.btnSearch2.Id = 32
|
||||
Me.btnSearch2.ImageOptions.SvgImage = CType(resources.GetObject("btnSearch2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||
Me.btnSearch2.Name = "btnSearch2"
|
||||
'
|
||||
'btnPrevHighlight
|
||||
'
|
||||
Me.btnPrevHighlight.Caption = "BarButtonItem1"
|
||||
Me.btnPrevHighlight.Enabled = False
|
||||
Me.btnPrevHighlight.Id = 28
|
||||
Me.btnPrevHighlight.ImageOptions.SvgImage = CType(resources.GetObject("btnPrevHighlight.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||
Me.btnPrevHighlight.Name = "btnPrevHighlight"
|
||||
'
|
||||
'btnNextHighlight
|
||||
'
|
||||
Me.btnNextHighlight.Caption = "BarButtonItem2"
|
||||
Me.btnNextHighlight.Enabled = False
|
||||
Me.btnNextHighlight.Id = 29
|
||||
Me.btnNextHighlight.ImageOptions.SvgImage = CType(resources.GetObject("btnNextHighlight.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||
Me.btnNextHighlight.Name = "btnNextHighlight"
|
||||
'
|
||||
'barDockControlTop
|
||||
'
|
||||
Me.barDockControlTop.CausesValidation = False
|
||||
@ -351,6 +396,13 @@ Partial Class DocumentViewer
|
||||
Me.BarStaticItem1.Id = 17
|
||||
Me.BarStaticItem1.Name = "BarStaticItem1"
|
||||
'
|
||||
'btnSearch
|
||||
'
|
||||
Me.btnSearch.Caption = "Search"
|
||||
Me.btnSearch.Id = 31
|
||||
Me.btnSearch.ImageOptions.SvgImage = CType(resources.GetObject("btnSearch.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
|
||||
Me.btnSearch.Name = "btnSearch"
|
||||
'
|
||||
'RepositoryItemTextEdit1
|
||||
'
|
||||
Me.RepositoryItemTextEdit1.AutoHeight = False
|
||||
@ -372,6 +424,12 @@ Partial Class DocumentViewer
|
||||
Me.RepositoryItemComboBox1.Items.AddRange(New Object() {"Arrow", "Text"})
|
||||
Me.RepositoryItemComboBox1.Name = "RepositoryItemComboBox1"
|
||||
'
|
||||
'RepositoryItemSearchControl1
|
||||
'
|
||||
Me.RepositoryItemSearchControl1.AutoHeight = False
|
||||
Me.RepositoryItemSearchControl1.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Repository.ClearButton(), New DevExpress.XtraEditors.Repository.SearchButton()})
|
||||
Me.RepositoryItemSearchControl1.Name = "RepositoryItemSearchControl1"
|
||||
'
|
||||
'SpreadsheetControl1
|
||||
'
|
||||
Me.SpreadsheetControl1.Location = New System.Drawing.Point(461, 377)
|
||||
@ -383,10 +441,25 @@ Partial Class DocumentViewer
|
||||
Me.SpreadsheetControl1.Text = "SpreadsheetControl1"
|
||||
Me.SpreadsheetControl1.Visible = False
|
||||
'
|
||||
'LabelControl1
|
||||
'
|
||||
Me.LabelControl1.Appearance.Options.UseTextOptions = True
|
||||
Me.LabelControl1.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center
|
||||
Me.LabelControl1.Appearance.TextOptions.VAlignment = DevExpress.Utils.VertAlignment.Center
|
||||
Me.LabelControl1.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None
|
||||
Me.LabelControl1.Location = New System.Drawing.Point(340, 222)
|
||||
Me.LabelControl1.Name = "LabelControl1"
|
||||
Me.LabelControl1.Size = New System.Drawing.Size(409, 72)
|
||||
Me.LabelControl1.TabIndex = 14
|
||||
Me.LabelControl1.Tag = "Die Datei konnte nicht gefunden werden: {0}"
|
||||
Me.LabelControl1.Text = "Die Datei konnte nicht gefunden werden: {0}"
|
||||
Me.LabelControl1.Visible = False
|
||||
'
|
||||
'DocumentViewer
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||
Me.Controls.Add(Me.LabelControl1)
|
||||
Me.Controls.Add(Me.RichEditControl1)
|
||||
Me.Controls.Add(Me.SpreadsheetControl1)
|
||||
Me.Controls.Add(Me.GdViewer)
|
||||
@ -398,9 +471,11 @@ Partial Class DocumentViewer
|
||||
Me.Size = New System.Drawing.Size(1079, 590)
|
||||
CType(Me.BarManager1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.RepositoryItemTextEdit2, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.RepositoryItemTextEdit3, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.RepositoryItemTextEdit1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.RepositoryItemColorEdit1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.RepositoryItemComboBox1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.RepositoryItemSearchControl1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.ResumeLayout(False)
|
||||
Me.PerformLayout()
|
||||
|
||||
@ -438,4 +513,12 @@ Partial Class DocumentViewer
|
||||
Friend WithEvents RepositoryItemColorEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemColorEdit
|
||||
Friend WithEvents RepositoryItemComboBox1 As DevExpress.XtraEditors.Repository.RepositoryItemComboBox
|
||||
Friend WithEvents labelPageCount As DevExpress.XtraBars.BarStaticItem
|
||||
Friend WithEvents txtSearch As DevExpress.XtraBars.BarEditItem
|
||||
Friend WithEvents RepositoryItemTextEdit3 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit
|
||||
Friend WithEvents btnPrevHighlight As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents btnNextHighlight As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents RepositoryItemSearchControl1 As DevExpress.XtraEditors.Repository.RepositoryItemSearchControl
|
||||
Friend WithEvents LabelControl1 As DevExpress.XtraEditors.LabelControl
|
||||
Friend WithEvents btnSearch As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents btnSearch2 As DevExpress.XtraBars.BarButtonItem
|
||||
End Class
|
||||
|
||||
@ -161,6 +161,88 @@
|
||||
NC42LTAuOCw2LjUtMi4xbDcuOSw3LjljMC4zLDAuMywwLjksMC4zLDEuMiwwbDEuMi0xLjJDMzAuMSwy
|
||||
OC4yLDMwLjEsMjcuNiwyOS43LDI3LjN6IE00LDEzYzAtNSw0LTksOS05YzUsMCw5LDQsOSw5ICAgcy00
|
||||
LDktOSw5QzgsMjIsNCwxOCw0LDEzeiIgY2xhc3M9IkJsYWNrIiAvPg0KICA8L2c+DQo8L3N2Zz4L
|
||||
</value>
|
||||
</data>
|
||||
<data name="btnSearch2.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
|
||||
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
|
||||
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANoCAAAC77u/
|
||||
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
|
||||
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
|
||||
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
|
||||
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
|
||||
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z
|
||||
ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5CbGFja3tmaWxsOiM3MjcyNzI7fQoJLkdyZWVue2ZpbGw6IzAz
|
||||
OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9Cgkuc3Qwe29wYWNpdHk6MC43NTt9Cgkuc3Qxe29wYWNp
|
||||
dHk6MC41O30KPC9zdHlsZT4NCiAgPGcgaWQ9Ilpvb20iPg0KICAgIDxwYXRoIGQ9Ik0yNy43LDI1LjNM
|
||||
MjAuNSwxOGMxLTEuNCwxLjUtMy4yLDEuNS01YzAtNS00LTktOS05cy05LDQtOSw5YzAsNSw0LDksOSw5
|
||||
YzEuOSwwLDMuNi0wLjYsNS0xLjVsNy4zLDcuMyAgIGMwLjMsMC4zLDAuOSwwLjMsMS4yLDBsMS4yLTEu
|
||||
MkMyOC4xLDI2LjIsMjguMSwyNS42LDI3LjcsMjUuM3ogTTYsMTNjMC0zLjksMy4xLTcsNy03czcsMy4x
|
||||
LDcsN2MwLDMuOS0zLjEsNy03LDdTNiwxNi45LDYsMTN6IiBjbGFzcz0iQmxhY2siIC8+DQogIDwvZz4N
|
||||
Cjwvc3ZnPgs=
|
||||
</value>
|
||||
</data>
|
||||
<data name="btnPrevHighlight.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
|
||||
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
|
||||
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIQCAAAC77u/
|
||||
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
|
||||
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
|
||||
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
|
||||
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
|
||||
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJs
|
||||
YWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAzOUMy
|
||||
Mzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
|
||||
Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl
|
||||
Pg0KICA8ZyBpZD0iQmFja3dhcmQiPg0KICAgIDxwYXRoIGQ9Ik0xNiwyQzguMywyLDIsOC4zLDIsMTZz
|
||||
Ni4zLDE0LDE0LDE0czE0LTYuMywxNC0xNFMyMy43LDIsMTYsMnogTTI0LDE4aC04djZsLTgtOGw4LTh2
|
||||
Nmg4VjE4eiIgY2xhc3M9IkdyZWVuIiAvPg0KICA8L2c+DQo8L3N2Zz4L
|
||||
</value>
|
||||
</data>
|
||||
<data name="btnNextHighlight.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
|
||||
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
|
||||
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIcCAAAC77u/
|
||||
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
|
||||
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
|
||||
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
|
||||
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
|
||||
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJs
|
||||
YWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAzOUMy
|
||||
Mzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
|
||||
Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl
|
||||
Pg0KICA8ZyBpZD0iRm9yd2FyZF8xXyI+DQogICAgPHBhdGggZD0iTTE2LDJDOC4zLDIsMiw4LjMsMiwx
|
||||
NnM2LjMsMTQsMTQsMTRzMTQtNi4zLDE0LTE0UzIzLjcsMiwxNiwyeiBNMTYsMjR2LTZIOHYtNGg4Vjhs
|
||||
OCw4TDE2LDI0eiIgY2xhc3M9IkdyZWVuIiAvPg0KICA8L2c+DQo8L3N2Zz4L
|
||||
</value>
|
||||
</data>
|
||||
<data name="btnSearch.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
|
||||
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
|
||||
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFQEAAAC77u/
|
||||
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
|
||||
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
|
||||
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
|
||||
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
|
||||
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkdyZWVue2ZpbGw6IzAzOUMyMzt9Cgku
|
||||
QmxhY2t7ZmlsbDojNzI3MjcyO30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5ZZWxsb3d7ZmlsbDojRkZC
|
||||
MTE1O30KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
|
||||
Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iRW5hYmxlU2Vh
|
||||
cmNoIj4NCiAgICA8cGF0aCBkPSJNMTQuNSwxNy44QzEwLjgsMTcuMSw4LDEzLjksOCwxMGMwLTQuNCwz
|
||||
LjYtOCw4LThzOCwzLjYsOCw4YzAsMS41LTAuNCwyLjgtMS4xLDRjMCwwLDAuMSwwLDAuMSwwICAgYzAu
|
||||
NywwLDEuNCwwLjEsMi4xLDAuMmMwLjYtMS4zLDAuOS0yLjcsMC45LTQuMmMwLTUuNS00LjUtMTAtMTAt
|
||||
MTBDMTAuNSwwLDYsNC41LDYsMTBjMCwyLjEsMC43LDQuMSwxLjgsNS43bC03LjUsNy42ICAgYy0wLjQs
|
||||
MC4zLTAuNCwwLjksMCwxLjNsMS4yLDEuMmMwLjMsMC4zLDAuOSwwLjMsMS4yLDBsNy42LTcuNmMwLjks
|
||||
MC42LDEuOSwxLjEsMi45LDEuNEMxMy42LDE5LDE0LDE4LjQsMTQuNSwxNy44eiIgY2xhc3M9IkJsdWUi
|
||||
IC8+DQogICAgPHBhdGggZD0iTTIzLDE2Yy00LjQsMC04LjEsMy05LDdjMC45LDQsNC42LDcsOSw3YzQu
|
||||
NCwwLDguMS0zLDktN0MzMS4xLDE5LDI3LjQsMTYsMjMsMTZ6IE0yMywyOGMtMy4zLDAtNi4xLTItNy01
|
||||
ICAgYzAuOS0zLDMuNy01LDctNXM2LjEsMiw3LDVDMjkuMSwyNiwyNi4zLDI4LDIzLDI4eiBNMjMsMjZj
|
||||
LTEuNywwLTMtMS4zLTMtM3MxLjMtMywzLTNzMywxLjMsMywzUzI0LjcsMjYsMjMsMjZ6IiBjbGFzcz0i
|
||||
QmxhY2siIC8+DQogIDwvZz4NCjwvc3ZnPgs=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="PrintDocument1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
|
||||
@ -31,15 +31,17 @@ Public Class DocumentViewer
|
||||
Stream
|
||||
End Enum
|
||||
|
||||
Private _ViewerMode As ViewerMode
|
||||
Private _currentSearchOccurence As Integer = 0
|
||||
Private _toggleGamma As Boolean = True
|
||||
Private _licenseKey As String = String.Empty
|
||||
Private _licenseManager As New GdPicture14.LicenseManager()
|
||||
Private _logConfig As LogConfig
|
||||
Private _logger As Logger
|
||||
Private _email As Email2
|
||||
Private _Config As ConfigManager(Of Config)
|
||||
Private _email As Email2
|
||||
|
||||
Private _ViewerMode As ViewerMode
|
||||
|
||||
Private _licenseKey As String = String.Empty
|
||||
Private _licenseManager As New GdPicture14.LicenseManager()
|
||||
|
||||
Private _Search As Search
|
||||
Private _Annotations As Annotations
|
||||
Private _AnnotationsPending As Boolean = False
|
||||
|
||||
@ -77,6 +79,7 @@ Public Class DocumentViewer
|
||||
_licenseKey = pLicenseKey
|
||||
_licenseManager.RegisterKEY(_licenseKey)
|
||||
_Annotations = New Annotations(pLogConfig)
|
||||
_Search = New Search(pLogConfig, GdViewer)
|
||||
|
||||
Dim oConfigPath = ConfigPath()
|
||||
_Config = New ConfigManager(Of Config)(pLogConfig, oConfigPath)
|
||||
@ -132,6 +135,10 @@ Public Class DocumentViewer
|
||||
UpdateMainUi()
|
||||
End Sub
|
||||
|
||||
Private Sub SearchFile(pSearchQuery As String)
|
||||
|
||||
End Sub
|
||||
|
||||
''' <summary>
|
||||
''' Terminate Viewer, freeing up resources and deleting temp files
|
||||
''' </summary>
|
||||
@ -676,7 +683,29 @@ Public Class DocumentViewer
|
||||
txtCurrentPage.Enabled = False
|
||||
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
Private Sub btnSearch2_ItemClick(sender As Object, e As XtraBars.ItemClickEventArgs) Handles btnSearch2.ItemClick
|
||||
_Search.SearchAll(txtSearch.EditValue.ToString)
|
||||
End Sub
|
||||
|
||||
Private Sub btnPrevHighlight_ItemClick(sender As Object, e As XtraBars.ItemClickEventArgs) Handles btnPrevHighlight.ItemClick
|
||||
_Search.PrevHighlight()
|
||||
End Sub
|
||||
|
||||
Private Sub btnNextHighlight_ItemClick(sender As Object, e As XtraBars.ItemClickEventArgs) Handles btnNextHighlight.ItemClick
|
||||
_Search.NextHighlight()
|
||||
End Sub
|
||||
|
||||
Private Sub txtSearch_EditValueChanged(sender As Object, e As EventArgs) Handles txtSearch.EditValueChanged
|
||||
If String.IsNullOrEmpty(txtSearch.EditValue) Then
|
||||
btnPrevHighlight.Enabled = False
|
||||
btnNextHighlight.Enabled = False
|
||||
|
||||
Else
|
||||
btnPrevHighlight.Enabled = True
|
||||
btnNextHighlight.Enabled = True
|
||||
End If
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
|
||||
@ -131,7 +131,7 @@
|
||||
<Import Include="System.Threading.Tasks" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Annotations.vb" />
|
||||
<Compile Include="Classes\Annotations.vb" />
|
||||
<Compile Include="Config.vb" />
|
||||
<Compile Include="DocumentViewer.Designer.vb">
|
||||
<DependentUpon>DocumentViewer.vb</DependentUpon>
|
||||
@ -161,6 +161,7 @@
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
<Compile Include="Classes\Search.vb" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="DocumentViewer.resx">
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user