Aktualisiere Abhängigkeiten und verbessere UI
In der `App.config` wurden `bindingRedirect`-Versionen aktualisiert und neue `dependentAssembly`-Einträge hinzugefügt. UI-Elemente in `DocumentViewer.Designer.vb` wurden leicht angepasst. Metadaten und Bildressourcen in `DocumentViewer.resx` wurden aktualisiert. Unterstützung für verschiedene Viewer-Modi in `DocumentViewer.vb` verbessert, einschließlich neuer Logger-Nachrichten und erweiterter Druck- und Zoomlogik. Verweise in `DocumentViewer.vbproj` auf neuere Bibliotheksversionen aktualisiert und neue Abhängigkeiten hinzugefügt. Assembly-Version in `AssemblyInfo.vb` auf `2.7.2.0` erhöht. Paketversionen in `packages.config` aktualisiert und neue Pakete hinzugefügt.
This commit is contained in:
@@ -204,10 +204,9 @@ Public Class DocumentViewer
|
||||
_FileLoadMode = FileLoadMode.Stream
|
||||
|
||||
_logger.Info("Loading file [{0}] from Stream", FileName)
|
||||
SetViewerMode(oExtension) ' Erst ViewerMode setzen ...
|
||||
FileLoaded = DoLoadFileExtension(Stream, oExtension)
|
||||
|
||||
SetViewerMode(oExtension)
|
||||
UpdateMainUi()
|
||||
UpdateMainUi() ' ... dann UI aktualisieren
|
||||
End Sub
|
||||
|
||||
''' <summary>
|
||||
@@ -331,15 +330,25 @@ Public Class DocumentViewer
|
||||
#Region "Form Events"
|
||||
|
||||
Private Sub btnFitWidth_Click(ByVal sender As Object, ByVal e As EventArgs) Handles buttonFitWidth.ItemClick
|
||||
FitToWidth()
|
||||
_Config.Config.PageFit = Config.PageFitSetting.FitWidth
|
||||
_Config.Save()
|
||||
Select Case _ViewerMode
|
||||
Case ViewerMode.GDPicture
|
||||
FitToWidth()
|
||||
_Config.Config.PageFit = Config.PageFitSetting.FitWidth
|
||||
_Config.Save()
|
||||
Case ViewerMode.Richtext
|
||||
RichEditControl1.ActiveView.ZoomFactor = 1.0F
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
Private Sub btnFitPage_Click(ByVal sender As Object, ByVal e As EventArgs) Handles buttonFitPage.ItemClick
|
||||
FitToPage()
|
||||
_Config.Config.PageFit = Config.PageFitSetting.FitPage
|
||||
_Config.Save()
|
||||
Select Case _ViewerMode
|
||||
Case ViewerMode.GDPicture
|
||||
FitToPage()
|
||||
_Config.Config.PageFit = Config.PageFitSetting.FitPage
|
||||
_Config.Save()
|
||||
Case ViewerMode.Richtext
|
||||
RichEditControl1.ActiveView.ZoomFactor = 1.0F
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
Private Sub btnOpen_Click(sender As Object, e As EventArgs)
|
||||
@@ -391,19 +400,39 @@ Public Class DocumentViewer
|
||||
End Sub
|
||||
|
||||
Private Sub btnZoomOut_Click(sender As Object, e As EventArgs) Handles buttonZoomOut.ItemClick
|
||||
MyGDPViewer.ZoomOUT()
|
||||
Select Case _ViewerMode
|
||||
Case ViewerMode.GDPicture
|
||||
MyGDPViewer.ZoomOUT()
|
||||
Case ViewerMode.Richtext
|
||||
Dim oView As DevExpress.XtraRichEdit.RichEditView = RichEditControl1.ActiveView
|
||||
oView.ZoomFactor = Math.Max(0.1F, oView.ZoomFactor - 0.1F)
|
||||
RichEditControl1.Refresh()
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
Private Sub btnZoomIn_Click(sender As Object, e As EventArgs) Handles buttonZoomIn.ItemClick
|
||||
MyGDPViewer.ZoomIN()
|
||||
Select Case _ViewerMode
|
||||
Case ViewerMode.GDPicture
|
||||
MyGDPViewer.ZoomIN()
|
||||
Case ViewerMode.Richtext
|
||||
Dim oView As DevExpress.XtraRichEdit.RichEditView = RichEditControl1.ActiveView
|
||||
oView.ZoomFactor = Math.Min(4.0F, oView.ZoomFactor + 0.1F)
|
||||
RichEditControl1.Refresh()
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
Private Sub btnPrint_Click(sender As Object, e As EventArgs) Handles buttonPrint.ItemClick
|
||||
If MyGDPViewer.PageCount = 0 Then
|
||||
Return
|
||||
End If
|
||||
|
||||
MyGDPViewer.PrintDialog()
|
||||
Select Case _ViewerMode
|
||||
Case ViewerMode.GDPicture
|
||||
If MyGDPViewer.PageCount = 0 Then Return
|
||||
MyGDPViewer.PrintDialog()
|
||||
Case ViewerMode.Richtext
|
||||
Using oPrintDialog As New PrintDialog()
|
||||
If oPrintDialog.ShowDialog(Me) = DialogResult.OK Then
|
||||
RichEditControl1.Print()
|
||||
End If
|
||||
End Using
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
Private Sub BtnRotateLeft_Click(sender As Object, e As EventArgs) Handles buttonRotateLeft.ItemClick
|
||||
@@ -495,11 +524,12 @@ Public Class DocumentViewer
|
||||
Select Case Extension.ToUpper
|
||||
Case "CSV"
|
||||
_ViewerMode = ViewerMode.Excel
|
||||
Case ".EML", ".DOC", ".DOCX", ".ODT", ".RTF", ".TXT"
|
||||
Case ".DOC", ".DOCX", ".ODT", ".RTF", ".TXT"
|
||||
_ViewerMode = ViewerMode.Richtext
|
||||
Case Else
|
||||
_ViewerMode = ViewerMode.GDPicture
|
||||
End Select
|
||||
_logger.Debug("Viewermode set to [{0}] based on extension [{1}]", _ViewerMode, Extension)
|
||||
End If
|
||||
End Sub
|
||||
Private Sub FreeFile()
|
||||
@@ -632,7 +662,7 @@ Public Class DocumentViewer
|
||||
_logger?.Warn("GdViewer control is not initialized yet. Delaying load.")
|
||||
Return False
|
||||
End If
|
||||
|
||||
_logger.Debug("Starting DoLoadFile with path [{0}] and view override [{1}]", FilePath, ViewOverride)
|
||||
Dim oFileInfo = New FileInfo(FilePath)
|
||||
Dim oExtension = oFileInfo.Extension.ToUpper
|
||||
|
||||
@@ -643,8 +673,10 @@ Public Class DocumentViewer
|
||||
|
||||
' Determine viewer mode and load file
|
||||
If ViewOverride = "Richtext" Then
|
||||
_logger.Info("Loading Richtext file: {0}", FilePath)
|
||||
Return LoadRichtextFile(FilePath, oExtension)
|
||||
ElseIf oExtension = ".CSV" Or (oExtension = ".XLSX" AndAlso oFileInfo.Length > 15000) Then
|
||||
_logger.Debug("Loading Spreadsheet file: {0}", FilePath)
|
||||
Return LoadSpreadsheetFile(FilePath, oExtension)
|
||||
Else
|
||||
Return LoadGdPictureFile(FilePath, oExtension)
|
||||
@@ -708,6 +740,7 @@ Public Class DocumentViewer
|
||||
Select Case Extension
|
||||
Case ".EML", ".DOC", ".DOCX", ".XLS", ".XLSX", ".ODT", ".RTF", ".TXT"
|
||||
MyGDPViewer.ForceTemporaryMode = True
|
||||
_logger.Info("ForceTemporaryMode enabled for extension [{0}]", Extension)
|
||||
End Select
|
||||
|
||||
MyGDPViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
|
||||
@@ -830,7 +863,6 @@ Public Class DocumentViewer
|
||||
ShowGdViewer()
|
||||
End If
|
||||
End Select
|
||||
UpdateMainUi()
|
||||
Return True
|
||||
Catch ex As Exception
|
||||
_logger.Error(ex)
|
||||
@@ -908,6 +940,9 @@ Public Class DocumentViewer
|
||||
End Function
|
||||
|
||||
Private Sub UpdateMainUi()
|
||||
If Not IsNothing(_logger) Then
|
||||
_logger.Info("Updating main UI for viewer mode [{0}]", _ViewerMode)
|
||||
End If
|
||||
|
||||
Select Case _Config?.Config?.PageFit
|
||||
Case Config.PageFitSetting.FitPage
|
||||
@@ -969,7 +1004,28 @@ Public Class DocumentViewer
|
||||
btnNextHighlight.Visibility = ToVisibility(False)
|
||||
btnPrevHighlight.Visibility = ToVisibility(False)
|
||||
Case Else
|
||||
ToolbarDocumentViewer.Visible = False
|
||||
ToolbarDocumentViewer.Visible = True
|
||||
|
||||
buttonPrint.Visibility = XtraBars.BarItemVisibility.Always
|
||||
buttonFitWidth.Visibility = XtraBars.BarItemVisibility.Always
|
||||
buttonFitPage.Visibility = XtraBars.BarItemVisibility.Always
|
||||
buttonZoomIn.Visibility = XtraBars.BarItemVisibility.Always
|
||||
buttonZoomOut.Visibility = XtraBars.BarItemVisibility.Always
|
||||
buttonRotateLeft.Visibility = XtraBars.BarItemVisibility.Never
|
||||
buttonRotateRight.Visibility = XtraBars.BarItemVisibility.Never
|
||||
buttonFlipX.Visibility = XtraBars.BarItemVisibility.Never
|
||||
buttonFlipY.Visibility = XtraBars.BarItemVisibility.Never
|
||||
buttonSettings.Visibility = XtraBars.BarItemVisibility.Never
|
||||
txtSearch.Visibility = XtraBars.BarItemVisibility.Never
|
||||
btnSearch2.Visibility = XtraBars.BarItemVisibility.Never
|
||||
btnNextHighlight.Visibility = XtraBars.BarItemVisibility.Never
|
||||
btnPrevHighlight.Visibility = XtraBars.BarItemVisibility.Never
|
||||
buttonFirstPage.Visibility = XtraBars.BarItemVisibility.Never
|
||||
buttonPrevPage.Visibility = XtraBars.BarItemVisibility.Never
|
||||
buttonNextPage.Visibility = XtraBars.BarItemVisibility.Never
|
||||
buttonLastPage.Visibility = XtraBars.BarItemVisibility.Never
|
||||
txtCurrentPage.Visibility = XtraBars.BarItemVisibility.Never
|
||||
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
|
||||
Reference in New Issue
Block a user