mirror of
https://github.com/TheUltimateHacker/ShiftOS.git
synced 2025-01-22 09:01:58 -05:00
4caacce50c
ShiftOS is a game about evolving an experimental operating system called "ShiftOS" from a completely black and white text based command line based OS to a fully graphical operating system filled with advanced features and beautiful colours. The level of customization will exceed the levels of real world operating systems
624 lines
No EOL
30 KiB
VB.net
624 lines
No EOL
30 KiB
VB.net
Imports System.IO
|
|
Imports System.Drawing.Drawing2D
|
|
Imports System.Globalization
|
|
Imports System.Windows.Forms
|
|
|
|
Public Class File_Saver
|
|
Public rolldownsize As Integer
|
|
Public oldbordersize As Integer
|
|
Public oldtitlebarheight As Integer
|
|
Public justopened As Boolean = False
|
|
Public needtorollback As Boolean = False
|
|
Public minimumsizewidth As Integer = 400
|
|
Public minimumsizeheight As Integer = 177
|
|
|
|
Dim itemsdeleted As Integer
|
|
Dim filetype As Integer
|
|
Public saveextention As String = ".txt"
|
|
Public savingprogram As String = "textpad"
|
|
|
|
Private Sub Template_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
|
justopened = True
|
|
setuptitlebar()
|
|
setupborders()
|
|
ShiftOSDesktop.setcolours()
|
|
Me.Left = (Screen.PrimaryScreen.Bounds.Width - Me.Width) / 2
|
|
Me.Top = (Screen.PrimaryScreen.Bounds.Height - Me.Height) / 2
|
|
setskin()
|
|
|
|
ShiftOSDesktop.pnlpanelbuttonfilesaver.SendToBack()
|
|
ShiftOSDesktop.setuppanelbuttons()
|
|
ShiftOSDesktop.setpanelbuttonappearnce(ShiftOSDesktop.pnlpanelbuttonfilesaver, ShiftOSDesktop.tbfilesavericon, ShiftOSDesktop.tbfilesavertext, True)
|
|
ShiftOSDesktop.programsopen = ShiftOSDesktop.programsopen + 1
|
|
|
|
lbextention.Text = saveextention
|
|
If ShiftOSDesktop.fileopenerlastdirectory = "" Then
|
|
lbllocation.Text = "C:/ShiftOS"
|
|
Else
|
|
lbllocation.Text = ShiftOSDesktop.fileopenerlastdirectory
|
|
End If
|
|
showcontents()
|
|
End Sub
|
|
|
|
Private Sub ShiftOSDesktop_keydown(sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
|
|
'Make terminal appear
|
|
If e.KeyCode = Keys.T AndAlso e.Control Then
|
|
Terminal.Show()
|
|
Terminal.Visible = True
|
|
Terminal.BringToFront()
|
|
End If
|
|
|
|
'Movable Windows
|
|
If ShiftOSDesktop.boughtmovablewindows = True Then
|
|
If e.KeyCode = Keys.A AndAlso e.Control Then
|
|
e.Handled = True
|
|
Me.Location = New Point(Me.Location.X - ShiftOSDesktop.movablewindownumber, Me.Location.Y)
|
|
End If
|
|
If e.KeyCode = Keys.D AndAlso e.Control Then
|
|
e.Handled = True
|
|
Me.Location = New Point(Me.Location.X + ShiftOSDesktop.movablewindownumber, Me.Location.Y)
|
|
End If
|
|
If e.KeyCode = Keys.W AndAlso e.Control Then
|
|
e.Handled = True
|
|
Me.Location = New Point(Me.Location.X, Me.Location.Y - ShiftOSDesktop.movablewindownumber)
|
|
End If
|
|
If e.KeyCode = Keys.S AndAlso e.Control Then
|
|
e.Handled = True
|
|
Me.Location = New Point(Me.Location.X, Me.Location.Y + ShiftOSDesktop.movablewindownumber)
|
|
End If
|
|
ShiftOSDesktop.log = ShiftOSDesktop.log & My.Computer.Clock.LocalTime & " User moved " & Me.Name & " to " & Me.Location.ToString & " with " & e.KeyCode.ToString & Environment.NewLine
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub titlebar_MouseDown(sender As Object, e As MouseEventArgs) Handles titlebar.MouseDown, lbtitletext.MouseDown, pnlicon.MouseDown, pgtoplcorner.MouseDown, pgtoprcorner.MouseDown
|
|
' Handle Draggable Windows
|
|
If ShiftOSDesktop.boughtdraggablewindows = True Then
|
|
If e.Button = MouseButtons.Left Then
|
|
titlebar.Capture = False
|
|
lbtitletext.Capture = False
|
|
pnlicon.Capture = False
|
|
pgtoplcorner.Capture = False
|
|
pgtoprcorner.Capture = False
|
|
Const WM_NCLBUTTONDOWN As Integer = &HA1S
|
|
Const HTCAPTION As Integer = 2
|
|
Dim msg As Message = _
|
|
Message.Create(Me.Handle, WM_NCLBUTTONDOWN, _
|
|
New IntPtr(HTCAPTION), IntPtr.Zero)
|
|
Me.DefWndProc(msg)
|
|
End If
|
|
ShiftOSDesktop.log = ShiftOSDesktop.log & My.Computer.Clock.LocalTime & " User dragged " & Me.Name & " to " & Me.Location.ToString & Environment.NewLine
|
|
End If
|
|
End Sub
|
|
|
|
Public Sub setupborders()
|
|
If ShiftOSDesktop.boughtwindowborders = False Then
|
|
pgleft.Hide()
|
|
pgbottom.Hide()
|
|
pgright.Hide()
|
|
Me.Size = New Size(Me.Width - pgleft.Width - pgright.Width, Me.Height - pgbottom.Height)
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub closebutton_Click(sender As Object, e As EventArgs) Handles closebutton.Click
|
|
Me.Close()
|
|
End Sub
|
|
|
|
Private Sub closebutton_MouseEnter(sender As Object, e As EventArgs) Handles closebutton.MouseEnter, closebutton.MouseUp
|
|
closebutton.BackgroundImage = ShiftOSDesktop.skinclosebutton(1)
|
|
End Sub
|
|
|
|
Private Sub closebutton_MouseLeave(sender As Object, e As EventArgs) Handles closebutton.MouseLeave
|
|
closebutton.BackgroundImage = ShiftOSDesktop.skinclosebutton(0)
|
|
End Sub
|
|
|
|
Private Sub closebutton_MouseDown(sender As Object, e As EventArgs) Handles closebutton.MouseDown
|
|
closebutton.BackgroundImage = ShiftOSDesktop.skinclosebutton(2)
|
|
End Sub
|
|
|
|
Private Sub minimizebutton_Click(sender As Object, e As EventArgs) Handles minimizebutton.Click
|
|
ShiftOSDesktop.minimizeprogram(Me)
|
|
End Sub
|
|
|
|
Private Sub titlebar_MouseEnter(sender As Object, e As EventArgs) Handles titlebar.MouseEnter, titlebar.MouseUp, lbtitletext.MouseEnter, pnlicon.MouseEnter, closebutton.MouseEnter, rollupbutton.MouseEnter
|
|
If ShiftOSDesktop.skinimages(3) = ShiftOSDesktop.skinimages(4) Then Else titlebar.BackgroundImage = ShiftOSDesktop.skintitlebar(1)
|
|
End Sub
|
|
|
|
Private Sub titlebar_MouseLeave(sender As Object, e As EventArgs) Handles titlebar.MouseLeave, lbtitletext.MouseLeave, pnlicon.MouseLeave, closebutton.MouseLeave, rollupbutton.MouseLeave
|
|
If ShiftOSDesktop.skinimages(3) = ShiftOSDesktop.skinimages(4) Then Else titlebar.BackgroundImage = ShiftOSDesktop.skintitlebar(0)
|
|
End Sub
|
|
|
|
Private Sub rollupbutton_Click(sender As Object, e As EventArgs) Handles rollupbutton.Click
|
|
rollupanddown()
|
|
End Sub
|
|
|
|
Private Sub rollupbutton_MouseEnter(sender As Object, e As EventArgs) Handles rollupbutton.MouseEnter, rollupbutton.MouseUp
|
|
rollupbutton.BackgroundImage = ShiftOSDesktop.skinrollupbutton(1)
|
|
End Sub
|
|
|
|
Private Sub rollupbutton_MouseLeave(sender As Object, e As EventArgs) Handles rollupbutton.MouseLeave
|
|
rollupbutton.BackgroundImage = ShiftOSDesktop.skinrollupbutton(0)
|
|
End Sub
|
|
|
|
Private Sub rollupbutton_MouseDown(sender As Object, e As EventArgs) Handles rollupbutton.MouseDown
|
|
rollupbutton.BackgroundImage = ShiftOSDesktop.skinrollupbutton(2)
|
|
End Sub
|
|
|
|
Public Sub setuptitlebar()
|
|
|
|
If Me.Height = Me.titlebar.Height Then pgleft.Show() : pgbottom.Show() : pgright.Show() : Me.Height = rolldownsize : needtorollback = True
|
|
pgleft.Width = ShiftOSDesktop.windowbordersize
|
|
pgright.Width = ShiftOSDesktop.windowbordersize
|
|
pgbottom.Height = ShiftOSDesktop.windowbordersize
|
|
titlebar.Height = ShiftOSDesktop.titlebarheight
|
|
|
|
If justopened = True Then
|
|
Me.Size = New Size(600, 377) 'put the default size of your window here
|
|
Me.Size = New Size(Me.Width, Me.Height + ShiftOSDesktop.titlebarheight - 30)
|
|
Me.Size = New Size(Me.Width + ShiftOSDesktop.windowbordersize + ShiftOSDesktop.windowbordersize, Me.Height + ShiftOSDesktop.windowbordersize)
|
|
oldbordersize = ShiftOSDesktop.windowbordersize
|
|
oldtitlebarheight = ShiftOSDesktop.titlebarheight
|
|
justopened = False
|
|
Else
|
|
If Me.Visible = True Then
|
|
Me.Hide()
|
|
Me.Size = New Size(Me.Width, Me.Height - oldtitlebarheight + 30)
|
|
Me.Size = New Size(Me.Width - oldbordersize - oldbordersize, Me.Height - oldbordersize)
|
|
oldbordersize = ShiftOSDesktop.windowbordersize
|
|
oldtitlebarheight = ShiftOSDesktop.titlebarheight
|
|
Me.Size = New Size(Me.Width, Me.Height + ShiftOSDesktop.titlebarheight - 30)
|
|
Me.Size = New Size(Me.Width + ShiftOSDesktop.windowbordersize + ShiftOSDesktop.windowbordersize, Me.Height + ShiftOSDesktop.windowbordersize)
|
|
rolldownsize = Me.Height
|
|
If needtorollback = True Then Me.Height = titlebar.Height : pgleft.Hide() : pgbottom.Hide() : pgright.Hide()
|
|
Me.Show()
|
|
End If
|
|
End If
|
|
|
|
If ShiftOSDesktop.showwindowcorners = True Then
|
|
pgtoplcorner.Show()
|
|
pgtoprcorner.Show()
|
|
pgtoprcorner.Width = ShiftOSDesktop.titlebarcornerwidth
|
|
pgtoplcorner.Width = ShiftOSDesktop.titlebarcornerwidth
|
|
Else
|
|
pgtoplcorner.Hide()
|
|
pgtoprcorner.Hide()
|
|
End If
|
|
|
|
If ShiftOSDesktop.boughttitlebar = False Then
|
|
titlebar.Hide()
|
|
Me.Size = New Size(Me.Width, Me.Size.Height - titlebar.Height)
|
|
End If
|
|
|
|
If ShiftOSDesktop.boughttitletext = False Then
|
|
lbtitletext.Hide()
|
|
Else
|
|
lbtitletext.Font = New Font(ShiftOSDesktop.titletextfont, ShiftOSDesktop.titletextsize, ShiftOSDesktop.titletextstyle)
|
|
lbtitletext.Text = ShiftOSDesktop.filesavername
|
|
lbtitletext.Show()
|
|
End If
|
|
|
|
If ShiftOSDesktop.boughtclosebutton = False Then
|
|
closebutton.Hide()
|
|
Else
|
|
closebutton.BackColor = ShiftOSDesktop.closebuttoncolour
|
|
closebutton.Height = ShiftOSDesktop.closebuttonheight
|
|
closebutton.Width = ShiftOSDesktop.closebuttonwidth
|
|
closebutton.Show()
|
|
End If
|
|
|
|
If ShiftOSDesktop.boughtrollupbutton = False Then
|
|
rollupbutton.Hide()
|
|
Else
|
|
rollupbutton.BackColor = ShiftOSDesktop.rollupbuttoncolour
|
|
rollupbutton.Height = ShiftOSDesktop.rollupbuttonheight
|
|
rollupbutton.Width = ShiftOSDesktop.rollupbuttonwidth
|
|
rollupbutton.Show()
|
|
End If
|
|
|
|
If ShiftOSDesktop.boughtminimizebutton = False Then
|
|
minimizebutton.Hide()
|
|
Else
|
|
minimizebutton.BackColor = ShiftOSDesktop.minimizebuttoncolour
|
|
minimizebutton.Height = ShiftOSDesktop.minimizebuttonheight
|
|
minimizebutton.Width = ShiftOSDesktop.minimizebuttonwidth
|
|
minimizebutton.Show()
|
|
End If
|
|
|
|
If ShiftOSDesktop.boughtwindowborders = True Then
|
|
closebutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.closebuttonside - closebutton.Size.Width, ShiftOSDesktop.closebuttontop)
|
|
rollupbutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.rollupbuttonside - rollupbutton.Size.Width, ShiftOSDesktop.rollupbuttontop)
|
|
minimizebutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.minimizebuttonside - minimizebutton.Size.Width, ShiftOSDesktop.minimizebuttontop)
|
|
Select Case ShiftOSDesktop.titletextposition
|
|
Case "Left"
|
|
lbtitletext.Location = New Point(ShiftOSDesktop.titletextside, ShiftOSDesktop.titletexttop)
|
|
Case "Centre"
|
|
lbtitletext.Location = New Point((titlebar.Width / 2) - lbtitletext.Width / 2, ShiftOSDesktop.titletexttop)
|
|
End Select
|
|
lbtitletext.ForeColor = ShiftOSDesktop.titletextcolour
|
|
Else
|
|
closebutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.closebuttonside - pgtoplcorner.Width - pgtoprcorner.Width - closebutton.Size.Width, ShiftOSDesktop.closebuttontop)
|
|
rollupbutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.rollupbuttonside - pgtoplcorner.Width - pgtoprcorner.Width - rollupbutton.Size.Width, ShiftOSDesktop.rollupbuttontop)
|
|
minimizebutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.minimizebuttonside - pgtoplcorner.Width - pgtoprcorner.Width - minimizebutton.Size.Width, ShiftOSDesktop.minimizebuttontop)
|
|
Select Case ShiftOSDesktop.titletextposition
|
|
Case "Left"
|
|
lbtitletext.Location = New Point(ShiftOSDesktop.titletextside + pgtoplcorner.Width, ShiftOSDesktop.titletexttop)
|
|
Case "Centre"
|
|
lbtitletext.Location = New Point((titlebar.Width / 2) - lbtitletext.Width / 2, ShiftOSDesktop.titletexttop)
|
|
End Select
|
|
lbtitletext.ForeColor = ShiftOSDesktop.titletextcolour
|
|
End If
|
|
|
|
If ShiftOSDesktop.boughtfileskimmericon = True Then
|
|
pnlicon.Visible = True
|
|
pnlicon.Location = New Point(ShiftOSDesktop.titlebariconside, ShiftOSDesktop.titlebaricontop)
|
|
pnlicon.Size = New Size(ShiftOSDesktop.titlebariconsize, ShiftOSDesktop.titlebariconsize)
|
|
pnlicon.Image = ShiftOSDesktop.filesavericontitlebar 'Replace with the correct icon for the program.
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Public Sub rollupanddown()
|
|
If Me.Height = Me.titlebar.Height Then
|
|
pgleft.Show()
|
|
pgbottom.Show()
|
|
pgright.Show()
|
|
Me.Height = rolldownsize
|
|
Me.MinimumSize = New Size(minimumsizewidth, minimumsizeheight)
|
|
Else
|
|
Me.MinimumSize = New Size(0, 0)
|
|
pgleft.Hide()
|
|
pgbottom.Hide()
|
|
pgright.Hide()
|
|
rolldownsize = Me.Height
|
|
Me.Height = Me.titlebar.Height
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub resettitlebar()
|
|
If ShiftOSDesktop.boughtwindowborders = True Then
|
|
closebutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.closebuttonside - closebutton.Size.Width, ShiftOSDesktop.closebuttontop)
|
|
rollupbutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.rollupbuttonside - rollupbutton.Size.Width, ShiftOSDesktop.rollupbuttontop)
|
|
minimizebutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.minimizebuttonside - minimizebutton.Size.Width, ShiftOSDesktop.minimizebuttontop)
|
|
Select Case ShiftOSDesktop.titletextposition
|
|
Case "Left"
|
|
lbtitletext.Location = New Point(ShiftOSDesktop.titletextside, ShiftOSDesktop.titletexttop)
|
|
Case "Centre"
|
|
lbtitletext.Location = New Point((titlebar.Width / 2) - lbtitletext.Width / 2, ShiftOSDesktop.titletexttop)
|
|
End Select
|
|
lbtitletext.ForeColor = ShiftOSDesktop.titletextcolour
|
|
Else
|
|
closebutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.closebuttonside - pgtoplcorner.Width - pgtoprcorner.Width - closebutton.Size.Width, ShiftOSDesktop.closebuttontop)
|
|
rollupbutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.rollupbuttonside - pgtoplcorner.Width - pgtoprcorner.Width - rollupbutton.Size.Width, ShiftOSDesktop.rollupbuttontop)
|
|
minimizebutton.Location = New Point(titlebar.Size.Width - ShiftOSDesktop.minimizebuttonside - pgtoplcorner.Width - pgtoprcorner.Width - minimizebutton.Size.Width, ShiftOSDesktop.minimizebuttontop)
|
|
Select Case ShiftOSDesktop.titletextposition
|
|
Case "Left"
|
|
lbtitletext.Location = New Point(ShiftOSDesktop.titletextside + pgtoplcorner.Width, ShiftOSDesktop.titletexttop)
|
|
Case "Centre"
|
|
lbtitletext.Location = New Point((titlebar.Width / 2) - lbtitletext.Width / 2, ShiftOSDesktop.titletexttop)
|
|
End Select
|
|
lbtitletext.ForeColor = ShiftOSDesktop.titletextcolour
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub pullside_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles pullside.Tick
|
|
Me.Width = Cursor.Position.X - Me.Location.X
|
|
resettitlebar()
|
|
End Sub
|
|
|
|
Private Sub pullbottom_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles pullbottom.Tick
|
|
Me.Height = Cursor.Position.Y - Me.Location.Y
|
|
resettitlebar()
|
|
End Sub
|
|
|
|
Private Sub pullbs_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles pullbs.Tick
|
|
Me.Width = Cursor.Position.X - Me.Location.X
|
|
Me.Height = Cursor.Position.Y - Me.Location.Y
|
|
resettitlebar()
|
|
End Sub
|
|
|
|
Private Sub Rightpull_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgright.MouseDown
|
|
If ShiftOSDesktop.boughtresizablewindows = True Then
|
|
pullside.Start()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub RightCursorOn_MouseDown(ByVal sender As Object, ByVal e As System.EventArgs) Handles pgright.MouseEnter
|
|
If ShiftOSDesktop.boughtresizablewindows = True Then
|
|
Cursor = Cursors.SizeWE
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub bottomCursorOn_MouseDown(ByVal sender As Object, ByVal e As System.EventArgs) Handles pgbottom.MouseEnter
|
|
If ShiftOSDesktop.boughtresizablewindows = True Then
|
|
Cursor = Cursors.SizeNS
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub CornerCursorOn_MouseDown(ByVal sender As Object, ByVal e As System.EventArgs) Handles pgbottomrcorner.MouseEnter
|
|
If ShiftOSDesktop.boughtresizablewindows = True Then
|
|
Cursor = Cursors.SizeNWSE
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub SizeCursoroff_MouseDown(ByVal sender As Object, ByVal e As System.EventArgs) Handles pgright.MouseLeave, pgbottom.MouseLeave, pgbottomrcorner.MouseLeave
|
|
If ShiftOSDesktop.boughtresizablewindows = True Then
|
|
Cursor = Cursors.Default
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub rightpull_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgright.MouseUp
|
|
If ShiftOSDesktop.boughtresizablewindows = True Then
|
|
pullside.Stop()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub bottompull_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgbottom.MouseDown
|
|
If ShiftOSDesktop.boughtresizablewindows = True Then
|
|
pullbottom.Start()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub buttompull_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgbottom.MouseUp
|
|
If ShiftOSDesktop.boughtresizablewindows = True Then
|
|
pullbottom.Stop()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub bspull_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgbottomrcorner.MouseDown
|
|
If ShiftOSDesktop.boughtresizablewindows = True Then
|
|
pullbs.Start()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub bspull_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgbottomrcorner.MouseUp
|
|
If ShiftOSDesktop.boughtresizablewindows = True Then
|
|
pullbs.Stop()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub Clock_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
|
|
ShiftOSDesktop.programsopen = ShiftOSDesktop.programsopen - 1
|
|
Me.Hide()
|
|
ShiftOSDesktop.setuppanelbuttons()
|
|
End Sub
|
|
|
|
Public Sub setskin()
|
|
If ShiftOSDesktop.skinclosebutton(0) Is Nothing Then Else closebutton.BackgroundImage = ShiftOSDesktop.skinclosebutton(0).Clone
|
|
closebutton.BackgroundImageLayout = ShiftOSDesktop.skinclosebuttonstyle
|
|
If ShiftOSDesktop.skintitlebar(0) Is Nothing Then Else titlebar.BackgroundImage = ShiftOSDesktop.skintitlebar(0).Clone
|
|
titlebar.BackgroundImageLayout = ShiftOSDesktop.skintitlebarstyle
|
|
If ShiftOSDesktop.skinrollupbutton(0) Is Nothing Then Else rollupbutton.BackgroundImage = ShiftOSDesktop.skinrollupbutton(0).Clone
|
|
rollupbutton.BackgroundImageLayout = ShiftOSDesktop.skinrollupbuttonstyle
|
|
If ShiftOSDesktop.skintitlebarleftcorner(0) Is Nothing Then Else pgtoplcorner.BackgroundImage = ShiftOSDesktop.skintitlebarleftcorner(0).Clone
|
|
pgtoplcorner.BackgroundImageLayout = ShiftOSDesktop.skintitlebarleftcornerstyle
|
|
If ShiftOSDesktop.skintitlebarrightcorner(0) Is Nothing Then Else pgtoprcorner.BackgroundImage = ShiftOSDesktop.skintitlebarrightcorner(0).Clone
|
|
pgtoprcorner.BackgroundImageLayout = ShiftOSDesktop.skintitlebarrightcornerstyle
|
|
If ShiftOSDesktop.skinminimizebutton(0) Is Nothing Then Else minimizebutton.BackgroundImage = ShiftOSDesktop.skinminimizebutton(0).Clone
|
|
minimizebutton.BackgroundImageLayout = ShiftOSDesktop.skinminimizebuttonstyle
|
|
|
|
'remove background colour when image is present
|
|
If closebutton.BackgroundImage Is Nothing Then Else closebutton.BackColor = Color.Transparent
|
|
If titlebar.BackgroundImage Is Nothing Then Else titlebar.BackColor = Color.Transparent
|
|
If rollupbutton.BackgroundImage Is Nothing Then Else rollupbutton.BackColor = Color.Transparent
|
|
If pgtoplcorner.BackgroundImage Is Nothing Then Else pgtoplcorner.BackColor = Color.Transparent
|
|
If pgtoprcorner.BackgroundImage Is Nothing Then Else pgtoprcorner.BackColor = Color.Transparent
|
|
If minimizebutton.BackgroundImage Is Nothing Then Else minimizebutton.BackColor = Color.Transparent
|
|
|
|
Me.TransparencyKey = ShiftOSDesktop.globaltransparencycolour
|
|
End Sub
|
|
|
|
'end of general setup
|
|
|
|
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
|
|
showcontents()
|
|
End Sub
|
|
|
|
Private Sub showcontents()
|
|
lvfiles.Items.Clear()
|
|
|
|
lvfiles.Items.Add("Exit Folder", 5)
|
|
|
|
Dim dir As New DirectoryInfo(lbllocation.Text)
|
|
Dim files As FileInfo() = dir.GetFiles()
|
|
Dim file As FileInfo
|
|
Dim folders As DirectoryInfo() = dir.GetDirectories()
|
|
Dim folder As DirectoryInfo
|
|
|
|
For Each folder In folders
|
|
Dim foldername As String = folder.Name
|
|
lvfiles.Items.Add(foldername, 0)
|
|
Next
|
|
|
|
For Each file In files
|
|
Dim filename As String = file.Name
|
|
Dim fileex As String = file.Extension
|
|
|
|
Select Case fileex
|
|
Case ".txt"
|
|
filetype = 2
|
|
Case ".doc"
|
|
filetype = 2
|
|
Case ".docx"
|
|
filetype = 2
|
|
Case ".lst"
|
|
filetype = 2
|
|
Case ".png"
|
|
filetype = 3
|
|
Case ".jpg"
|
|
filetype = 3
|
|
Case ".jpeg"
|
|
filetype = 3
|
|
Case ".bmp"
|
|
filetype = 3
|
|
Case ".gif"
|
|
filetype = 3
|
|
Case ".avi"
|
|
filetype = 4
|
|
Case ".m4v"
|
|
filetype = 4
|
|
Case ".mp4"
|
|
filetype = 4
|
|
Case ".wmv"
|
|
filetype = 4
|
|
Case ".dll"
|
|
filetype = 6
|
|
Case ".exe"
|
|
filetype = 7
|
|
Case ".sft"
|
|
filetype = 8
|
|
Case ".dri"
|
|
filetype = 9
|
|
Case ".pic"
|
|
filetype = 3
|
|
Case ".skn"
|
|
filetype = 10
|
|
Case ".nls"
|
|
filetype = 11
|
|
Case ".icp"
|
|
filetype = 12
|
|
Case Else
|
|
filetype = 1
|
|
End Select
|
|
|
|
Select Case savingprogram
|
|
Case "textpad"
|
|
If fileex = ".txt" Then lvfiles.Items.Add(filename, filetype)
|
|
Case "skinloader"
|
|
If fileex = ".skn" Then lvfiles.Items.Add(filename, filetype)
|
|
Case "artpad"
|
|
If fileex = ".pic" Then lvfiles.Items.Add(filename, filetype)
|
|
Case "namechanger"
|
|
If fileex = ".nls" Then lvfiles.Items.Add(filename, filetype)
|
|
End Select
|
|
Next
|
|
|
|
ShiftOSDesktop.fileopenerlastdirectory = lbllocation.Text
|
|
End Sub
|
|
|
|
Private Sub lvfiles_MouseClick(sender As Object, e As MouseEventArgs) Handles lvfiles.MouseClick
|
|
'need to remove the file extention!
|
|
If lvfiles.SelectedItems(0).Text.Contains(".") Then
|
|
txtfilename.Text = lvfiles.SelectedItems(0).Text.Substring(0, lvfiles.SelectedItems(0).Text.Length - 4)
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub lbfiles_MouseDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles lvfiles.MouseDoubleClick
|
|
If lvfiles.SelectedItems(0).Text.Contains(".") Then
|
|
savefile()
|
|
Else
|
|
If lvfiles.SelectedItems(0).Text = "Exit Folder" Then
|
|
If lbllocation.Text = "C:/ShiftOS/" Then
|
|
infobox.title = "File Skimmer - Warning!"
|
|
infobox.textinfo = "Unable to move into a higher directory due to error reading the requested folder on the drive." & Environment.NewLine & Environment.NewLine & "You can only enter directories formatted in the ShiftOS file system (ShiftFS)"
|
|
infobox.Show()
|
|
Else
|
|
Dim endloop As Boolean = False
|
|
lbllocation.Text = lbllocation.Text.Substring(0, lbllocation.Text.Length - 1)
|
|
|
|
While endloop = False
|
|
If lbllocation.Text.Substring(lbllocation.Text.Length - 1) = "/" Then
|
|
endloop = True
|
|
Else
|
|
lbllocation.Text = lbllocation.Text.Substring(0, lbllocation.Text.Length - 1)
|
|
End If
|
|
End While
|
|
showcontents()
|
|
End If
|
|
Else
|
|
'Check if selected item is a file or folder. It it's a folder check its extension
|
|
Dim textboxtext As String
|
|
textboxtext = lbllocation.Text
|
|
Dim last As String
|
|
Dim selit As String
|
|
last = textboxtext.Substring(textboxtext.Length - 1)
|
|
If last = "/" Then
|
|
selit = lvfiles.SelectedItems(0).Text
|
|
lbllocation.Text = lbllocation.Text + selit
|
|
Else
|
|
selit = lvfiles.SelectedItems(0).Text
|
|
lbllocation.Text = lbllocation.Text + ("/" & selit)
|
|
End If
|
|
|
|
showcontents()
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btndeletefile_Click(sender As Object, e As EventArgs)
|
|
If lvfiles.SelectedItems(0).Text Like "*.*" Then
|
|
My.Computer.FileSystem.DeleteFile(lbllocation.Text & "/" & lvfiles.SelectedItems(0).Text)
|
|
My.Computer.Audio.Play(My.Resources.writesound, AudioPlayMode.Background)
|
|
showcontents()
|
|
Else
|
|
My.Computer.FileSystem.DeleteDirectory(lbllocation.Text & "/" & lvfiles.SelectedItems(0).Text, FileIO.DeleteDirectoryOption.DeleteAllContents)
|
|
My.Computer.Audio.Play(My.Resources.writesound, AudioPlayMode.Background)
|
|
showcontents()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btnnewfolder_Click(sender As Object, e As EventArgs)
|
|
infobox.lblintructtext.Text = "Please enter a name for your new folder:"
|
|
infobox.txtuserinput.Text = ""
|
|
infobox.lblintructtext.Show()
|
|
infobox.txtuserinput.Show()
|
|
infobox.Show()
|
|
scaninput.Start()
|
|
End Sub
|
|
|
|
Private Sub scaninput_Tick(sender As Object, e As EventArgs) Handles scaninput.Tick
|
|
If infobox.Visible = False Then
|
|
My.Computer.FileSystem.CreateDirectory(lbllocation.Text & "/" & infobox.txtuserinput.Text)
|
|
showcontents()
|
|
scaninput.Stop()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btnsave_Click(sender As Object, e As EventArgs) Handles btnsave.Click
|
|
savefile()
|
|
End Sub
|
|
|
|
Private Sub savefile()
|
|
If txtfilename.Text = "" Then
|
|
Else
|
|
Select Case savingprogram
|
|
Case "textpad"
|
|
My.Computer.FileSystem.WriteAllText(lbllocation.Text & "/" & txtfilename.Text & saveextention, TextPad.txtuserinput.Text, False)
|
|
TextPad.needtosave = False
|
|
ShiftOSDesktop.codepoints = ShiftOSDesktop.codepoints + TextPad.codepointsearned
|
|
If ShiftOSDesktop.boughttitletext = True Then
|
|
TextPad.lbtitletext.Text = TextPad.lbtitletext.Text & " - You earned " & TextPad.codepointsearned & " codepoints!"
|
|
TextPad.setuptitlebar()
|
|
Else
|
|
infobox.title = "Textpad - " & TextPad.codepointsearned & " codepoints!"
|
|
infobox.textinfo = "Awesome! That document you just created with Textpad has earned you " & TextPad.codepointsearned & " codepoints! " & Environment.NewLine & Environment.NewLine & "Keep those docs coming for even more codepoints!"
|
|
infobox.Show()
|
|
End If
|
|
TextPad.codepointsearned = 0
|
|
TextPad.tmrshowearnedcodepoints.Start()
|
|
Case "skinloader"
|
|
System.IO.Compression.ZipFile.CreateFromDirectory("C:\ShiftOS\Shiftum42\Skins\Current\", lbllocation.Text & " / " & txtfilename.Text & saveextention)
|
|
Icon_Manager.unsavedchanges = False
|
|
Case "iconmanager"
|
|
System.IO.Compression.ZipFile.CreateFromDirectory("C:\ShiftOS\Shiftum42\Icons", lbllocation.Text & " / " & txtfilename.Text & saveextention)
|
|
Icon_Manager.unsavedchanges = False
|
|
Case "namechanger"
|
|
IO.File.WriteAllLines(lbllocation.Text & "/" & txtfilename.Text & saveextention, Name_Changer.savelines)
|
|
Case "artpad"
|
|
ArtPad.savelocation = lbllocation.Text & "/" & txtfilename.Text & saveextention
|
|
ArtPad.saveimage()
|
|
ArtPad.needtosave = False
|
|
ShiftOSDesktop.codepoints = ShiftOSDesktop.codepoints + ArtPad.codepointsearned
|
|
If ShiftOSDesktop.boughttitletext = True Then
|
|
ArtPad.lbtitletext.Text = ArtPad.lbtitletext.Text & " - You earned " & ArtPad.codepointsearned & " codepoints!"
|
|
ArtPad.setuptitlebar()
|
|
Else
|
|
infobox.title = "Artpad - " & ArtPad.codepointsearned & " codepoints!"
|
|
infobox.textinfo = "Awesome! That picture you just created with Artpad has earned you " & ArtPad.codepointsearned & " codepoints! " & Environment.NewLine & Environment.NewLine & "Keep those artworks coming for even more codepoints!"
|
|
infobox.Show()
|
|
End If
|
|
ArtPad.codepointsearned = 0
|
|
ArtPad.tmrshowearnedcodepoints.Start()
|
|
End Select
|
|
Me.Close()
|
|
End If
|
|
End Sub
|
|
End Class |