Sub Class_Globals
Private xui As XUI
Public themeStyle As String
Public palettes As Map
Public palettesPrimary As Map
Public palettesSecondary As Map
Public palettesTertiary As Map
Public palettesNeutral As Map
Public palettesNeutralvariant As Map
Public schemes As Map
Public light As Map
Public light_medium_contrast As Map
Public light_high_contrast As Map
Public dark As Map
Public dark_medium_contrast As Map
Public dark_high_contrast As Map
End Sub
'Initializes the object. You can add parameters to this method if needed.
Public Sub Initialize()
palettes.Initialize
palettesPrimary.Initialize
palettesSecondary.Initialize
palettesTertiary.Initialize
palettesNeutral.Initialize
palettesNeutralvariant.Initialize
schemes.Initialize
light.Initialize
light_medium_contrast.Initialize
light_high_contrast.Initialize
dark.Initialize
dark_medium_contrast.Initialize
dark_high_contrast.Initialize
End Sub
Public Sub getFile(fn As String) As String
Private strFileContent As String
strFileContent = File.ReadString(File.DirAssets, fn)
Log("File contains")
' Log(strFileContent)
Return(strFileContent)
End Sub
Public Sub getColors(fn As String)
Dim json_str As String = getFile(fn)
Dim parser As JSONParser
parser.Initialize(json_str)
Dim jRoot As Map = parser.NextObject
Dim extendedColors As List = jRoot.Get("extendedColors") 'ignore
Dim seed As String = jRoot.Get("seed") 'ignore
palettes = jRoot.Get("palettes")
palettesSecondary = palettes.Get("secondary") 'ignore
palettesTertiary = palettes.Get("tertiary") 'ignore
palettesNeutral = palettes.Get("neutral") 'ignore
palettesNeutralvariant = palettes.Get("neutralvariant") 'ignore
palettesPrimary = palettes.Get("primary") 'ignore
Dim coreColors As Map = jRoot.Get("coreColors") 'ignore
LogColor(coreColors, xui.Color_Green)
schemes = jRoot.Get("schemes")
Log(schemes.Get("light"))
light = schemes.Get("light") 'ignore
light_medium_contrast = schemes.Get("light-medium-contrast") 'ignore
light_high_contrast = schemes.Get("light-high-contrast") 'ignore
dark = schemes.Get("dark") 'ignore
dark_medium_contrast = schemes.Get("dark-medium_contrast") 'ignore
dark_high_contrast = schemes.Get("dark-high_contrast") 'ignore
LogColor(light, xui.Color_Cyan)
LogColor(light_medium_contrast, xui.Color_Magenta)
LogColor(light_high_contrast, xui.Color_Cyan)
End Sub
Public Sub ColorToHex(clr As Int) As String
Dim bc As ByteConverter
Return bc.HexFromBytes(bc.IntsToBytes(Array As Int(clr)))
End Sub
Public Sub HexToColor(Hex As String) As Int
Dim bc As ByteConverter
If Hex.StartsWith("#") Then
Hex = Hex.SubString(1)
Else If Hex.StartsWith("0x") Then
Hex = Hex.SubString(2)
End If
If Hex.Length = 6 Then
Hex = "FF" & Hex
End If
Dim ints() As Int = bc.IntsFromBytes(bc.HexToBytes(Hex))
Return ints(0)
End Sub