diff --git a/Controls.DocumentViewer/DocumentViewer.Designer.vb b/Controls.DocumentViewer/DocumentViewer.Designer.vb index c5bad93d..3857551f 100644 --- a/Controls.DocumentViewer/DocumentViewer.Designer.vb +++ b/Controls.DocumentViewer/DocumentViewer.Designer.vb @@ -25,7 +25,6 @@ Partial Class DocumentViewer Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(DocumentViewer)) Me.GdViewer = New GdPicture14.GdViewer() Me.mainToolStrip = New System.Windows.Forms.ToolStrip() - Me.btnOpen = New System.Windows.Forms.ToolStripButton() Me.btnPrint = New System.Windows.Forms.ToolStripButton() Me.ToolStripSeparator3 = New System.Windows.Forms.ToolStripSeparator() Me.btnFitWidth = New System.Windows.Forms.ToolStripButton() @@ -59,6 +58,7 @@ Partial Class DocumentViewer Me.ToolStripStatusLabel1 = New System.Windows.Forms.ToolStripStatusLabel() Me.statusLabel = New System.Windows.Forms.ToolStripStatusLabel() Me.OpenFileDialog = New System.Windows.Forms.OpenFileDialog() + Me.RichEditControl1 = New DevExpress.XtraRichEdit.RichEditControl() Me.mainToolStrip.SuspendLayout() Me.statusbar.SuspendLayout() Me.SuspendLayout() @@ -139,25 +139,13 @@ Partial Class DocumentViewer Me.mainToolStrip.Font = New System.Drawing.Font("Tahoma", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) Me.mainToolStrip.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden Me.mainToolStrip.ImageScalingSize = New System.Drawing.Size(24, 24) - Me.mainToolStrip.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.btnOpen, Me.btnPrint, Me.ToolStripSeparator3, Me.btnFitWidth, Me.btnFitPage, Me.ToolStripSeparator2, Me.btnMouseMode, Me.ToolStripSeparator6, Me.btnFirstPage, Me.btnPreviousPage, Me.tbCurrentPage, Me.lblPageCount, Me.btnNextPage, Me.btnLastPage, Me.ToolStripSeparator1, Me.btnZoomOut, Me.cbZoom, Me.btnZoomIn, Me.ToolStripSeparator5, Me.btnRotateLeft, Me.btnRotateRight, Me.btnFlipX, Me.btnFlipY, Me.ToolStripSeparator4, Me.btnSettings}) + Me.mainToolStrip.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.btnPrint, Me.ToolStripSeparator3, Me.btnFitWidth, Me.btnFitPage, Me.ToolStripSeparator2, Me.btnMouseMode, Me.ToolStripSeparator6, Me.btnFirstPage, Me.btnPreviousPage, Me.tbCurrentPage, Me.lblPageCount, Me.btnNextPage, Me.btnLastPage, Me.ToolStripSeparator1, Me.btnZoomOut, Me.cbZoom, Me.btnZoomIn, Me.ToolStripSeparator5, Me.btnRotateLeft, Me.btnRotateRight, Me.btnFlipX, Me.btnFlipY, Me.ToolStripSeparator4, Me.btnSettings}) Me.mainToolStrip.Location = New System.Drawing.Point(0, 0) Me.mainToolStrip.Name = "mainToolStrip" Me.mainToolStrip.Size = New System.Drawing.Size(1015, 31) Me.mainToolStrip.TabIndex = 6 Me.mainToolStrip.Text = "ToolStrip1" ' - 'btnOpen - ' - Me.btnOpen.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image - Me.btnOpen.Font = New System.Drawing.Font("Tahoma", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.btnOpen.Image = CType(resources.GetObject("btnOpen.Image"), System.Drawing.Image) - Me.btnOpen.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None - Me.btnOpen.ImageTransparentColor = System.Drawing.Color.Magenta - Me.btnOpen.Margin = New System.Windows.Forms.Padding(10, 1, 0, 2) - Me.btnOpen.Name = "btnOpen" - Me.btnOpen.Size = New System.Drawing.Size(28, 28) - Me.btnOpen.Text = "Open document" - ' 'btnPrint ' Me.btnPrint.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image @@ -425,10 +413,22 @@ Partial Class DocumentViewer ' Me.OpenFileDialog.FileName = "OpenFileDialog1" ' + 'RichEditControl1 + ' + Me.RichEditControl1.Location = New System.Drawing.Point(735, 313) + Me.RichEditControl1.Name = "RichEditControl1" + Me.RichEditControl1.Options.HorizontalRuler.Visibility = DevExpress.XtraRichEdit.RichEditRulerVisibility.Hidden + Me.RichEditControl1.Options.VerticalRuler.Visibility = DevExpress.XtraRichEdit.RichEditRulerVisibility.Hidden + Me.RichEditControl1.ReadOnly = True + Me.RichEditControl1.Size = New System.Drawing.Size(249, 225) + Me.RichEditControl1.TabIndex = 8 + Me.RichEditControl1.Text = "RichEditControl1" + ' 'DocumentViewer ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.RichEditControl1) Me.Controls.Add(Me.GdViewer) Me.Controls.Add(Me.statusbar) Me.Controls.Add(Me.mainToolStrip) @@ -445,7 +445,6 @@ Partial Class DocumentViewer Friend WithEvents GdViewer As GdPicture14.GdViewer Friend WithEvents mainToolStrip As ToolStrip - Friend WithEvents btnOpen As ToolStripButton Friend WithEvents btnPrint As ToolStripButton Friend WithEvents ToolStripSeparator3 As ToolStripSeparator Friend WithEvents btnFitWidth As ToolStripButton @@ -479,4 +478,5 @@ Partial Class DocumentViewer Friend WithEvents ToolStripStatusLabel1 As ToolStripStatusLabel Friend WithEvents statusLabel As ToolStripStatusLabel Friend WithEvents OpenFileDialog As OpenFileDialog + Friend WithEvents RichEditControl1 As DevExpress.XtraRichEdit.RichEditControl End Class diff --git a/Controls.DocumentViewer/DocumentViewer.resx b/Controls.DocumentViewer/DocumentViewer.resx index ee577e98..55c9128f 100644 --- a/Controls.DocumentViewer/DocumentViewer.resx +++ b/Controls.DocumentViewer/DocumentViewer.resx @@ -121,34 +121,16 @@ 17, 17 - - - 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 @@ -172,87 +154,87 @@ iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHASURBVEhLnZPPKwRhHMa3/Dq5+AcclYuDC5oZcfIHcFO4 - uEgidkYODsRFSa6KI0th3k1+HLhQpOXgrHDkRhTxep/x3Zq8z5pZn/r0Nu/3fZ7Znd3JlKKnJ1fh+Ple - N1Chl1X3DQOrH16g9FzuSmONrs0+5jiH8xJNpmV0v87JqjMU/Xbr9NbagziPnFT8jflUe6yke/5Iz24U - opXNkZOK0niTymVh+Pz2rgFWNo80eanieH64TIPGOGweafJSxXEm1AUNGuOwOUReqjjOmHpiQRiHzSHy - UsXxBtQnC8I4bB5p8lJl0z59XElDxs6pvL6+fdIv5gfGimt2DkqdTfPgZRULxM2untP9ou1GqbMp3uCg - 8PAv8xd30U2kzoZ9AzyKvsUT7a+d65n1gp7fvIpWXGOfPSqps0nziNIodTaN07lqFihXqbPpGt6rYYFy - lTqbn7/pyhcLpXflS+o4f73JaUx8k51AHbJgWpGXKo7rh0MsmFbkpYrTNrFT2xqoRxZOEjnkpao0rr/b - zwqSRE4qknF9tcRKSonzEk2PG4TjTSPbb6ywKOY4J5Hy6ZjK1ztBuGDKboyvMW+wj7kcJWQy34QJuKYJ - Zco/AAAAAElFTkSuQmCC + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHASURBVEhLnZM9LwRRGIU38VVp/AGdQqPQIDMjVH4AncRW + GhEh7IwoFIRGIqJUULIkmLsRHwUNCZGlUEtQ0hESwnXPeDeZuGfNrCd5cjP3vefM7uxOphx9ffkqxy/0 + u4EKvZy6b8qufniB0nP5K401ujb7mOMczks0mbbR/QYnp85Q9Nut01trD+I8clLxN+ZT7bGS3vkjPbtR + jFY2R04qyuNNKpeF4fPbuwZY2TzS5KWK4/nhMg0a47B5pMlLFceZUBc0aIzD5hB5qeI4Y+qJBWEcNofI + SxXHy6pPFoRx2DzS5KXKpnP6uJqGjN1TBX19+6RfzA+MFdfsHJQ6m9bByxoWiJtbPaf7JTuNUmdTusFB + 8eFfFi7uoptInQ37BngUA4sn2l871zPrRT2/eRWtuMY+e1RSZ5PmEaVR6myap/O1LFCpUmfTM7xXxwKV + KnU2P3/TlS8WSu/Kl9Rx/nqT05j4JjuBOmTBtCIvVRzXD4dYMK3ISxWnY2Knvj1QjyycJHLIS1V5XH83 + ywqSRE4qknF9tcRKyonzEk2PG4TjLSPbb6ywJOY4J5HK6ZoqNDpBuGDKboyvMW+wj7kcJWQy302FuJ6d + LkBBAAAAAElFTkSuQmCC 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 - ZGBgYAAAx7aKXPsltNoAAAAASUVORK5CYII= + ZGBgYAAA4ZqJ8RwZ1lsAAAAASUVORK5CYII= iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHCSURBVEhLYwCD+nomCINGwLZs0wmbss0hxmlnWKFC1AV2 - FZv/Q/EN2/JNKfb1+zmgUtQBtuWt/0AYZAmItijd9MyufHO5ff56AagSygC6BTC2TdGmN0AfdTpVbZaG - KiUPQIMHJ7asWPvFrmzzdJuKrWpQLaQBXD5AZ2tVbP5jU75ppVXpBhMGhv+MUO2EAT5DkdlwMa9Nf23L - N+yxr9jiQlQSB2kkC3tv/mtTuvmUbcWm8NDQVcxQ4zABuktxsZHF0Pl2pRtvAvNTumvxTm6osQiAVQOp - FsDZm54CcalF4Q4hqPHUtgDKLljzzrZ8YwPYApAAdXHbP+uKzfftKrakgS3A6Qo0NrIYOh/GtinbcNm+ + FZv/Q/EN2/JNKfb1+zmgUtQBtuUt/0AYZAmItijd9MyufHO5ff56AagSygC6BTC2TdGmN0AfdTpVbZaG + KiUPQIMHJ7asWPvFrmzzdJuKrWpQLaQBXD5AZ2tVbP5jU75ppVXpBhMGhv+MUO2EAT5DkdlwMc9Nf23L + N+yxr9jiQlQSB2kkC3tt/mtTuvmUbcWm8NDQVcxQ4zABuktxsZHF0Pl2pRtvAvNTumvxTm6osQiAVQOp + FsDZm54CcalF4Q4hqPHUtgDKLljzzrZ8YwPYApAAdXHrP+uKzfftKrakgS3A6Qo0NrIYOh/GtinbcNm+ YlOsR+42drDhIACSpBiXbT5iU7kpAFiOsUCNRQB8LkJmI4uBsHz8/N/W5Rt32JVucIQahR3ANBBtQdam nzZlG1fYlW8whBqBH4A0EoP189d/ty3fPBVYVKhDtRIH0F2Kyd74FlSq2lZtl4RqIQ1gN3Tzf1C9YFu2 - sdKmYosgVCl5AGQYCi7ZcBeUhrFme3IA3NXlm8/alm6OxprUKAHWpZsOAl3uRcPWBQmVB0mAgQEApL+K - XHJ8GzIAAAAASUVORK5CYII= + sdKmYosgVCl5AGQYCi7ZcBeUhrFme3IA3NXlm8/alm6OxprUKAHWpZsOAl3uRcPWBQmVB0mAgQEAsj+J + 8ff7OMIAAAAASUVORK5CYII= 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 @@ -325,19 +307,19 @@ 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 diff --git a/Controls.DocumentViewer/DocumentViewer.vb b/Controls.DocumentViewer/DocumentViewer.vb index d129ef9b..d635acc0 100644 --- a/Controls.DocumentViewer/DocumentViewer.vb +++ b/Controls.DocumentViewer/DocumentViewer.vb @@ -24,6 +24,9 @@ Public Class DocumentViewer Private _logConfig As LogConfig Private _logger As Logger + ' List of all created temp files when converting msg files + Private _TempFiles As New List(Of String) + Private Sub DocumentViewer_Load(sender As Object, e As EventArgs) Handles Me.Load Dim zoomModes As New Dictionary(Of ZoomMode, String) From { {ZoomMode.Zoom50, "50%"}, @@ -40,6 +43,8 @@ Public Class DocumentViewer cbZoom.Items.Add(item.Value) Next + _TempFiles.Clear() + UpdateMainUi() End Sub @@ -59,23 +64,62 @@ Public Class DocumentViewer CloseDocument() - _docPath = filepath - statusLabel.Text = _docPath - GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer GdViewer.DocumentAlignment = ViewerDocumentAlignment.DocumentAlignmentTopCenter - GdViewer.DisplayFromFile(filepath) - GdViewer.Focus() + + DoLoadFile(filepath) + + statusLabel.Text = _docPath UpdateMainUi() End Sub + Public Sub DoLoadFile(FilePath As String) + Try + Dim oFileInfo = New IO.FileInfo(FilePath) + Dim oExtension As String = oFileInfo.Extension + + Select Case oExtension + Case ".msg" + Dim oMsg As New Independentsoft.Msg.Message(FilePath) + ' TODO: Improve Encoding, maybe convert based on encoding + oMsg.Encoding = System.Text.Encoding.UTF32 + Dim oMime = oMsg.ConvertToMimeMessage() + Dim oTempFileName = IO.Path.GetTempFileName() + oMime.Save(oTempFileName, True) + + RichEditControl1.LoadDocument(oTempFileName, DevExpress.XtraRichEdit.DocumentFormat.Mht) + + _TempFiles.Add(oTempFileName) + + RichEditControl1.Visible = True + RichEditControl1.Dock = DockStyle.Fill + Case ".eml" + RichEditControl1.LoadDocument(FilePath, DevExpress.XtraRichEdit.DocumentFormat.Mht) + + RichEditControl1.Visible = True + RichEditControl1.Dock = DockStyle.Fill + Case Else + _docPath = FilePath + + GdViewer.DisplayFromFile(_docPath) + GdViewer.Focus() + + RichEditControl1.Visible = False + RichEditControl1.Dock = DockStyle.None + End Select + Catch ex As Exception + _logger.Error(ex) + End Try + End Sub + + Private Sub CloseDocument() GdViewer.CloseDocument() UpdateMainUi() End Sub - Private Sub btnOpen_Click(sender As Object, e As EventArgs) Handles btnOpen.Click + Private Sub btnOpen_Click(sender As Object, e As EventArgs) CloseDocument() GdViewer.ZoomMode = ViewerZoomMode.ZoomModeWidthViewer @@ -452,4 +496,13 @@ Public Class DocumentViewer MagnifierToolStripMenuItem.Checked = True GdViewer.Focus() End Sub + + Private Sub DocumentViewer_Disposed(sender As Object, e As EventArgs) Handles Me.Disposed + For Each oFile In _TempFiles + Try + IO.File.Delete(oFile) + Catch ex As Exception + End Try + Next + End Sub End Class diff --git a/Controls.DocumentViewer/DocumentViewer.vbproj b/Controls.DocumentViewer/DocumentViewer.vbproj index 1104f1b4..99d39398 100644 --- a/Controls.DocumentViewer/DocumentViewer.vbproj +++ b/Controls.DocumentViewer/DocumentViewer.vbproj @@ -48,9 +48,24 @@ On + + + + + + + + + + + + D:\ProgramFiles\GdPicture.NET 14\Redist\GdPicture.NET (.NET Framework 4.5)\GdPicture.NET.14.dll + + P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\Independentsoft.Msg.dll + ..\packages\NLog.4.6.7\lib\net45\NLog.dll @@ -134,6 +149,7 @@ frmViewerSettings.vb + VbMyResourcesResXFileCodeGenerator Resources.Designer.vb diff --git a/Controls.DocumentViewer/My Project/licenses.licx b/Controls.DocumentViewer/My Project/licenses.licx new file mode 100644 index 00000000..6d20af11 --- /dev/null +++ b/Controls.DocumentViewer/My Project/licenses.licx @@ -0,0 +1 @@ +DevExpress.XtraRichEdit.RichEditControl, DevExpress.XtraRichEdit.v18.1, Version=18.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a