diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/App.config b/ShiftOS.Modding.VB.LegacySkinConverter/App.config new file mode 100644 index 0000000..88fa402 --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/LegacySkinEngine.vb b/ShiftOS.Modding.VB.LegacySkinConverter/LegacySkinEngine.vb new file mode 100644 index 0000000..395dcc5 --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/LegacySkinEngine.vb @@ -0,0 +1,505 @@ +Imports System.IO +Imports System.Drawing +Imports System.Windows.Forms + +Module Skins +#Region "Declarations" + 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 + + Const loadedskin As String = "temp_skn/" + + ' 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 + + 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 + + End If + End Sub +End Module \ No newline at end of file diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/Module1.vb b/ShiftOS.Modding.VB.LegacySkinConverter/Module1.vb new file mode 100644 index 0000000..957658e --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/Module1.vb @@ -0,0 +1,107 @@ +Imports ShiftOS.Engine +Imports ShiftOS.Objects +Imports ShiftOS.Objects.ShiftFS +Imports System.IO +Imports System.IO.Compression +Imports System.Collections.Generic +Imports System.Drawing + +Module Module1 + + Sub Main() + ShiftOS.WinForms.Program.Main() + End Sub + +End Module + + +Public Class SkinConverterCommands + + + + + + + Public Shared Function Convert(args As Dictionary(Of String, Object)) + Dim input = args("in").ToString() + Dim output = args("out").ToString() + + Dim bytes As Byte() = Utils.ReadAllBytes(input) + System.IO.File.WriteAllBytes("temp.skn", bytes) + + If System.IO.Directory.Exists("temp_skn") Then + System.IO.Directory.Delete("temp_skn", True) + End If + Console.WriteLine("Cleaning environment...") + System.IO.Directory.CreateDirectory("temp_skn") + + ZipFile.ExtractToDirectory("temp.skn", "temp_skn") + Console.WriteLine("Extracted skin... loading it now.") + loadimages() + Dim skn = New Skin() + + 'Get images. + + Console.Write("Processing images...") + skn.DesktopBackgroundImage = SaveImageToBinary(desktopbackground) + skn.DesktopPanelBackground = SaveImageToBinary(desktoppanel) + skn.CloseButtonImage = SaveImageToBinary(closebtn) + skn.MaximizeButtonImage = SaveImageToBinary(rollbtn) + skn.MinimizeButtonImage = SaveImageToBinary(minbtn) + skn.PanelButtonBG = SaveImageToBinary(panelbutton) + skn.AppLauncherImage = SaveImageToBinary(applauncher) + skn.TitleBarBackground = SaveImageToBinary(titlebar) + skn.TitleLeftCornerWidth = titlebarcornerwidth + skn.TitleRightCornerWidth = titlebarcornerwidth + skn.ShowTitleCorners = True 'I don't know what the legacy version of this is. + skn.TitleLeftBG = SaveImageToBinary(leftcorner) + skn.TitleRightBG = SaveImageToBinary(rightcorner) + skn.LeftBorderBG = SaveImageToBinary(borderleft) + skn.RightBorderBG = SaveImageToBinary(borderright) + skn.BottomBorderBG = SaveImageToBinary(borderbottom) + skn.BottomLBorderBG = SaveImageToBinary(bottomleftcorner) + skn.BottomRBorderBG = SaveImageToBinary(bottomrightcorner) + + Console.WriteLine(" ...done.") + + Console.Write("Converting desktop settings...") + + skn.AppLauncherText = Skins.applicationlaunchername + skn.AppLauncherHolderSize = New Size(applaunchermenuholderwidth, desktoppanelheight) + skn.AppLauncherFromLeft = New Point(0, 0) + skn.DesktopPanelHeight = desktoppanelheight + Select Case desktoppanelposition + Case "Top" + skn.DesktopPanelPosition = 0 + Case "Bottom" + skn.DesktopPanelPosition = 1 + End Select + skn.DesktopPanelColor = desktoppanelcolour + skn.DesktopPanelClockBackgroundColor = clockbackgroundcolor + skn.DesktopPanelClockColor = clocktextcolour + skn.DesktopPanelClockFont = New Font(panelclocktextfont, panelclocktextsize, panelclocktextstyle) + skn.PanelButtonColor = panelbuttoncolour + skn.PanelButtonTextColor = panelbuttontextcolour + skn.PanelButtonFont = New Font(panelbuttontextfont, panelbuttontextsize, panelbuttontextstyle) + skn.PanelButtonHolderFromLeft = panelbuttoninitialgap + skn.PanelButtonSize = New Size(panelbuttonwidth, panelbuttonheight) + skn.PanelButtonFromLeft = New Point(panelbuttongap, panelbuttonfromtop) + skn.DesktopPanelClockFromRight = New Point(0, 0) + + Console.WriteLine(" ...done") + + Utils.WriteAllText(output, skn.ToString()) + Infobox.Show("Skin converted!", "We have successfully converted your skin and saved it to " + output + ". Go ahead and load it!") + Return True + End Function + + + Private Shared Function SaveImageToBinary(img As Image) As Byte() + If img Is Nothing Then Return Nothing + + Using mStream As New MemoryStream + img.Save(mStream, Imaging.ImageFormat.Png) + Return mStream.ToArray() + End Using + End Function +End Class diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Application.Designer.vb b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Application.Designer.vb new file mode 100644 index 0000000..88dd01c --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Application.Designer.vb @@ -0,0 +1,13 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Application.myapp b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Application.myapp new file mode 100644 index 0000000..e62f1a5 --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + false + false + 0 + true + 0 + 2 + true + diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/My Project/AssemblyInfo.vb b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..9326cc7 --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' General Information about an assembly is controlled through the following +' set of attributes. Change these attribute values to modify the information +' associated with an assembly. + +' Review the values of the assembly attributes + + + + + + + + + + +'The following GUID is for the ID of the typelib if this project is exposed to COM + + +' Version information for an assembly consists of the following four values: +' +' Major Version +' Minor Version +' Build Number +' Revision +' +' You can specify all the values or you can default the Build and Revision Numbers +' by using the '*' as shown below: +' + + + diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Resources.Designer.vb b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Resources.Designer.vb new file mode 100644 index 0000000..5fc46e0 --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Resources.Designer.vb @@ -0,0 +1,62 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My.Resources + + 'This class was auto-generated by the StronglyTypedResourceBuilder + 'class via a tool like ResGen or Visual Studio. + 'To add or remove a member, edit your .ResX file then rerun ResGen + 'with the /str option, or rebuild your VS project. + ''' + ''' A strongly-typed resource class, for looking up localized strings, etc. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Returns the cached ResourceManager instance used by this class. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ShiftOS.Modding.VB.LegacySkinConverter.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Overrides the current thread's CurrentUICulture property for all + ''' resource lookups using this strongly typed resource class. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set(ByVal value As Global.System.Globalization.CultureInfo) + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Resources.resx b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Settings.Designer.vb b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Settings.Designer.vb new file mode 100644 index 0000000..b219bbc --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings) + +#Region "My.Settings Auto-Save Functionality" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.ShiftOS.Modding.VB.LegacySkinConverter.My.MySettings + Get + Return Global.ShiftOS.Modding.VB.LegacySkinConverter.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Settings.settings b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Settings.settings new file mode 100644 index 0000000..85b890b --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/ShiftOS.Modding.VB.LegacySkinConverter.vbproj b/ShiftOS.Modding.VB.LegacySkinConverter/ShiftOS.Modding.VB.LegacySkinConverter.vbproj new file mode 100644 index 0000000..f0e5cc2 --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/ShiftOS.Modding.VB.LegacySkinConverter.vbproj @@ -0,0 +1,144 @@ + + + + + Debug + AnyCPU + {A8CBA038-C147-4A8D-B170-DE6D9ECE8364} + Exe + ShiftOS.Modding.VB.LegacySkinConverter.Module1 + ShiftOS.Modding.VB.LegacySkinConverter + ShiftOS.Modding.VB.LegacySkinConverter + 512 + Console + v4.5.2 + true + + + AnyCPU + true + full + true + true + bin\Debug\ + ShiftOS.Modding.VB.LegacySkinConverter.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + AnyCPU + pdbonly + false + true + true + bin\Release\ + ShiftOS.Modding.VB.LegacySkinConverter.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + On + + + Binary + + + Off + + + On + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + SkinConverter.vb + + + UserControl + + + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + SkinConverter.vb + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + + {a069089a-8962-4607-b2b2-4cf4a371066e} + ShiftOS.Objects + + + {2295d2e2-3a00-4e02-b66f-b961ac329fe6} + ShiftOS.WinForms + + + {7c979b07-0585-4033-a110-e5555b9d6651} + ShiftOS.Engine + + + + + \ No newline at end of file diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/SkinConverter.Designer.vb b/ShiftOS.Modding.VB.LegacySkinConverter/SkinConverter.Designer.vb new file mode 100644 index 0000000..8150b42 --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/SkinConverter.Designer.vb @@ -0,0 +1,143 @@ + _ +Partial Class SkinConverter + Inherits System.Windows.Forms.UserControl + + 'UserControl overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Me.Panel1 = New System.Windows.Forms.Panel() + Me.txtin = New System.Windows.Forms.TextBox() + Me.txtout = New System.Windows.Forms.TextBox() + Me.Label1 = New System.Windows.Forms.Label() + Me.Label2 = New System.Windows.Forms.Label() + Me.btnin = New System.Windows.Forms.Button() + Me.btnout = New System.Windows.Forms.Button() + Me.btnconvert = New System.Windows.Forms.Button() + Me.Panel1.SuspendLayout() + Me.SuspendLayout() + ' + 'Panel1 + ' + Me.Panel1.Controls.Add(Me.btnconvert) + Me.Panel1.Controls.Add(Me.btnout) + Me.Panel1.Controls.Add(Me.btnin) + Me.Panel1.Controls.Add(Me.Label2) + Me.Panel1.Controls.Add(Me.Label1) + Me.Panel1.Controls.Add(Me.txtout) + Me.Panel1.Controls.Add(Me.txtin) + Me.Panel1.Dock = System.Windows.Forms.DockStyle.Fill + Me.Panel1.Location = New System.Drawing.Point(0, 0) + Me.Panel1.Name = "Panel1" + Me.Panel1.Size = New System.Drawing.Size(397, 116) + Me.Panel1.TabIndex = 0 + ' + 'txtin + ' + Me.txtin.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.txtin.Location = New System.Drawing.Point(81, 21) + Me.txtin.Name = "txtin" + Me.txtin.ReadOnly = True + Me.txtin.Size = New System.Drawing.Size(221, 20) + Me.txtin.TabIndex = 0 + ' + 'txtout + ' + Me.txtout.Anchor = CType(((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left) _ + Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.txtout.Location = New System.Drawing.Point(81, 58) + Me.txtout.Name = "txtout" + Me.txtout.ReadOnly = True + Me.txtout.Size = New System.Drawing.Size(221, 20) + Me.txtout.TabIndex = 1 + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(14, 24) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(50, 13) + Me.Label1.TabIndex = 2 + Me.Label1.Text = "Input file:" + ' + 'Label2 + ' + Me.Label2.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(14, 61) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(58, 13) + Me.Label2.TabIndex = 3 + Me.Label2.Text = "Output file:" + ' + 'btnin + ' + Me.btnin.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.btnin.Location = New System.Drawing.Point(308, 19) + Me.btnin.Name = "btnin" + Me.btnin.Size = New System.Drawing.Size(75, 23) + Me.btnin.TabIndex = 4 + Me.btnin.Text = "Browse" + Me.btnin.UseVisualStyleBackColor = True + ' + 'btnout + ' + Me.btnout.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.btnout.Location = New System.Drawing.Point(308, 55) + Me.btnout.Name = "btnout" + Me.btnout.Size = New System.Drawing.Size(75, 23) + Me.btnout.TabIndex = 5 + Me.btnout.Text = "Browse" + Me.btnout.UseVisualStyleBackColor = True + ' + 'btnconvert + ' + Me.btnconvert.Anchor = System.Windows.Forms.AnchorStyles.Bottom + Me.btnconvert.AutoSize = True + Me.btnconvert.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink + Me.btnconvert.Location = New System.Drawing.Point(168, 84) + Me.btnconvert.Name = "btnconvert" + Me.btnconvert.Size = New System.Drawing.Size(54, 23) + Me.btnconvert.TabIndex = 6 + Me.btnconvert.Text = "Convert" + Me.btnconvert.UseVisualStyleBackColor = True + ' + 'SkinConverter + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.Panel1) + Me.Name = "SkinConverter" + Me.Size = New System.Drawing.Size(397, 116) + Me.Panel1.ResumeLayout(False) + Me.Panel1.PerformLayout() + Me.ResumeLayout(False) + + End Sub + + Friend WithEvents Panel1 As System.Windows.Forms.Panel + Friend WithEvents btnconvert As System.Windows.Forms.Button + Friend WithEvents btnout As System.Windows.Forms.Button + Friend WithEvents btnin As System.Windows.Forms.Button + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents txtout As System.Windows.Forms.TextBox + Friend WithEvents txtin As System.Windows.Forms.TextBox +End Class diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/SkinConverter.resx b/ShiftOS.Modding.VB.LegacySkinConverter/SkinConverter.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/SkinConverter.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/ShiftOS.Modding.VB.LegacySkinConverter/SkinConverter.vb b/ShiftOS.Modding.VB.LegacySkinConverter/SkinConverter.vb new file mode 100644 index 0000000..95eba35 --- /dev/null +++ b/ShiftOS.Modding.VB.LegacySkinConverter/SkinConverter.vb @@ -0,0 +1,49 @@ +Imports ShiftOS.Engine + + + +Public Class SkinConverter + Implements IShiftOSWindow + + Private Sub btnin_Click(sender As Object, e As EventArgs) Handles btnin.Click + FileSkimmerBackend.GetFile(New String() {".skn"}, FileOpenerStyle.Open, New Action(Of String)(Sub(path As String) + txtin.Text = path + End Sub)) + End Sub + + Private Sub btnout_Click(sender As Object, e As EventArgs) Handles btnout.Click + FileSkimmerBackend.GetFile(New String() {".skn"}, FileOpenerStyle.Save, New Action(Of String)(Sub(path As String) + txtout.Text = path + End Sub)) + + End Sub + + Private Sub btnconvert_Click(sender As Object, e As EventArgs) Handles btnconvert.Click + If String.IsNullOrWhiteSpace(txtin.Text) Then + Infobox.Show("No input", "Please select a legacy skin file as your input.") + Return + End If + If String.IsNullOrWhiteSpace(txtout.Text) Then + Infobox.Show("No output", "Please select an output file path to place the converted skin.") + Return + End If + + + TerminalBackend.InvokeCommand("skinning.convert{in:""" + txtin.Text + """,out:""" + txtout.Text + """}") + + End Sub + + Public Sub OnLoad() Implements IShiftOSWindow.OnLoad + + End Sub + + Public Sub OnSkinLoad() Implements IShiftOSWindow.OnSkinLoad + End Sub + + Public Function OnUnload() As Boolean Implements IShiftOSWindow.OnUnload + Return True + End Function + + Public Sub OnUpgrade() Implements IShiftOSWindow.OnUpgrade + End Sub +End Class diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/App.config b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/App.config new file mode 100644 index 0000000..2ae8254 --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/Form1.Designer.vb b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/Form1.Designer.vb new file mode 100644 index 0000000..e6b13e6 --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/Form1.Designer.vb @@ -0,0 +1,30 @@ + _ +Partial Class Form1 + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + components = New System.ComponentModel.Container() + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Text = "Form1" + End Sub + +End Class diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/Form1.vb b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/Form1.vb new file mode 100644 index 0000000..17d6595 --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/Form1.vb @@ -0,0 +1,3 @@ +Public Class Form1 + +End Class diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Application.Designer.vb b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Application.Designer.vb new file mode 100644 index 0000000..0ad91da --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Application.Designer.vb @@ -0,0 +1,38 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + 'NOTE: This file is auto-generated; do not modify it directly. To make changes, + ' or if you encounter build errors in this file, go to the Project Designer + ' (go to Project Properties or double-click the My Project node in + ' Solution Explorer), and make changes on the Application tab. + ' + Partial Friend Class MyApplication + + _ + Public Sub New() + MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows) + Me.IsSingleInstance = false + Me.EnableVisualStyles = true + Me.SaveMySettingsOnExit = true + Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses + End Sub + + _ + Protected Overrides Sub OnCreateMainForm() + Me.MainForm = Global.ShiftOS.Modding.VisualBasic.LegacySkinConverter.Form1 + End Sub + End Class +End Namespace diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Application.myapp b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Application.myapp new file mode 100644 index 0000000..1243847 --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Application.myapp @@ -0,0 +1,11 @@ + + + true + Form1 + false + 0 + true + 0 + 0 + true + diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/AssemblyInfo.vb b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..541667c --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' General Information about an assembly is controlled through the following +' set of attributes. Change these attribute values to modify the information +' associated with an assembly. + +' Review the values of the assembly attributes + + + + + + + + + + +'The following GUID is for the ID of the typelib if this project is exposed to COM + + +' Version information for an assembly consists of the following four values: +' +' Major Version +' Minor Version +' Build Number +' Revision +' +' You can specify all the values or you can default the Build and Revision Numbers +' by using the '*' as shown below: +' + + + diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Resources.Designer.vb b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Resources.Designer.vb new file mode 100644 index 0000000..7bf550c --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Resources.Designer.vb @@ -0,0 +1,62 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My.Resources + + 'This class was auto-generated by the StronglyTypedResourceBuilder + 'class via a tool like ResGen or Visual Studio. + 'To add or remove a member, edit your .ResX file then rerun ResGen + 'with the /str option, or rebuild your VS project. + ''' + ''' A strongly-typed resource class, for looking up localized strings, etc. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Returns the cached ResourceManager instance used by this class. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ShiftOS.Modding.VisualBasic.LegacySkinConverter.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Overrides the current thread's CurrentUICulture property for all + ''' resource lookups using this strongly typed resource class. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set(ByVal value As Global.System.Globalization.CultureInfo) + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Resources.resx b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Settings.Designer.vb b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Settings.Designer.vb new file mode 100644 index 0000000..9dc19d0 --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings) + +#Region "My.Settings Auto-Save Functionality" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.ShiftOS.Modding.VisualBasic.LegacySkinConverter.My.MySettings + Get + Return Global.ShiftOS.Modding.VisualBasic.LegacySkinConverter.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Settings.settings b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Settings.settings new file mode 100644 index 0000000..85b890b --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/ShiftOS.Modding.VisualBasic.LegacySkinConverter/ShiftOS.Modding.VisualBasic.LegacySkinConverter.vbproj b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/ShiftOS.Modding.VisualBasic.LegacySkinConverter.vbproj new file mode 100644 index 0000000..2d630f0 --- /dev/null +++ b/ShiftOS.Modding.VisualBasic.LegacySkinConverter/ShiftOS.Modding.VisualBasic.LegacySkinConverter.vbproj @@ -0,0 +1,126 @@ + + + + + Debug + AnyCPU + {EFC07D36-BE53-4F98-A0D8-E72554136A9A} + WinExe + ShiftOS.Modding.VisualBasic.LegacySkinConverter.My.MyApplication + ShiftOS.Modding.VisualBasic.LegacySkinConverter + ShiftOS.Modding.VisualBasic.LegacySkinConverter + 512 + WindowsForms + v4.5.2 + true + + + AnyCPU + true + full + true + true + bin\Debug\ + ShiftOS.Modding.VisualBasic.LegacySkinConverter.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + AnyCPU + pdbonly + false + true + true + bin\Release\ + ShiftOS.Modding.VisualBasic.LegacySkinConverter.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + On + + + Binary + + + Off + + + On + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Form + + + Form1.vb + Form + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + + \ No newline at end of file diff --git a/ShiftOS_TheReturn.sln b/ShiftOS_TheReturn.sln index 78a3822..65165ab 100644 --- a/ShiftOS_TheReturn.sln +++ b/ShiftOS_TheReturn.sln @@ -15,6 +15,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShiftOS.MFSProfiler", "Shif EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShiftOS.Modding.VirtualMachine", "ShiftOS.Modding.VirtualMachine\ShiftOS.Modding.VirtualMachine.csproj", "{FF0B1831-AC9F-4093-9747-DDAE4467516A}" EndProject +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ShiftOS.Modding.VB.LegacySkinConverter", "ShiftOS.Modding.VB.LegacySkinConverter\ShiftOS.Modding.VB.LegacySkinConverter.vbproj", "{A8CBA038-C147-4A8D-B170-DE6D9ECE8364}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -45,6 +47,10 @@ Global {FF0B1831-AC9F-4093-9747-DDAE4467516A}.Debug|Any CPU.Build.0 = Debug|Any CPU {FF0B1831-AC9F-4093-9747-DDAE4467516A}.Release|Any CPU.ActiveCfg = Release|Any CPU {FF0B1831-AC9F-4093-9747-DDAE4467516A}.Release|Any CPU.Build.0 = Release|Any CPU + {A8CBA038-C147-4A8D-B170-DE6D9ECE8364}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A8CBA038-C147-4A8D-B170-DE6D9ECE8364}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A8CBA038-C147-4A8D-B170-DE6D9ECE8364}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A8CBA038-C147-4A8D-B170-DE6D9ECE8364}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/ShiftOS_TheReturn/Skinning.cs b/ShiftOS_TheReturn/Skinning.cs index 5f5c402..80945b8 100644 --- a/ShiftOS_TheReturn/Skinning.cs +++ b/ShiftOS_TheReturn/Skinning.cs @@ -132,6 +132,11 @@ namespace ShiftOS.Engine { //Todo: When making Shifter GUI we need to label all these with proper Shifter attributes to get 'em displaying in the right places. + public override string ToString() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + [ShifterMeta("Windows")] [ShifterCategory("Titlebar")] [RequiresUpgrade("shift_title_text")]