From d89b4fd8242dd212268341f8f7f02d30330ae16a Mon Sep 17 00:00:00 2001 From: Dunestorm Date: Thu, 14 Mar 2019 19:23:47 +0000 Subject: [PATCH] Implemented light/default theme as well as refactored some code --- GBM/Forms/frmMain.vb | 7 ++- GBM/Managers/mgrThemeEngine.vb | 46 +++++++++++++--- GBM/My Project/Resources.Designer.vb | 80 ++++++++++++++++++++-------- GBM/My Project/Resources.resx | 20 +++++-- 4 files changed, 118 insertions(+), 35 deletions(-) diff --git a/GBM/Forms/frmMain.vb b/GBM/Forms/frmMain.vb index 4b60ad1..bd7f32a 100644 --- a/GBM/Forms/frmMain.vb +++ b/GBM/Forms/frmMain.vb @@ -1566,8 +1566,13 @@ Public Class frmMain ResetGameInfo() 'Initialise theme engine + InitThemeEngine() + End Sub + + Private Sub InitThemeEngine() Dim oThemeEngine As New mgrThemeEngine - oThemeEngine.SetTheme(mgrThemeEngine.eTheme.Dark) + oThemeEngine.SetTheme(mgrThemeEngine.eBaseTheme.Light) 'Will ultimately be changable via UI + BackColor = oThemeEngine.colBase gMonMainMenu.BackColor = oThemeEngine.colBase gMonMainMenu.ForeColor = oThemeEngine.colHighlightAlt diff --git a/GBM/Managers/mgrThemeEngine.vb b/GBM/Managers/mgrThemeEngine.vb index 10ed2b6..bc15078 100644 --- a/GBM/Managers/mgrThemeEngine.vb +++ b/GBM/Managers/mgrThemeEngine.vb @@ -8,18 +8,48 @@ Public Class mgrThemeEngine Public ReadOnly Property colHighlightAlt As Color - Public Enum eTheme + ''' + ''' Supported themes. + ''' + Public Enum eBaseTheme Dark + Light End Enum - Public Function SetTheme(thm As eTheme) + ''' + ''' Configures the base colors for the overall theme based on input. + ''' + ''' + ''' + Public Function SetTheme(_eBaseTheme As eBaseTheme) Dim selectedColor As Color - Select Case thm - Case eTheme.Dark - _colBase = New ColorConverter().ConvertFromString(mgrThemeEngine_Color_Dark) - _colBaseAlt = New ColorConverter().ConvertFromString(mgrThemeEngine_Color_Black) - _colHightlight = New ColorConverter().ConvertFromString(mgrThemeEngine_Color_White) - _colHighlightAlt = New ColorConverter().ConvertFromString(mgrThemeEngine_Color_Blue) + Select Case _eBaseTheme + Case eBaseTheme.Dark + _colBase = New ColorConverter().ConvertFromString( + mgrThemeEngine_Theme_Dark_Base) + + _colBaseAlt = New ColorConverter().ConvertFromString( + mgrThemeEngine_Theme_Dark_BaseAlt) + + _colHightlight = New ColorConverter().ConvertFromString( + mgrThemeEngine_Theme_Dark_Highlight) + + _colHighlightAlt = New ColorConverter().ConvertFromString( + mgrThemeEngine_Theme_Dark_HighlightAlt) + + Case eBaseTheme.Light + _colBase = New ColorConverter().ConvertFromString( + mgrThemeEngine_Theme_Light_Base) + + _colBaseAlt = New ColorConverter().ConvertFromString( + mgrThemeEngine_Theme_Light_BaseAlt) + + _colHightlight = New ColorConverter().ConvertFromString( + mgrThemeEngine_Theme_Light_Highlight) + + _colHighlightAlt = New ColorConverter().ConvertFromString( + mgrThemeEngine_Theme_Light_HighlightAlt) + End Select Return selectedColor End Function diff --git a/GBM/My Project/Resources.Designer.vb b/GBM/My Project/Resources.Designer.vb index 08bd9d1..0f59327 100644 --- a/GBM/My Project/Resources.Designer.vb +++ b/GBM/My Project/Resources.Designer.vb @@ -6825,39 +6825,75 @@ Namespace My.Resources End Get End Property - ''' - ''' Looks up a localized string similar to 0,0,0. - ''' - Friend ReadOnly Property mgrThemeEngine_Color_Black() As String - Get - Return ResourceManager.GetString("mgrThemeEngine_Color_Black", resourceCulture) - End Get - End Property - - ''' - ''' Looks up a localized string similar to 0,131,255. - ''' - Friend ReadOnly Property mgrThemeEngine_Color_Blue() As String - Get - Return ResourceManager.GetString("mgrThemeEngine_Color_Blue", resourceCulture) - End Get - End Property - ''' ''' Looks up a localized string similar to 25,25,25. ''' - Friend ReadOnly Property mgrThemeEngine_Color_Dark() As String + Friend ReadOnly Property mgrThemeEngine_Theme_Dark_Base() As String Get - Return ResourceManager.GetString("mgrThemeEngine_Color_Dark", resourceCulture) + Return ResourceManager.GetString("mgrThemeEngine_Theme_Dark_Base", resourceCulture) + End Get + End Property + + ''' + ''' Looks up a localized string similar to 0,0,0. + ''' + Friend ReadOnly Property mgrThemeEngine_Theme_Dark_BaseAlt() As String + Get + Return ResourceManager.GetString("mgrThemeEngine_Theme_Dark_BaseAlt", resourceCulture) End Get End Property ''' ''' Looks up a localized string similar to 255,255,255. ''' - Friend ReadOnly Property mgrThemeEngine_Color_White() As String + Friend ReadOnly Property mgrThemeEngine_Theme_Dark_Highlight() As String Get - Return ResourceManager.GetString("mgrThemeEngine_Color_White", resourceCulture) + Return ResourceManager.GetString("mgrThemeEngine_Theme_Dark_Highlight", resourceCulture) + End Get + End Property + + ''' + ''' Looks up a localized string similar to 0,131,255. + ''' + Friend ReadOnly Property mgrThemeEngine_Theme_Dark_HighlightAlt() As String + Get + Return ResourceManager.GetString("mgrThemeEngine_Theme_Dark_HighlightAlt", resourceCulture) + End Get + End Property + + ''' + ''' Looks up a localized string similar to 240,240,240. + ''' + Friend ReadOnly Property mgrThemeEngine_Theme_Light_Base() As String + Get + Return ResourceManager.GetString("mgrThemeEngine_Theme_Light_Base", resourceCulture) + End Get + End Property + + ''' + ''' Looks up a localized string similar to 255,255,255. + ''' + Friend ReadOnly Property mgrThemeEngine_Theme_Light_BaseAlt() As String + Get + Return ResourceManager.GetString("mgrThemeEngine_Theme_Light_BaseAlt", resourceCulture) + End Get + End Property + + ''' + ''' Looks up a localized string similar to 0,0,0. + ''' + Friend ReadOnly Property mgrThemeEngine_Theme_Light_Highlight() As String + Get + Return ResourceManager.GetString("mgrThemeEngine_Theme_Light_Highlight", resourceCulture) + End Get + End Property + + ''' + ''' Looks up a localized string similar to 0,0,0. + ''' + Friend ReadOnly Property mgrThemeEngine_Theme_Light_HighlightAlt() As String + Get + Return ResourceManager.GetString("mgrThemeEngine_Theme_Light_HighlightAlt", resourceCulture) End Get End Property diff --git a/GBM/My Project/Resources.resx b/GBM/My Project/Resources.resx index af341f0..91f3bcb 100644 --- a/GBM/My Project/Resources.resx +++ b/GBM/My Project/Resources.resx @@ -2374,16 +2374,28 @@ Current Folder - + 0,0,0 - + 0,131,255 - + 25,25,25 - + 255,255,255 + + 240,240,240 + + + 255,255,255 + + + 0,0,0 + + + 0,0,0 + \ No newline at end of file