From 30b06d050d7a50ac9611f1151cb5eb07d2add1d1 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Fri, 12 Jan 2024 11:19:10 +0100 Subject: [PATCH] DocumentViewer: Make toolbar buttons configurable --- Controls.DocumentViewer/DocumentViewer.vb | 59 +++++++++++++++++------ 1 file changed, 44 insertions(+), 15 deletions(-) diff --git a/Controls.DocumentViewer/DocumentViewer.vb b/Controls.DocumentViewer/DocumentViewer.vb index 1cb5431b..24efcb08 100644 --- a/Controls.DocumentViewer/DocumentViewer.vb +++ b/Controls.DocumentViewer/DocumentViewer.vb @@ -51,6 +51,8 @@ Public Class DocumentViewer Private _Annotations As Annotations Private _AnnotationsPending As Boolean = False + Private _ToolbarSettings As New ToolbarSettings + Private _hide_file_info_from_user As Boolean = False Private _FileStream As Stream @@ -65,6 +67,16 @@ Public Class DocumentViewer UpdateMainUi() End Sub + Public Class ToolbarSettings + Public Property ShowPrintButton As Boolean = True + Public Property ShowFitWidthButton As Boolean = True + Public Property ShowFitPageButton As Boolean = True + Public Property ShowZoomButton As Boolean = True + Public Property ShowRotateButton As Boolean = True + Public Property ShowFlipButton As Boolean = True + Public Property ShowSearchButton As Boolean = True + Public Property ShowSettingButton As Boolean = True + End Class Public Property FileLoaded As Boolean = False Public ReadOnly Property AnnotationsSaved As Boolean @@ -78,7 +90,7 @@ Public Class DocumentViewer ''' ''' A LogConfig object ''' The GDPicture.NET License Key - Public Sub Init(pLogConfig As LogConfig, pLicenseKey As String) + Public Sub Init(pLogConfig As LogConfig, pLicenseKey As String, pToolbarSettings As ToolbarSettings) _logConfig = pLogConfig _logger = pLogConfig.GetLogger() _email = New Email2(pLogConfig) @@ -86,11 +98,16 @@ Public Class DocumentViewer _licenseManager.RegisterKEY(_licenseKey) _Annotations = New Annotations(pLogConfig) _Search = New Search(pLogConfig, GdViewer) + _ToolbarSettings = pToolbarSettings Dim oConfigPath = ConfigPath() _Config = New ConfigManager(Of Config)(pLogConfig, oConfigPath) End Sub + Public Sub Init(pLogConfig As LogConfig, pLicenseKey As String) + Init(pLogConfig, pLicenseKey, New ToolbarSettings()) + End Sub + ''' ''' Load a file from a path and display it ''' @@ -646,27 +663,31 @@ Public Class DocumentViewer Select Case _ViewerMode Case ViewerMode.GDPicture - buttonPrint.Enabled = True - buttonFitWidth.Enabled = True - buttonFitPage.Enabled = True - buttonZoomIn.Enabled = True - buttonZoomOut.Enabled = True - buttonRotateLeft.Enabled = True - buttonRotateRight.Enabled = True - buttonFlipX.Enabled = True - buttonFlipY.Enabled = True + buttonPrint.Enabled = _ToolbarSettings.ShowPrintButton + buttonFitWidth.Enabled = _ToolbarSettings.ShowFitWidthButton + buttonFitPage.Enabled = _ToolbarSettings.ShowFitPageButton + buttonZoomIn.Enabled = _ToolbarSettings.ShowZoomButton + buttonZoomOut.Enabled = _ToolbarSettings.ShowZoomButton + buttonRotateLeft.Enabled = _ToolbarSettings.ShowRotateButton + buttonRotateRight.Enabled = _ToolbarSettings.ShowRotateButton + buttonFlipX.Enabled = _ToolbarSettings.ShowFlipButton + buttonFlipY.Enabled = _ToolbarSettings.ShowFlipButton + buttonSettings.Enabled = _ToolbarSettings.ShowSettingButton + txtSearch.Enabled = _ToolbarSettings.ShowSearchButton + btnSearch2.Enabled = _ToolbarSettings.ShowSearchButton + btnNextHighlight.Enabled = _ToolbarSettings.ShowSearchButton + btnPrevHighlight.Enabled = _ToolbarSettings.ShowSearchButton buttonFirstPage.Enabled = True buttonPrevPage.Enabled = True buttonNextPage.Enabled = True buttonLastPage.Enabled = True - buttonSettings.Enabled = True txtCurrentPage.Enabled = True Case ViewerMode.RichText - buttonFitPage.Enabled = True - buttonZoomIn.Enabled = True - buttonZoomOut.Enabled = True - buttonFitWidth.Enabled = True + buttonFitWidth.Enabled = _ToolbarSettings.ShowFitWidthButton + buttonFitPage.Enabled = _ToolbarSettings.ShowFitPageButton + buttonZoomIn.Enabled = _ToolbarSettings.ShowZoomButton + buttonZoomOut.Enabled = _ToolbarSettings.ShowZoomButton buttonNextPage.Enabled = True buttonPrevPage.Enabled = True @@ -679,6 +700,10 @@ Public Class DocumentViewer buttonLastPage.Enabled = False buttonSettings.Enabled = False txtCurrentPage.Enabled = False + txtSearch.Enabled = False + btnSearch2.Enabled = False + btnNextHighlight.Enabled = False + btnPrevHighlight.Enabled = False Case ViewerMode.Excel buttonPrint.Enabled = False @@ -696,6 +721,10 @@ Public Class DocumentViewer buttonLastPage.Enabled = False buttonSettings.Enabled = False txtCurrentPage.Enabled = False + txtSearch.Enabled = False + btnSearch2.Enabled = False + btnNextHighlight.Enabled = False + btnPrevHighlight.Enabled = False End Select End Sub