Compare commits
4 Commits
a61657c019
...
ef94ea93f2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ef94ea93f2 | ||
|
|
8a61aa208d | ||
|
|
3e2287c6b5 | ||
|
|
59aed06099 |
@ -23,7 +23,7 @@
|
|||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
<dependentAssembly>
|
<dependentAssembly>
|
||||||
<assemblyIdentity name="System.Collections.Immutable" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
<assemblyIdentity name="System.Collections.Immutable" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||||
<bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0" />
|
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
|
||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
<dependentAssembly>
|
<dependentAssembly>
|
||||||
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||||
|
|||||||
@ -55,10 +55,12 @@ Public Class DocumentViewer
|
|||||||
|
|
||||||
Private _hide_file_info_from_user As Boolean = False
|
Private _hide_file_info_from_user As Boolean = False
|
||||||
|
|
||||||
|
|
||||||
Private _FileStream As Stream
|
Private _FileStream As Stream
|
||||||
Private _FilePath As String
|
Private _FilePath As String
|
||||||
Private _FileInfo As FileInfo
|
Private _FileInfo As FileInfo
|
||||||
Private _FileLoadMode As FileLoadMode = FileLoadMode.File
|
Private _FileLoadMode As FileLoadMode = FileLoadMode.File
|
||||||
|
Private _ViewOverride As String = ""
|
||||||
|
|
||||||
' List of all created temp files when converting msg files
|
' List of all created temp files when converting msg files
|
||||||
Private _TempFiles As New List(Of String)
|
Private _TempFiles As New List(Of String)
|
||||||
@ -79,6 +81,7 @@ Public Class DocumentViewer
|
|||||||
End Class
|
End Class
|
||||||
|
|
||||||
Public Property FileLoaded As Boolean = False
|
Public Property FileLoaded As Boolean = False
|
||||||
|
Public Property Viewer_ForceTemporaryMode As Boolean = False
|
||||||
Public ReadOnly Property AnnotationsSaved As Boolean
|
Public ReadOnly Property AnnotationsSaved As Boolean
|
||||||
Get
|
Get
|
||||||
Return Not _AnnotationsPending
|
Return Not _AnnotationsPending
|
||||||
@ -139,9 +142,8 @@ Public Class DocumentViewer
|
|||||||
_FileInfo = New FileInfo(FilePath)
|
_FileInfo = New FileInfo(FilePath)
|
||||||
|
|
||||||
_logger.Info("Loading file [{0}] from Filesystem", FilePath)
|
_logger.Info("Loading file [{0}] from Filesystem", FilePath)
|
||||||
FileLoaded = DoLoadFile(FilePath)
|
|
||||||
|
|
||||||
SetViewerMode(_FileInfo.Extension)
|
SetViewerMode(_FileInfo.Extension)
|
||||||
|
FileLoaded = DoLoadFile(FilePath)
|
||||||
UpdateMainUi()
|
UpdateMainUi()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@ -302,12 +304,10 @@ Public Class DocumentViewer
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub btnPreviousPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonPrevPage.ItemClick
|
Private Sub btnPreviousPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonPrevPage.ItemClick
|
||||||
_ViewerMode = ViewerMode.GDPicture
|
|
||||||
GdViewer.DisplayPreviousPage()
|
GdViewer.DisplayPreviousPage()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub btnNextPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonNextPage.ItemClick
|
Private Sub btnNextPage_Click(ByVal sender As System.Object, ByVal e As EventArgs) Handles buttonNextPage.ItemClick
|
||||||
_ViewerMode = ViewerMode.GDPicture
|
|
||||||
GdViewer.DisplayNextPage()
|
GdViewer.DisplayNextPage()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@ -337,12 +337,10 @@ Public Class DocumentViewer
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub btnZoomOut_Click(sender As Object, e As EventArgs) Handles buttonZoomOut.ItemClick
|
Private Sub btnZoomOut_Click(sender As Object, e As EventArgs) Handles buttonZoomOut.ItemClick
|
||||||
_ViewerMode = ViewerMode.GDPicture
|
|
||||||
GdViewer.ZoomOUT()
|
GdViewer.ZoomOUT()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub btnZoomIn_Click(sender As Object, e As EventArgs) Handles buttonZoomIn.ItemClick
|
Private Sub btnZoomIn_Click(sender As Object, e As EventArgs) Handles buttonZoomIn.ItemClick
|
||||||
_ViewerMode = ViewerMode.GDPicture
|
|
||||||
GdViewer.ZoomIN()
|
GdViewer.ZoomIN()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@ -437,14 +435,18 @@ Public Class DocumentViewer
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub SetViewerMode(Extension As String)
|
Private Sub SetViewerMode(Extension As String)
|
||||||
Select Case Extension.ToUpper
|
If _ViewOverride = "Richtext" Then
|
||||||
Case "CSV"
|
_ViewerMode = ViewerMode.Richtext
|
||||||
_ViewerMode = ViewerMode.Excel
|
Else
|
||||||
Case ".EML", ".DOC", ".DOCX", ".ODT", ".RTF", ".TXT"
|
Select Case Extension.ToUpper
|
||||||
_ViewerMode = ViewerMode.RichText
|
Case "CSV"
|
||||||
Case Else
|
_ViewerMode = ViewerMode.Excel
|
||||||
_ViewerMode = ViewerMode.GDPicture
|
'Case ".EML", ".DOC", ".DOCX", ".ODT", ".RTF", ".TXT"
|
||||||
End Select
|
' _ViewerMode = ViewerMode.RichText
|
||||||
|
Case Else
|
||||||
|
_ViewerMode = ViewerMode.GDPicture
|
||||||
|
End Select
|
||||||
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub FreeFile()
|
Private Sub FreeFile()
|
||||||
Try
|
Try
|
||||||
@ -464,7 +466,7 @@ Public Class DocumentViewer
|
|||||||
_logger.Warn($"Unexpected error in FreeFile: {ex.Message}")
|
_logger.Warn($"Unexpected error in FreeFile: {ex.Message}")
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
Private Function DoLoadFile(FilePath As String) As Boolean
|
Private Function DoLoadFile(FilePath As String, Optional ViewOverride As String = "") As Boolean
|
||||||
Try
|
Try
|
||||||
Dim oFileInfo = New FileInfo(FilePath)
|
Dim oFileInfo = New FileInfo(FilePath)
|
||||||
Dim oExtension As String = oFileInfo.Extension.ToUpper
|
Dim oExtension As String = oFileInfo.Extension.ToUpper
|
||||||
@ -477,44 +479,73 @@ Public Class DocumentViewer
|
|||||||
SpreadsheetControl1.Dock = DockStyle.None
|
SpreadsheetControl1.Dock = DockStyle.None
|
||||||
RichEditControl1.Dock = DockStyle.None
|
RichEditControl1.Dock = DockStyle.None
|
||||||
|
|
||||||
Select Case oExtension.ToUpper
|
If ViewOverride = "Richtext" Then
|
||||||
Case ".CSV"
|
RichEditControl1.LoadDocument(FilePath, GetDocumentFormat(oExtension))
|
||||||
Dim oFormat = GetSpreadsheetFormat(oExtension)
|
RichEditControl1.Visible = True
|
||||||
SpreadsheetControl1.LoadDocument(FilePath, oFormat)
|
GdViewer.Visible = False
|
||||||
|
RichEditControl1.Dock = DockStyle.Fill
|
||||||
|
_ViewOverride = "Richtext"
|
||||||
|
_ViewerMode = ViewerMode.Richtext
|
||||||
|
MsgBox("This docx-file contains a generic error and will be displayed in a reduced viewer." & vbNewLine &
|
||||||
|
"Please try to open the file in WORD", MsgBoxStyle.Exclamation, "Error opening docx-file")
|
||||||
|
Else
|
||||||
|
_ViewOverride = ""
|
||||||
|
Select Case oExtension.ToUpper
|
||||||
|
Case ".CSV"
|
||||||
|
Dim oFormat = GetSpreadsheetFormat(oExtension)
|
||||||
|
SpreadsheetControl1.LoadDocument(FilePath, oFormat)
|
||||||
|
|
||||||
Dim oRange = SpreadsheetControl1.ActiveWorksheet.GetUsedRange()
|
Dim oRange = SpreadsheetControl1.ActiveWorksheet.GetUsedRange()
|
||||||
oRange.AutoFitColumns()
|
oRange.AutoFitColumns()
|
||||||
|
|
||||||
SpreadsheetControl1.Visible = True
|
SpreadsheetControl1.Visible = True
|
||||||
GdViewer.Visible = False
|
GdViewer.Visible = False
|
||||||
SpreadsheetControl1.Dock = DockStyle.Fill
|
SpreadsheetControl1.Dock = DockStyle.Fill
|
||||||
Case ".EML", ".DOC", ".DOCX", ".ODT", ".RTF", ".TXT"
|
|
||||||
RichEditControl1.LoadDocument(FilePath, GetDocumentFormat(oExtension))
|
|
||||||
|
|
||||||
RichEditControl1.Visible = True
|
'Case ".EML", ".DOC", ".DOCX", ".ODT", ".RTF", ".TXT"
|
||||||
GdViewer.Visible = False
|
' RichEditControl1.LoadDocument(FilePath, GetDocumentFormat(oExtension))
|
||||||
RichEditControl1.Dock = DockStyle.Fill
|
|
||||||
Case Else
|
|
||||||
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
|
|
||||||
GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
|
|
||||||
GdViewer.ForceTemporaryMode = True
|
|
||||||
GdViewer.AnnotationDropShadow = True
|
|
||||||
GdViewer.BackColor = Color.White
|
|
||||||
|
|
||||||
If GdViewer.DisplayFromFile(FilePath) <> GdPictureStatus.OK Then
|
' RichEditControl1.Visible = True
|
||||||
|
' GdViewer.Visible = False
|
||||||
|
' RichEditControl1.Dock = DockStyle.Fill
|
||||||
|
Case Else
|
||||||
|
Select Case oExtension.ToUpper
|
||||||
|
Case ".EML", ".DOC", ".DOCX", ".XLS", ".XLSX", ".ODT", ".RTF", ".TXT"
|
||||||
|
GdViewer.ForceTemporaryMode = False
|
||||||
|
End Select
|
||||||
|
|
||||||
Dim oFileName = IO.Path.GetFileName(FilePath)
|
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
|
||||||
lbFileNotLoaded.Text = String.Format("Datei konnte nicht geladen werden:{0}{1}", vbCrLf, oFileName)
|
GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
|
||||||
lbFileNotLoaded.Visible = True
|
If Viewer_ForceTemporaryMode = True Then
|
||||||
Else
|
GdViewer.ForceTemporaryMode = True
|
||||||
If GdViewer.Visible = False Then
|
|
||||||
GdViewer.Visible = True
|
|
||||||
End If
|
End If
|
||||||
End If
|
|
||||||
|
|
||||||
End Select
|
GdViewer.AnnotationDropShadow = True
|
||||||
|
GdViewer.BackColor = Color.White
|
||||||
|
|
||||||
|
Dim oGDPState As GdPicture14.GdPictureStatus = GdViewer.DisplayFromFile(FilePath)
|
||||||
|
If oGDPState <> GdPictureStatus.OK Then
|
||||||
|
_logger.Warn($"GdPictureStatus is [{oGDPState}]")
|
||||||
|
If oExtension.ToUpper = ".DOCX" And oGDPState = GdPictureStatus.GenericError Then
|
||||||
|
DoLoadFile(FilePath, "Richtext")
|
||||||
|
Else
|
||||||
|
Dim oFileName = IO.Path.GetFileName(FilePath)
|
||||||
|
lbFileNotLoaded.Text = String.Format("Datei konnte nicht geladen werden:{0}{1}", vbCrLf, oFileName)
|
||||||
|
lbFileNotLoaded.Visible = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
Else
|
||||||
|
If GdViewer.Visible = False Then
|
||||||
|
GdViewer.Visible = True
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
End Select
|
||||||
|
End If
|
||||||
|
If _ViewOverride = "Richtext" Then
|
||||||
|
_ViewerMode = ViewerMode.Richtext
|
||||||
|
End If
|
||||||
|
|
||||||
UpdateMainUi()
|
|
||||||
|
|
||||||
Return True
|
Return True
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
@ -524,12 +555,10 @@ Public Class DocumentViewer
|
|||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Sub FitToPage()
|
Private Sub FitToPage()
|
||||||
_ViewerMode = ViewerMode.GDPicture
|
|
||||||
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeFitToViewer
|
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeFitToViewer
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub FitToWidth()
|
Private Sub FitToWidth()
|
||||||
_ViewerMode = ViewerMode.GDPicture
|
|
||||||
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
|
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@ -553,7 +582,9 @@ Public Class DocumentViewer
|
|||||||
Case Else
|
Case Else
|
||||||
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
|
GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer
|
||||||
GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
|
GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter
|
||||||
GdViewer.ForceTemporaryMode = True
|
If Viewer_ForceTemporaryMode = True Then
|
||||||
|
GdViewer.ForceTemporaryMode = True
|
||||||
|
End If
|
||||||
GdViewer.AnnotationDropShadow = True
|
GdViewer.AnnotationDropShadow = True
|
||||||
|
|
||||||
GdViewer.DisplayFromStream(Stream)
|
GdViewer.DisplayFromStream(Stream)
|
||||||
@ -665,9 +696,8 @@ Public Class DocumentViewer
|
|||||||
btnSearch2.Visibility = ToVisibility(False)
|
btnSearch2.Visibility = ToVisibility(False)
|
||||||
btnNextHighlight.Visibility = ToVisibility(False)
|
btnNextHighlight.Visibility = ToVisibility(False)
|
||||||
btnPrevHighlight.Visibility = ToVisibility(False)
|
btnPrevHighlight.Visibility = ToVisibility(False)
|
||||||
|
Case Else
|
||||||
|
ToolbarDocumentViewer.Visible = False
|
||||||
|
|
||||||
End Select
|
End Select
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|||||||
@ -200,8 +200,8 @@
|
|||||||
<Reference Include="System.CodeDom, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
<Reference Include="System.CodeDom, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\System.CodeDom.8.0.0\lib\net462\System.CodeDom.dll</HintPath>
|
<HintPath>..\packages\System.CodeDom.8.0.0\lib\net462\System.CodeDom.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Collections.Immutable, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
<Reference Include="System.Collections.Immutable, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\System.Collections.Immutable.8.0.0\lib\net462\System.Collections.Immutable.dll</HintPath>
|
<HintPath>..\packages\System.Collections.Immutable.9.0.0\lib\net462\System.Collections.Immutable.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Configuration" />
|
<Reference Include="System.Configuration" />
|
||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
|
|||||||
@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
|
|||||||
' übernehmen, indem Sie "*" eingeben:
|
' übernehmen, indem Sie "*" eingeben:
|
||||||
' <Assembly: AssemblyVersion("1.0.*")>
|
' <Assembly: AssemblyVersion("1.0.*")>
|
||||||
|
|
||||||
<Assembly: AssemblyVersion("2.1.0.0")>
|
<Assembly: AssemblyVersion("2.3.0.0")>
|
||||||
<Assembly: AssemblyFileVersion("2.1.0.0")>
|
<Assembly: AssemblyFileVersion("2.3.0.0")>
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
<package id="RtfPipe" version="2.0.7677.4303" targetFramework="net462" />
|
<package id="RtfPipe" version="2.0.7677.4303" targetFramework="net462" />
|
||||||
<package id="System.Buffers" version="4.6.0" targetFramework="net462" />
|
<package id="System.Buffers" version="4.6.0" targetFramework="net462" />
|
||||||
<package id="System.CodeDom" version="8.0.0" targetFramework="net462" />
|
<package id="System.CodeDom" version="8.0.0" targetFramework="net462" />
|
||||||
<package id="System.Collections.Immutable" version="8.0.0" targetFramework="net462" />
|
<package id="System.Collections.Immutable" version="9.0.0" targetFramework="net462" />
|
||||||
<package id="System.IO.Packaging" version="8.0.1" targetFramework="net462" />
|
<package id="System.IO.Packaging" version="8.0.1" targetFramework="net462" />
|
||||||
<package id="System.Management" version="8.0.0" targetFramework="net462" />
|
<package id="System.Management" version="8.0.0" targetFramework="net462" />
|
||||||
<package id="System.Memory" version="4.6.0" targetFramework="net462" />
|
<package id="System.Memory" version="4.6.0" targetFramework="net462" />
|
||||||
|
|||||||
@ -12,6 +12,7 @@ Public Class frmDocView
|
|||||||
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
|
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
|
||||||
txtfilepath.Text = OpenFileDialog1.FileName
|
txtfilepath.Text = OpenFileDialog1.FileName
|
||||||
MyDocumentViewer.LoadFile(txtfilepath.Text)
|
MyDocumentViewer.LoadFile(txtfilepath.Text)
|
||||||
|
txtfilepath.Text = ""
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
MyDocumentViewer.LoadFile(txtfilepath.Text)
|
MyDocumentViewer.LoadFile(txtfilepath.Text)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user