aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS/skins.vb
diff options
context:
space:
mode:
authorFloppyDiskDrive <[email protected]>2017-09-21 17:16:49 -0500
committerFloppyDiskDrive <[email protected]>2017-09-21 17:16:49 -0500
commitcf1bf85e01c8d99f052c09b72d2fb2bbbc0b99b0 (patch)
treefe0d16447fab2a74b6161b4c981c036a93ed8239 /ShiftOS/skins.vb
parent30b6a49d5b0e720eee131e970761ece7c6ed7ef0 (diff)
downloadshiftos-rewind-cf1bf85e01c8d99f052c09b72d2fb2bbbc0b99b0.tar.gz
shiftos-rewind-cf1bf85e01c8d99f052c09b72d2fb2bbbc0b99b0.tar.bz2
shiftos-rewind-cf1bf85e01c8d99f052c09b72d2fb2bbbc0b99b0.zip
Added the SOS code (VB and C#)
Very, very incomplete (C# isn't *remotely* complete.)
Diffstat (limited to 'ShiftOS/skins.vb')
-rw-r--r--ShiftOS/skins.vb866
1 files changed, 866 insertions, 0 deletions
diff --git a/ShiftOS/skins.vb b/ShiftOS/skins.vb
new file mode 100644
index 0000000..867541b
--- /dev/null
+++ b/ShiftOS/skins.vb
@@ -0,0 +1,866 @@
+Imports System.IO
+Module Skins
+#Region "Declarations"
+ Dim savepath As String = ShiftOSDesktop.ShiftOSPath
+ Dim firstrun As Boolean = True
+ 'WINDOW SETTINGS/IMAGES
+ 'images
+ Public titlebar As Image = Nothing
+ Public titlebarlayout As String = 3
+ Public borderleft As Image = Nothing
+ Public borderleftlayout As String = 3
+ Public borderright As Image = Nothing
+ Public borderrightlayout As String = 3
+ Public borderbottom As Image = Nothing
+ Public borderbottomlayout As String = 3
+ Public closebtn As Image = Nothing
+ Public closebtnlayout As String = 3
+ Public closebtnhover As Image = Nothing
+ Public closebtnclick As Image = Nothing
+ Public rollbtn As Image = Nothing
+ Public rollbtnlayout As String = 3
+ Public rollbtnhover As Image = Nothing
+ Public rollbtnclick As Image = Nothing
+ Public minbtn As Image = Nothing
+ Public minbtnlayout As String = 3
+ Public minbtnhover As Image = Nothing
+ Public minbtnclick As Image = Nothing
+ Public rightcorner As Image = Nothing
+ Public rightcornerlayout As String = 3
+ Public leftcorner As Image = Nothing
+ Public leftcornerlayout As String = 3
+ ' Late entry: need to fix window code to include this
+ Public bottomleftcorner As Image = Nothing
+ Public bottomleftcornerlayout As String = 3
+ Public bottomrightcorner As Image = Nothing
+ Public bottomrightcornerlayout As String = 3
+ Public bottomleftcornercolour As Color = Color.Gray
+ Public bottomrightcornercolour As Color = Color.Gray
+
+ Public enablebordercorners As Boolean = False
+
+ ' settings
+ Public closebtnsize As Size = New Size(22, 22)
+ Public rollbtnsize As Size = New Size(22, 22)
+ Public minbtnsize As Size = New Size(22, 22)
+ Public titlebarheight As Integer = 30
+ Public closebtnfromtop As Integer = 5
+ Public closebtnfromside As Integer = 2
+ Public rollbtnfromtop As Integer = 5
+ Public rollbtnfromside As Integer = 26
+ Public minbtnfromtop As Integer = 5
+ Public minbtnfromside As Integer = 52
+ Public borderwidth As Integer = 2
+ Public enablecorners As Boolean = False
+ Public titlebarcornerwidth As Integer = 5
+ Public titleiconfromside As Integer = 4
+ Public titleiconfromtop As Integer = 4
+ 'colours
+ Public titlebarcolour As Color = Color.Gray
+ Public borderleftcolour As Color = Color.Gray
+ Public borderrightcolour As Color = Color.Gray
+ Public borderbottomcolour As Color = Color.Gray
+ Public closebtncolour As Color = Color.Black
+ Public closebtnhovercolour As Color = Color.Black
+ Public closebtnclickcolour As Color = Color.Black
+ Public rollbtncolour As Color = Color.Black
+ Public rollbtnhovercolour As Color = Color.Black
+ Public rollbtnclickcolour As Color = Color.Black
+ Public minbtncolour As Color = Color.Black
+ Public minbtnhovercolour As Color = Color.Black
+ Public minbtnclickcolour As Color = Color.Black
+ Public rightcornercolour As Color = Color.Gray
+ Public leftcornercolour As Color = Color.Gray
+ ' Text
+ Public titletextfontfamily As String = "Microsoft Sans Serif"
+ Public titletextfontsize As Integer = 10
+ Public titletextfontstyle As String = FontStyle.Bold
+ Public titletextpos As String = "Left"
+ Public titletextfromtop As Integer = 3
+ Public titletextfromside As Integer = 24
+ Public titletextcolour As Color = Color.White
+
+ 'DESKTOP
+ Public desktoppanelcolour As Color = Color.Gray
+ Public desktopbackgroundcolour As Color
+ Public desktoppanelheight As Integer = 24
+ Public desktoppanelposition As String = "Top"
+ Public clocktextcolour As Color = Color.Black
+ Public clockbackgroundcolor As Color = Color.Gray
+ Public panelclocktexttop As Integer = 3
+ Public panelclocktextsize As Integer = 10
+ Public panelclocktextfont As String = "Byington"
+ Public panelclocktextstyle As FontStyle = FontStyle.Bold
+ Public applauncherbuttoncolour As Color = Color.Gray
+ Public applauncherbuttonclickedcolour As Color = Color.Gray
+ Public applauncherbackgroundcolour As Color = Color.Gray
+ Public applaunchermouseovercolour As Color = Color.Gray
+ Public applicationsbuttontextcolour As Color = Color.Black
+ Public applicationbuttonheight As Integer = 24
+ Public applicationbuttontextsize As Integer = 10
+ Public applicationbuttontextfont As String = "Byington"
+ Public applicationbuttontextstyle As FontStyle = FontStyle.Bold
+ Public applicationlaunchername As String = "Applications"
+ Public titletextposition As String = "Left"
+ Public applaunchermenuholderwidth As Integer = 100
+ Public panelbuttonicontop As Integer = 3
+ Public panelbuttoniconside As Integer = 4
+ Public panelbuttoniconsize As Integer = 16
+ Public panelbuttonheight As Integer = 20
+ Public panelbuttonwidth As Integer = 185
+ Public panelbuttoncolour As Color = Color.Black
+ Public panelbuttontextcolour As Color = Color.White
+ Public panelbuttontextsize As Integer = 10
+ Public panelbuttontextfont As String = "Byington"
+ Public panelbuttontextstyle As FontStyle = FontStyle.Regular
+ Public panelbuttontextside As Integer = 16
+ Public panelbuttontexttop As Integer = 2
+ Public panelbuttongap As Integer = 4
+ Public panelbuttonfromtop As Integer = 2
+ Public panelbuttoninitialgap As Integer = 8
+
+ Public launcheritemsize As Integer = 10
+ Public launcheritemfont As String = "Byington"
+ Public launcheritemstyle As FontStyle = FontStyle.Regular
+ Public launcheritemcolour As Color = Color.Black
+
+ ' Images
+ Public desktoppanel As Image = Nothing
+ Public desktoppanellayout As String = 3
+ Public desktopbackground As Image = Nothing
+ Public desktopbackgroundlayout As String = 3
+ Public panelclock As Image = Nothing
+ Public panelclocklayout As String = 3
+ Public applaunchermouseover As Image = Nothing
+ Public applauncher As Image = Nothing
+ Public applauncherlayout As String = 3
+ Public applauncherclick As Image = Nothing
+ Public panelbutton As Image = Nothing
+ Public panelbuttonlayout As String = 3
+
+ 'Below is all for the Desktop Icons patch.
+
+ Public enabledraggableicons As Boolean = True
+ Public icontextcolor As Color = Color.White
+ Public showicons As Boolean = True
+ Public iconview1 As View = View.LargeIcon
+ Public iconview2 As View = View.Tile
+
+ 'DevX's Advanced App Launcher (coded by The Ultimate Hacker)
+
+ Public topBarHeight As Integer = 50
+ Public bottomBarHeight As Integer = 50
+ Public placesSide As String = "Left"
+ Public startHeight As Integer = 526
+ Public startWidth As Integer = 320
+ Public shutdownstring As String = "Shut Down ShiftOS"
+ Public userNamePosition = "Middle, Right"
+ Public recentIconsHorizontal As Boolean = False
+ Public usernametextcolor As Color = Color.White
+ Public usernamefont As String = "Trebuchet MS"
+ Public usernamefontsize As Integer = 12
+ Public usernamefontstyle As FontStyle = FontStyle.Bold
+ Public userNamePanelBackgroundColor As Color = Color.Gray
+ Public userNamePanelBackground As Image
+ Public powerPanelBackgroundColor As Color = Color.Gray
+ Public powerPanelBackgroundImage As Image
+ Public shutdownTextColor As Color = Color.White
+ Public shutdownTextFont As String = "Trebuchet MS"
+ Public shutdownTextSize As Integer = 12
+ Public shutdownTextStyle As FontStyle = FontStyle.Italic
+ Public usrPanelBackgroundLayout As ImageLayout = ImageLayout.Stretch
+ Public pwrPanelBackgroundLayout As ImageLayout = ImageLayout.Stretch
+ Public useClassicAppLauncher As Boolean = True
+
+
+ '0.0.9 ALPHA 2
+
+ 'Login Screen
+
+ Public autologin As Boolean = True
+ Public fullScreen As Boolean = False
+ Public inputfont As String = "Trebuchet MS"
+ Public inputfontsize As Integer = 12
+ Public inputfontstyle As FontStyle = FontStyle.Regular
+ Public inputforecolor As Color = Color.Gray
+ Public inputbackcolor As Color = Color.Black
+ Public buttonfont As String = "Trebuchet MS"
+ Public buttonfontsize As Integer = 12
+ Public buttonfontstyle As FontStyle = FontStyle.Italic
+
+ Public userimagesize As Integer = 128
+ Public userimagelocation As Point = New Point(36, 202)
+ Public userimage As Image
+ Public userimagelayout As ImageLayout = ImageLayout.Stretch
+
+ Public loginbg As Image
+ Public loginbgcolor As Color = Color.Black
+ Public loginbglayout As ImageLayout = ImageLayout.Stretch
+
+ 'Locations...
+
+ Public userTextboxX As Integer = 171
+ Public userTextBoxY As Integer = 202
+ Public passTextBoxX As Integer = 171
+ Public passTextBoxY As Integer = 243
+ Public loginbtnX As Integer = 268
+ Public loginbtnY As Integer = 286
+ Public shutdownbtnX As Integer = 1755
+ Public shutdownbtnY As Integer = 979
+
+
+ Private Function GetImage(ByVal fileName As String) As Bitmap
+ Dim ret As Bitmap
+ Using img As Image = Image.FromFile(fileName)
+ ret = New Bitmap(img)
+ End Using
+ Return ret
+ End Function
+
+#End Region
+
+ ' LOAD SKIN FROM SKN FILE
+ Public Sub loadsknfile(ByVal filepath As String)
+ If Directory.Exists(loadedskin) Then My.Computer.FileSystem.DeleteDirectory(savepath + "Shiftum42\Skins\Loaded", FileIO.DeleteDirectoryOption.DeleteAllContents)
+ Directory.CreateDirectory(savepath + "Shiftum42\Skins\Loaded")
+ System.IO.Compression.ZipFile.ExtractToDirectory(filepath, savepath + "Shiftum42\Skins\Loaded")
+ loadimages()
+ End Sub
+ ' LOAD SKIN FROM SAVE FOLDER
+ Public Sub loadimages()
+ If File.Exists(loadedskin & "userpic") Then
+ userimage = GetImage(loadedskin & "userpic")
+ End If
+ If File.Exists(loadedskin & "loginbg") Then
+ loginbg = GetImage(loadedskin & "loginbg")
+ End If
+ If File.Exists(loadedskin & "userbar") Then
+ userNamePanelBackground = GetImage(loadedskin & "userbar")
+ End If
+ If File.Exists(loadedskin & "powerbar") Then
+ powerPanelBackgroundImage = GetImage(loadedskin & "powerbar")
+ End If
+ If File.Exists(loadedskin & "titlebar") Then
+ titlebar = GetImage(loadedskin & "titlebar")
+ Else : titlebar = Nothing
+ End If
+ If File.Exists(loadedskin & "borderleft") Then
+ borderleft = GetImage(loadedskin & "borderleft")
+ Else : borderleft = Nothing
+ End If
+ If File.Exists(loadedskin & "borderright") Then
+ borderright = GetImage(loadedskin & "borderright".Clone)
+ Else : borderright = Nothing
+ End If
+ If File.Exists(loadedskin & "borderbottom") Then
+ borderbottom = GetImage(loadedskin & "borderbottom".Clone)
+ Else : borderbottom = Nothing
+ End If
+ If File.Exists(loadedskin & "closebtn") Then
+ closebtn = GetImage(loadedskin & "closebtn".Clone)
+ Else : closebtn = Nothing
+ End If
+ If File.Exists(loadedskin & "closebtnhover") Then
+ closebtnhover = GetImage(loadedskin & "closebtnhover".Clone)
+ Else : closebtnhover = Nothing
+ End If
+ If File.Exists(loadedskin & "closebtnclick") Then
+ closebtnclick = GetImage(loadedskin & "closebtnclick".Clone)
+ Else : closebtnclick = Nothing
+ End If
+ If File.Exists(loadedskin & "rollbtn") Then
+ rollbtn = GetImage(loadedskin & "rollbtn".Clone)
+ Else : rollbtn = Nothing
+ End If
+ If File.Exists(loadedskin & "rollbtnhover") Then
+ rollbtnhover = GetImage(loadedskin & "rollbtnhover".Clone)
+ Else : rollbtnhover = Nothing
+ End If
+ If File.Exists(loadedskin & "rollbtnclick") Then
+ rollbtnclick = GetImage(loadedskin & "rollbtnclick".Clone)
+ Else : rollbtnclick = Nothing
+ End If
+ If File.Exists(loadedskin & "minbtn") Then
+ minbtn = GetImage(loadedskin & "minbtn".Clone)
+ Else : minbtn = Nothing
+ End If
+ If File.Exists(loadedskin & "minbtnhover") Then
+ minbtnhover = GetImage(loadedskin & "minbtnhover".Clone)
+ Else : minbtnhover = Nothing
+ End If
+ If File.Exists(loadedskin & "minbtnclick") Then
+ minbtnclick = GetImage(loadedskin & "minbtnclick".Clone)
+ Else : minbtnclick = Nothing
+ End If
+ If File.Exists(loadedskin & "rightcorner") Then
+ rightcorner = GetImage(loadedskin & "rightcorner".Clone)
+ Else : rightcorner = Nothing
+ End If
+ If File.Exists(loadedskin & "leftcorner") Then
+ leftcorner = GetImage(loadedskin & "leftcorner".Clone)
+ Else : leftcorner = Nothing
+ End If
+ If File.Exists(loadedskin & "desktoppanel") Then
+ desktoppanel = GetImage(loadedskin & "desktoppanel".Clone)
+ Else : desktoppanel = Nothing
+ End If
+ If File.Exists(loadedskin & "desktopbackground") Then
+ desktopbackground = GetImage(loadedskin & "desktopbackground".Clone)
+ Else : desktopbackground = Nothing
+ End If
+ If File.Exists(loadedskin & "panelbutton") Then
+ panelbutton = GetImage(loadedskin & "panelbutton".Clone)
+ Else : panelbutton = Nothing
+ End If
+ If File.Exists(loadedskin & "applaunchermouseover") Then
+ applaunchermouseover = GetImage(loadedskin & "applaunchermouseover".Clone)
+ Else : applaunchermouseover = Nothing
+ End If
+ If File.Exists(loadedskin & "applauncher") Then
+ applauncher = GetImage(loadedskin & "applauncher".Clone)
+ Else : applauncher = Nothing
+ End If
+ If File.Exists(loadedskin & "applauncherclick") Then
+ applauncherclick = GetImage(loadedskin & "applauncherclick".Clone)
+ Else : applauncherclick = Nothing
+ End If
+ If File.Exists(loadedskin & "panelclock") Then
+ panelclock = GetImage(loadedskin & "panelclock".Clone)
+ Else : panelclock = Nothing
+ End If
+ If File.Exists(loadedskin & "bottomleftcorner") Then
+ bottomleftcorner = GetImage(loadedskin & "bottomleftcorner".Clone)
+ Else : bottomleftcorner = Nothing
+ End If
+ If File.Exists(loadedskin & "bottomrightcorner") Then
+ bottomrightcorner = GetImage(loadedskin & "bottomrightcorner".Clone)
+ Else : bottomrightcorner = Nothing
+ End If
+ 'load settings
+ Dim loaddata(200) As String
+ If File.Exists(loadedskin & "data.dat") Then
+ Dim sr As StreamReader = New StreamReader(loadedskin & "data.dat")
+
+ For i As Integer = 0 To 200 Step 1
+ loaddata(i) = sr.ReadLine
+ If i = 200 Then
+ sr.Close()
+ Exit For
+ End If
+ Next
+
+ ' settings
+
+
+ closebtnsize = New Size(loaddata(1), loaddata(2))
+ rollbtnsize = New Size(loaddata(3), loaddata(4))
+ minbtnsize = New Size(loaddata(5), loaddata(6))
+ titlebarheight = loaddata(7)
+ closebtnfromtop = loaddata(8)
+ closebtnfromside = loaddata(9)
+ rollbtnfromtop = loaddata(10)
+ rollbtnfromside = loaddata(11)
+ minbtnfromtop = loaddata(12)
+ minbtnfromside = loaddata(13)
+ borderwidth = loaddata(14)
+ enablecorners = loaddata(15)
+ titlebarcornerwidth = loaddata(16)
+ titleiconfromside = loaddata(17)
+ titleiconfromtop = loaddata(18)
+ titlebarcolour = Color.FromArgb(loaddata(19))
+ borderleftcolour = Color.FromArgb(loaddata(20))
+ borderrightcolour = Color.FromArgb(loaddata(21))
+ borderbottomcolour = Color.FromArgb(loaddata(22))
+ closebtncolour = Color.FromArgb(loaddata(23))
+ closebtnhovercolour = Color.FromArgb(loaddata(24))
+ closebtnclickcolour = Color.FromArgb(loaddata(25))
+ rollbtncolour = Color.FromArgb(loaddata(26))
+ rollbtnhovercolour = Color.FromArgb(loaddata(27))
+ rollbtnclickcolour = Color.FromArgb(loaddata(28))
+ minbtncolour = Color.FromArgb(loaddata(29))
+ minbtnhovercolour = Color.FromArgb(loaddata(30))
+ minbtnclickcolour = Color.FromArgb(loaddata(31))
+ rightcornercolour = Color.FromArgb(loaddata(32))
+ leftcornercolour = Color.FromArgb(loaddata(33))
+ bottomrightcornercolour = Color.FromArgb(loaddata(34))
+ bottomleftcornercolour = Color.FromArgb(loaddata(35))
+ titletextfontfamily = loaddata(36)
+ titletextfontsize = loaddata(37)
+ titletextfontstyle = loaddata(38)
+ titletextpos = loaddata(39)
+ titletextfromtop = loaddata(40)
+ titletextfromside = loaddata(41)
+ titletextcolour = Color.FromArgb(loaddata(42))
+ desktoppanelcolour = Color.FromArgb(loaddata(43))
+ desktopbackgroundcolour = Color.FromArgb(loaddata(44))
+ desktoppanelheight = loaddata(45)
+ desktoppanelposition = loaddata(46)
+ clocktextcolour = Color.FromArgb(loaddata(47))
+ clockbackgroundcolor = Color.FromArgb(loaddata(48))
+ panelclocktexttop = loaddata(49)
+ panelclocktextsize = loaddata(50)
+ panelclocktextfont = loaddata(51)
+ panelclocktextstyle = loaddata(52)
+ applauncherbuttoncolour = Color.FromArgb(loaddata(53))
+ applauncherbuttonclickedcolour = Color.FromArgb(loaddata(54))
+ applauncherbackgroundcolour = Color.FromArgb(loaddata(55))
+ applaunchermouseovercolour = Color.FromArgb(loaddata(56))
+ applicationsbuttontextcolour = Color.FromArgb(loaddata(57))
+ applicationbuttonheight = loaddata(58)
+ applicationbuttontextsize = loaddata(59)
+ applicationbuttontextfont = loaddata(60)
+ applicationbuttontextstyle = loaddata(61)
+ applicationlaunchername = loaddata(62)
+ titletextposition = loaddata(63)
+ applaunchermenuholderwidth = loaddata(64)
+ panelbuttonicontop = loaddata(65)
+ panelbuttoniconside = loaddata(66)
+ panelbuttoniconsize = loaddata(67)
+ panelbuttonheight = loaddata(68)
+ panelbuttonwidth = loaddata(69)
+ panelbuttoncolour = Color.FromArgb(loaddata(70))
+ panelbuttontextcolour = Color.FromArgb(loaddata(71))
+ panelbuttontextsize = loaddata(72)
+ panelbuttontextfont = loaddata(73)
+ panelbuttontextstyle = loaddata(74)
+ panelbuttontextside = loaddata(75)
+ panelbuttontexttop = loaddata(76)
+ panelbuttongap = loaddata(77)
+ panelbuttonfromtop = loaddata(78)
+ panelbuttoninitialgap = loaddata(79)
+
+ 'layout stuff
+ titlebarlayout = loaddata(89)
+ borderleftlayout = loaddata(90)
+ borderrightlayout = loaddata(91)
+ borderbottomlayout = loaddata(92)
+ closebtnlayout = loaddata(93)
+ rollbtnlayout = loaddata(94)
+ minbtnlayout = loaddata(95)
+ rightcornerlayout = loaddata(96)
+ leftcornerlayout = loaddata(97)
+ desktoppanellayout = loaddata(98)
+ desktopbackgroundlayout = loaddata(99)
+ panelclocklayout = loaddata(100)
+ applauncherlayout = loaddata(101)
+ panelbuttonlayout = loaddata(102)
+ bottomleftcornerlayout = loaddata(103)
+ bottomrightcornerlayout = loaddata(104)
+ ' End of 0.0.8 beta 6 save file, check if exists for future features
+ If Not loaddata(105) = "" Then launcheritemcolour = Color.FromArgb(loaddata(105))
+ If Not loaddata(106) = "" Then launcheritemfont = loaddata(106)
+ If Not loaddata(107) = "" Then launcheritemsize = loaddata(107)
+ If Not loaddata(108) = "" Then launcheritemstyle = loaddata(108)
+ If Not loaddata(109) = "" Then enablebordercorners = loaddata(109)
+
+ 'for adding extra features, check:
+
+ If loaddata(110) = "" Or loaddata(110) = "End of skin data" Then loaddata(110) = enabledraggableicons Else enabledraggableicons = loaddata(110)
+ If loaddata(111) = "" Or loaddata(111) = "End of skin data" Then loaddata(111) = icontextcolor.ToArgb Else icontextcolor = Color.FromArgb(loaddata(111))
+ If loaddata(112) = "" Or loaddata(112) = "End of skin data" Then loaddata(112) = showicons Else showicons = loaddata(112)
+ If loaddata(113) = "" Or loaddata(113) = "End of skin data" Then loaddata(113) = iconview1 Else iconview1 = loaddata(113)
+ Try
+ If loaddata(114) = "" Then topBarHeight = 50 Else topBarHeight = loaddata(114)
+ Catch ex As Exception
+ topBarHeight = 50
+ infobox.showinfo("Error - Bad Skin File", "It appears that there was an error loading parts of this skin. The unloadable data has been reset to default values.")
+ End Try
+ If loaddata(115) = "" Then bottomBarHeight = 50 Else bottomBarHeight = loaddata(115)
+ If loaddata(116) = "" Then placesSide = "Left" Else placesSide = loaddata(116)
+ If loaddata(117) = "" Then startHeight = 526 Else startHeight = loaddata(117)
+ If loaddata(118) = "" Then startWidth = 320 Else startWidth = loaddata(118)
+ If loaddata(119) = "" Then shutdownstring = "Shut Down ShiftOS" Else shutdownstring = loaddata(119)
+ If loaddata(120) = "" Then userNamePosition = "Middle, Right" Else userNamePosition = loaddata(120)
+ If loaddata(121) = "" Then recentIconsHorizontal = False Else recentIconsHorizontal = loaddata(121)
+ If loaddata(122) = "" Then usernametextcolor = Color.White Else usernametextcolor = Color.FromArgb(loaddata(122))
+ If loaddata(123) = "" Then usernamefont = "Trebuchet MS" Else usernamefont = loaddata(123)
+ If loaddata(124) = "" Then usernamefontsize = 12 Else usernamefontsize = loaddata(124)
+ If loaddata(125) = "" Then usernamefontstyle = FontStyle.Bold Else usernamefontstyle = loaddata(125)
+ If loaddata(126) = "" Then userNamePanelBackgroundColor = Color.Gray Else userNamePanelBackgroundColor = Color.FromArgb(loaddata(126))
+ If loaddata(127) = "" Then powerPanelBackgroundColor = Color.Gray Else powerPanelBackgroundColor = Color.FromArgb(loaddata(127))
+ If loaddata(128) = "" Then shutdownTextColor = Color.White Else shutdownTextColor = Color.FromArgb(loaddata(128))
+ If loaddata(129) = "" Then shutdownTextFont = "Trebuchet MS" Else shutdownTextFont = loaddata(129)
+ If loaddata(130) = "" Then shutdownTextSize = 12 Else shutdownTextSize = loaddata(130)
+ If loaddata(131) = "" Then shutdownTextStyle = FontStyle.Italic Else shutdownTextStyle = loaddata(132)
+ If loaddata(132) = "" Then usrPanelBackgroundLayout = ImageLayout.Stretch Else usrPanelBackgroundLayout = loaddata(132)
+ If loaddata(133) = "" Then pwrPanelBackgroundLayout = ImageLayout.Stretch Else pwrPanelBackgroundLayout = loaddata(133)
+ If loaddata(134) = "" Then useClassicAppLauncher = False Else useClassicAppLauncher = loaddata(134)
+ If loaddata(135) = "" Then autologin = True Else autologin = loaddata(135)
+ If loaddata(136) = "" Then fullScreen = False Else fullScreen = loaddata(136)
+ If loaddata(137) = "" Then inputfont = "Trebuchet MS" Else inputfont = loaddata(137)
+ If loaddata(138) = "" Then inputfontsize = 12 Else inputfontsize = loaddata(138)
+ If loaddata(139) = "" Then inputfontstyle = FontStyle.Regular Else inputfontstyle = loaddata(139)
+ If loaddata(140) = "" Then inputforecolor = Color.Gray Else inputforecolor = Color.FromArgb(loaddata(140))
+ If loaddata(141) = "" Then inputbackcolor = Color.Black Else inputbackcolor = Color.FromArgb(loaddata(141))
+ If loaddata(142) = "" Then buttonfont = "Trebuchet MS" Else buttonfont = loaddata(142)
+ If loaddata(143) = "" Then buttonfontsize = 12 Else buttonfontsize = loaddata(143)
+ If loaddata(144) = "" Then buttonfontstyle = FontStyle.Italic Else buttonfontstyle = loaddata(144)
+ If loaddata(145) = "" Then userimagesize = 128 Else userimagesize = loaddata(145)
+ If loaddata(146) = "" And loaddata(147) = "" Then userimagelocation = New Point(36, 202) Else userimagelocation = New Point(loaddata(146), loaddata(147))
+ If loaddata(148) = "" Then userimagelayout = ImageLayout.Stretch Else userimagelayout = loaddata(148)
+ If loaddata(149) = "" Then loginbgcolor = Color.Black Else loginbgcolor = Color.FromArgb(loaddata(149))
+ If loaddata(150) = "" Then loginbglayout = ImageLayout.Stretch Else loginbglayout = loaddata(150)
+
+ Else
+ setupdefaults()
+ End If
+ ' Christmas easteregg
+ Try ' If user's PC uses weird/non-numeric dating system - eg: http://puu.sh/eFq6l/8da8a03617.png
+ Dim d() As String = Split(Date.Today, "/")
+ If (d(0) = 25 And d(1) = 12) Or (d(0) = 12 And d(1) = 25) Then
+ desktopbackground = My.Resources.christmaseasteregg
+ desktopbackgroundlayout = 2
+ desktopbackgroundcolour = Color.Black
+ End If
+ Catch ex As Exception
+ End Try
+ applyskin()
+ End Sub
+ ' SET SKIN
+ Public Sub applyskin()
+ ShiftOSDesktop.addtitlebars()
+ ShiftOSDesktop.setupdesktop()
+ End Sub
+ ' SAVE TO SKN FILE
+ Public Sub saveskin(ByVal path As String)
+ If Not File.Exists(path) Then
+ Dim sw As StreamWriter = New StreamWriter(Paths.loadedskin & "SKN-version") 'tells skin loader which system to use when openning the file
+ sw.WriteLine("Name of skinning system used to create this skn file:")
+ sw.WriteLine("2.0 disposal-free skinning")
+ sw.WriteLine("Skinning system created by william.1008 on December 2014, based on 1.0 system by DevX")
+ sw.Close()
+ saveskinfiles(False)
+ Compression.ZipFile.CreateFromDirectory(Paths.loadedskin, path)
+ File.Delete(Paths.loadedskin & "SKN-version")
+ Else
+ infobox.showinfo("File Exists", "That file location is already taken, please choose another.")
+ End If
+ End Sub
+ ' SAVE TO SAVE FOLDER
+ Public Sub saveskinfiles(ByVal apply As Boolean)
+ If File.Exists(Paths.loadedskin) Then
+ Directory.Delete(Paths.loadedskin)
+ End If
+ Directory.CreateDirectory(Paths.loadedskin)
+ saveimage(titlebar, "titlebar")
+ saveimage(borderleft, "borderleft")
+ saveimage(borderright, "borderright")
+ saveimage(borderbottom, "borderbottom")
+ saveimage(closebtn, "closebtn")
+ saveimage(closebtnhover, "closebtnhover")
+ saveimage(closebtnclick, "closebtnclick")
+ saveimage(rollbtn, "rollbtn")
+ saveimage(rollbtnhover, "rollbtnhover")
+ saveimage(rollbtnclick, "rollbtnclick")
+ saveimage(minbtn, "minbtn")
+ saveimage(minbtnhover, "minbtnhover")
+ saveimage(minbtnclick, "minbtnclick")
+ saveimage(rightcorner, "rightcorner")
+ saveimage(leftcorner, "leftcorner")
+ saveimage(desktoppanel, "desktoppanel")
+ saveimage(desktopbackground, "desktopbackground")
+ saveimage(panelclock, "panelclock")
+ saveimage(applaunchermouseover, "applaunchermouseover")
+ saveimage(applauncher, "applauncher")
+ saveimage(applauncherclick, "applauncherclick")
+ saveimage(panelbutton, "panelbutton")
+ saveimage(bottomleftcorner, "bottomleftcorner")
+ saveimage(bottomrightcorner, "bottomrightcorner")
+ saveimage(userNamePanelBackground, "userbar")
+ saveimage(powerPanelBackgroundImage, "powerbar")
+ saveimage(userimage, "userpic")
+ saveimage(loginbg, "loginbg")
+ 'save settings to dat file
+ Dim savedata(200) As String
+ ' setting and colour as saved in the order they are declared, image's are saved in sepporate preset files,
+ ' image layout options are saved at the end of file
+ savedata(0) = "ShiftOS skin data - Beware: Editing may result in skinning errors"
+ savedata(2) = closebtnsize.Height
+ savedata(1) = closebtnsize.Width
+ savedata(4) = rollbtnsize.Height
+ savedata(3) = rollbtnsize.Width
+ savedata(6) = minbtnsize.Height
+ savedata(5) = minbtnsize.Width
+ savedata(7) = titlebarheight
+ savedata(8) = closebtnfromtop
+ savedata(9) = closebtnfromside
+ savedata(10) = rollbtnfromtop
+ savedata(11) = rollbtnfromside
+ savedata(12) = minbtnfromtop
+ savedata(13) = minbtnfromside
+ savedata(14) = borderwidth
+ savedata(15) = enablecorners
+ savedata(16) = titlebarcornerwidth
+ savedata(17) = titleiconfromside
+ savedata(18) = titleiconfromtop
+ savedata(19) = titlebarcolour.ToArgb
+ savedata(20) = borderleftcolour.ToArgb
+ savedata(21) = borderrightcolour.ToArgb
+ savedata(22) = borderbottomcolour.ToArgb
+ savedata(23) = closebtncolour.ToArgb
+ savedata(24) = closebtnhovercolour.ToArgb
+ savedata(25) = closebtnclickcolour.ToArgb
+ savedata(26) = rollbtncolour.ToArgb
+ savedata(27) = rollbtnhovercolour.ToArgb
+ savedata(28) = rollbtnclickcolour.ToArgb
+ savedata(29) = minbtncolour.ToArgb
+ savedata(30) = minbtnhovercolour.ToArgb
+ savedata(31) = minbtnclickcolour.ToArgb
+ savedata(32) = rightcornercolour.ToArgb
+ savedata(33) = leftcornercolour.ToArgb
+ savedata(34) = bottomrightcornercolour.ToArgb
+ savedata(35) = bottomleftcornercolour.ToArgb
+ savedata(36) = titletextfontfamily
+ savedata(37) = titletextfontsize
+ savedata(38) = titletextfontstyle
+ savedata(39) = titletextpos
+ savedata(40) = titletextfromtop
+ savedata(41) = titletextfromside
+ savedata(42) = titletextcolour.ToArgb
+ savedata(43) = desktoppanelcolour.ToArgb
+ savedata(44) = desktopbackgroundcolour.ToArgb
+ savedata(45) = desktoppanelheight
+ savedata(46) = desktoppanelposition
+ savedata(47) = clocktextcolour.ToArgb
+ savedata(48) = clockbackgroundcolor.ToArgb
+ savedata(49) = panelclocktexttop
+ savedata(50) = panelclocktextsize
+ savedata(51) = panelclocktextfont
+ savedata(52) = panelclocktextstyle
+ savedata(53) = applauncherbuttoncolour.ToArgb
+ savedata(54) = applauncherbuttonclickedcolour.ToArgb
+ savedata(55) = applauncherbackgroundcolour.ToArgb
+ savedata(56) = applaunchermouseovercolour.ToArgb
+ savedata(57) = applicationsbuttontextcolour.ToArgb
+ savedata(58) = applicationbuttonheight
+ savedata(59) = applicationbuttontextsize
+ savedata(60) = applicationbuttontextfont
+ savedata(61) = applicationbuttontextstyle
+ savedata(62) = applicationlaunchername
+ savedata(63) = titletextposition
+ savedata(64) = applaunchermenuholderwidth
+ savedata(65) = panelbuttonicontop
+ savedata(66) = panelbuttoniconside
+ savedata(67) = panelbuttoniconsize
+ savedata(68) = panelbuttonheight
+ savedata(69) = panelbuttonwidth
+ savedata(70) = panelbuttoncolour.ToArgb
+ savedata(71) = panelbuttontextcolour.ToArgb
+ savedata(72) = panelbuttontextsize
+ savedata(73) = panelbuttontextfont
+ savedata(74) = panelbuttontextstyle
+ savedata(75) = panelbuttontextside
+ savedata(76) = panelbuttontexttop
+ savedata(77) = panelbuttongap
+ savedata(78) = panelbuttonfromtop
+ savedata(79) = panelbuttoninitialgap
+ 'Image layout options
+ savedata(89) = titlebarlayout
+ savedata(90) = borderleftlayout
+ savedata(91) = borderrightlayout
+ savedata(92) = borderbottomlayout
+ savedata(93) = closebtnlayout
+ savedata(94) = rollbtnlayout
+ savedata(95) = minbtnlayout
+ savedata(96) = rightcornerlayout
+ savedata(97) = leftcornerlayout
+ savedata(98) = desktoppanellayout
+ savedata(99) = desktopbackgroundlayout
+ savedata(100) = panelclocklayout
+ savedata(101) = applauncherlayout
+ savedata(102) = panelbuttonlayout
+ savedata(103) = bottomleftcornerlayout
+ savedata(104) = bottomrightcornerlayout
+
+ savedata(105) = launcheritemcolour.ToArgb
+ savedata(106) = launcheritemfont
+ savedata(107) = launcheritemsize
+ savedata(108) = launcheritemstyle
+ savedata(109) = enablebordercorners
+ savedata(110) = enabledraggableicons
+ savedata(111) = icontextcolor.ToArgb
+ savedata(112) = showicons
+ savedata(113) = iconview1
+ savedata(114) = topBarHeight
+ savedata(115) = bottomBarHeight
+ savedata(116) = placesSide
+ savedata(117) = startHeight
+ savedata(118) = startWidth
+ savedata(119) = shutdownstring
+ savedata(120) = userNamePosition
+ savedata(121) = recentIconsHorizontal
+ savedata(122) = usernametextcolor.ToArgb
+ savedata(123) = usernamefont
+ savedata(124) = usernamefontsize
+ savedata(125) = usernamefontstyle
+ savedata(126) = userNamePanelBackgroundColor.ToArgb
+ savedata(127) = powerPanelBackgroundColor.ToArgb
+ savedata(128) = shutdownTextColor.ToArgb
+ savedata(129) = shutdownTextFont
+ savedata(130) = shutdownTextSize
+ savedata(131) = shutdownTextStyle
+ savedata(132) = usrPanelBackgroundLayout
+ savedata(133) = pwrPanelBackgroundLayout
+ savedata(134) = useClassicAppLauncher
+ savedata(135) = autologin
+ savedata(136) = fullScreen
+ savedata(137) = inputfont
+ savedata(138) = inputfontsize
+ savedata(139) = inputfontstyle
+ savedata(140) = inputforecolor.ToArgb
+ savedata(141) = inputbackcolor.ToArgb
+ savedata(142) = buttonfont
+ savedata(143) = buttonfontsize
+ savedata(144) = buttonfontstyle
+ savedata(145) = userimagesize
+ savedata(146) = userimagelocation.X
+ savedata(147) = userimagelocation.Y
+ savedata(148) = userimagelayout
+ savedata(149) = loginbgcolor.ToArgb
+ savedata(150) = loginbglayout
+
+
+ ' End of skin data text was at line 110, if adding future items, check for "End of skin data" on line 110
+ savedata(200) = "End of skin data"
+ File.WriteAllLines(Paths.loadedskin & "data.dat", savedata)
+ If apply = True Then
+ applyskin()
+ End If
+ End Sub
+ Public Sub setupdefaults()
+ titlebar = Nothing
+ titlebarlayout = 3
+ borderleft = Nothing
+ borderleftlayout = 3
+ borderright = Nothing
+ borderrightlayout = 3
+ borderbottom = Nothing
+ borderbottomlayout = 3
+ closebtn = Nothing
+ closebtnlayout = 3
+ closebtnhover = Nothing
+ closebtnclick = Nothing
+ rollbtn = Nothing
+ rollbtnlayout = 3
+ rollbtnhover = Nothing
+ rollbtnclick = Nothing
+ minbtn = Nothing
+ minbtnlayout = 3
+ minbtnhover = Nothing
+ minbtnclick = Nothing
+ rightcorner = Nothing
+ rightcornerlayout = 3
+ leftcorner = Nothing
+ leftcornerlayout = 3
+ bottomleftcorner = Nothing
+ bottomleftcornerlayout = 3
+ bottomrightcorner = Nothing
+ bottomrightcornerlayout = 3
+ bottomleftcornercolour = Color.Gray
+ bottomrightcornercolour = Color.Gray
+ enablebordercorners = False
+ closebtnsize = New Size(22, 22)
+ rollbtnsize = New Size(22, 22)
+ minbtnsize = New Size(22, 22)
+ titlebarheight = 30
+ closebtnfromtop = 5
+ closebtnfromside = 2
+ rollbtnfromtop = 5
+ rollbtnfromside = 26
+ minbtnfromtop = 5
+ minbtnfromside = 52
+ borderwidth = 2
+ enablecorners = False
+ titlebarcornerwidth = 5
+ titleiconfromside = 4
+ titleiconfromtop = 4
+ titlebarcolour = Color.Gray
+ borderleftcolour = Color.Gray
+ borderrightcolour = Color.Gray
+ borderbottomcolour = Color.Gray
+ closebtncolour = Color.Black
+ closebtnhovercolour = Color.Black
+ closebtnclickcolour = Color.Black
+ rollbtncolour = Color.Black
+ rollbtnhovercolour = Color.Black
+ rollbtnclickcolour = Color.Black
+ minbtncolour = Color.Black
+ minbtnhovercolour = Color.Black
+ minbtnclickcolour = Color.Black
+ rightcornercolour = Color.Gray
+ leftcornercolour = Color.Gray
+ titletextfontfamily = "Microsoft Sans Serif"
+ titletextfontsize = 10
+ titletextfontstyle = FontStyle.Bold
+ titletextpos = "Left"
+ titletextfromtop = 3
+ titletextfromside = 24
+ titletextcolour = Color.White
+ desktoppanelcolour = Color.Gray
+ desktopbackgroundcolour = Color.Black
+ desktoppanelheight = 24
+ desktoppanelposition = "Top"
+ clocktextcolour = Color.Black
+ clockbackgroundcolor = Color.Gray
+ panelclocktexttop = 3
+ panelclocktextsize = 10
+ panelclocktextfont = "Byington"
+ panelclocktextstyle = FontStyle.Bold
+ applauncherbuttoncolour = Color.Gray
+ applauncherbuttonclickedcolour = Color.Gray
+ applauncherbackgroundcolour = Color.Gray
+ applaunchermouseovercolour = Color.Gray
+ applicationsbuttontextcolour = Color.Black
+ applicationbuttonheight = 24
+ applicationbuttontextsize = 10
+ applicationbuttontextfont = "Byington"
+ applicationbuttontextstyle = FontStyle.Bold
+ applicationlaunchername = "Applications"
+ titletextposition = "Left"
+ applaunchermenuholderwidth = 100
+ panelbuttonicontop = 3
+ panelbuttoniconside = 4
+ panelbuttoniconsize = 16
+ panelbuttonheight = 20
+ panelbuttonwidth = 185
+ panelbuttoncolour = Color.Black
+ panelbuttontextcolour = Color.White
+ panelbuttontextsize = 10
+ panelbuttontextfont = "Byington"
+ panelbuttontextstyle = FontStyle.Regular
+ panelbuttontextside = 16
+ panelbuttontexttop = 2
+ panelbuttongap = 4
+ panelbuttonfromtop = 2
+ panelbuttoninitialgap = 8
+ launcheritemsize = 10
+ launcheritemfont = "Byington"
+ launcheritemstyle = FontStyle.Regular
+ launcheritemcolour = Color.Black
+ desktoppanel = Nothing
+ desktoppanellayout = 3
+ desktopbackground = Nothing
+ desktopbackgroundlayout = 3
+ panelclock = Nothing
+ panelclocklayout = 3
+ applaunchermouseover = Nothing
+ applauncher = Nothing
+ applauncherlayout = 3
+ applauncherclick = Nothing
+ panelbutton = Nothing
+ panelbuttonlayout = 3
+ enabledraggableicons = True
+ End Sub
+ Private Sub saveimage(ByVal img As Image, ByVal name As String)
+ If Not IsNothing(img) Then
+ If File.Exists(loadedskin & name) Then File.Delete(loadedskin & name)
+ Try
+ img.Save(loadedskin & name, System.Drawing.Imaging.ImageFormat.Png)
+ Catch ex As Exception
+ infobox.showinfo("Saving Error", "Oops, an error occured when saving the file " & loadedskin & name & ". Please contact the devs to report the problem.")
+ End Try
+ Else
+ If File.Exists(loadedskin & name) Then File.Delete(loadedskin & name)
+ End If
+ End Sub
+End Module \ No newline at end of file