summaryrefslogtreecommitdiff
path: root/shiftos_next/APIs/Skins.vb
blob: b3816909be1e7e4b232fe0150d8ae202a4015e9b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
Module Skins
    '<summary>
    '   This module allows for skinning. Simply that.
    '</summary>

#Region "Basic Window Manager"
    Public titlebarcolor As Color = Color.Gray
    Public titlebartextcolor As Color = Color.White
    Public desktopbackcolor As Color = Color.Black
    Public newterminalbuttonbackcolor As Color = Color.Black
    Public newterminalbuttontextcolor As Color = Color.White

    'Load Skin from Save File

    Public Sub loadskindata()
        Try
            Dim loadlines() As String = IO.File.ReadAllLines(bwmskin + "data.bsk")
            titlebarcolor = Color.FromArgb(loadlines(0))
            titlebartextcolor = Color.FromArgb(loadlines(1))
            desktopbackcolor = Color.FromArgb(loadlines(2))
            newterminalbuttonbackcolor = Color.FromArgb(loadlines(3))
            newterminalbuttontextcolor = Color.FromArgb(loadlines(4))
            BasicWM.Desktop.Redraw()
        Catch ex As Exception
            saveskindata()
            loadskindata()
        End Try


    End Sub

    'Save to save data

    Public Sub saveskindata()
        Dim savelines(200) As String
        savelines(0) = titlebarcolor.ToArgb
        savelines(1) = titlebartextcolor.ToArgb
        savelines(2) = desktopbackcolor.ToArgb
        savelines(3) = newterminalbuttonbackcolor.ToArgb
        savelines(4) = newterminalbuttontextcolor.ToArgb
        Try
            IO.File.WriteAllLines(bwmskin + "data.bsk", savelines)
        Catch ex As Exception
            IO.Directory.CreateDirectory(bwmskin)
            IO.File.WriteAllLines(bwmskin + "data.bsk", savelines)
        End Try
        BasicWM.Desktop.Redraw()
    End Sub

    'Copy skin file to save data

    Public Sub loadskin(file As String)
        If IO.Directory.Exists(bwmskin) Then
            IO.Directory.Delete(bwmskin, True)
            IO.Directory.CreateDirectory(bwmskin)
            IO.File.Copy(file, bwmskin + "data.bsk")
            loadskindata()
        End If
    End Sub

    'Copy skin from save data to file

    Public Sub saveskin(file As String)
        Dim savelines() As String = IO.File.ReadAllLines(bwmskin + "data.bsk")
        IO.File.WriteAllLines(file, savelines)
    End Sub
#End Region


End Module