summaryrefslogtreecommitdiff
path: root/shiftos_next/file skimmer.vb
diff options
context:
space:
mode:
authorTheUltimateHacker <[email protected]>2015-05-21 20:33:08 -0400
committerTheUltimateHacker <[email protected]>2015-05-21 20:33:08 -0400
commited36135241a8d6d8ab4005a55f89ab8765f1a969 (patch)
treea16e0f408cb0c330b530a7ab7454ddab4f53ba16 /shiftos_next/file skimmer.vb
parent1fcbee8dab0524cb2b1aecd5bb2521acdfe6b541 (diff)
downloadshiftos-next-ed36135241a8d6d8ab4005a55f89ab8765f1a969.tar.gz
shiftos-next-ed36135241a8d6d8ab4005a55f89ab8765f1a969.tar.bz2
shiftos-next-ed36135241a8d6d8ab4005a55f89ab8765f1a969.zip
Commit for latest Alpha (0.0.1 Alpha 1)
See the post on shiftos.net for more info.
Diffstat (limited to 'shiftos_next/file skimmer.vb')
-rw-r--r--shiftos_next/file skimmer.vb173
1 files changed, 173 insertions, 0 deletions
diff --git a/shiftos_next/file skimmer.vb b/shiftos_next/file skimmer.vb
new file mode 100644
index 0000000..0d5ff98
--- /dev/null
+++ b/shiftos_next/file skimmer.vb
@@ -0,0 +1,173 @@
+Public Class file_skimmer
+
+ Public mode As String
+ Public application As String 'The application sending either an open or save mode.
+ Public currentdir As String = home
+
+ Public Sub setupmenufonts()
+ For Each item In topmenu.Items
+ item.ForeColor = Color.White
+ item.Font = New Font("Courier New", 8.25)
+ For Each SubItem In item.DropDownItems
+ SubItem.ForeColor = Color.White
+ SubItem.font = New Font("Courier New", 8.25)
+ Next
+ Next
+ End Sub
+
+ Public Sub showfiles()
+ Dim lv As ListView = lvfiles
+ lv.Items.Clear()
+ lv.View = View.Tile
+ lv.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent)
+ Dim upone As New ListViewItem
+ upone.Text = "Up one"
+ lv.Items.Add(upone)
+ upone.SubItems.Add("directory")
+
+ For Each dir As String In My.Computer.FileSystem.GetDirectories(currentdir)
+ Dim dirinf As New IO.DirectoryInfo(dir)
+ Dim lvitem As New ListViewItem
+ lvitem.Text = dirinf.Name
+ lvitem.Tag = dirinf.FullName
+ lv.Items.Add(lvitem)
+ lvitem.SubItems.Add("Directory")
+ lvitem.SubItems.Add(dirinf.LastAccessTime)
+
+ Next
+ For Each file As String In My.Computer.FileSystem.GetFiles(currentdir)
+ Dim filinf As New IO.DirectoryInfo(file)
+ Dim lvitem As New ListViewItem
+ lvitem.Text = filinf.Name
+ lvitem.Tag = filinf.FullName
+ lv.Items.Add(lvitem)
+
+ lvitem.SubItems.Add(GetFileType(filinf.Extension))
+ lvitem.SubItems.Add(filinf.LastAccessTime)
+ Next
+ lbcurrentdir.Text = currentdir.Replace(root, "~").Replace("\", "/")
+ End Sub
+
+ Public Function GetFileType(ext As String)
+ Dim FileType As String
+ Select Case ext
+ Case ".txt"
+ FileType = "Text File"
+ Case ".pkg"
+ FileType = "Application"
+ Case ".deb"
+ FileType = "Application Installer"
+ Case ".sft"
+ FileType = "Data File"
+ Case ".dri"
+ FileType = "Driver"
+ End Select
+ Return FileType
+ End Function
+
+ Public Sub OpenFile(file As String)
+ If IO.Directory.Exists(file) Then
+ currentdir = file
+ showfiles()
+ Else
+ Dim filinf As New IO.FileInfo(file)
+ Select Case filinf.Extension
+ Case Else
+ basicwm_infobox.showinfo("Exodus - File Format not valid", "The format of the file """ & filinf.Name & """ is not a format in which Exodus File Browser can read.")
+ End Select
+ End If
+ End Sub
+ Private Sub lvfiles_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lvfiles.DoubleClick
+ Try
+ If lvfiles.SelectedItems(0).Text = "Up one" Then
+ If Not currentdir = root Then
+ currentdir = IO.Directory.GetParent(currentdir).ToString
+ showfiles()
+ End If
+ Else
+ If mode = "open" Then
+ Select Case application
+ Case "textpad"
+ Dim sr As New IO.StreamReader(lvfiles.SelectedItems(0).Tag.ToString)
+ TextPad.txtfilebody.Text = sr.ReadToEnd()
+ sr.Close()
+ Me.Close()
+ End Select
+ Else
+ OpenFile(lvfiles.SelectedItems(0).Tag)
+ End If
+ End If
+ Catch
+ End Try
+ End Sub
+
+ Private Sub file_skimmer_Load(sender As Object, e As EventArgs) Handles Me.Load
+ topmenu.Renderer = New basicwm_renderer()
+ tools.Renderer = New basicwm_renderer()
+ setupmenufonts()
+ setupui()
+ showfiles()
+ End Sub
+
+ Public Sub setupui()
+ FolderToolStripMenuItem.Visible = boughtfileskimmernewfolder
+ newseperator.Visible = boughtfileskimmernewfolder
+ btnnewfolder.Visible = boughtfileskimmernewfolder
+ btndelete.Visible = boughtfileskimmerdelete
+ If mode = "save" Then
+ pnlsave.Visible = True
+ Else
+ pnlsave.Visible = False
+ End If
+ End Sub
+
+ Private Sub ExitSessionToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ExitSessionToolStripMenuItem.Click
+ Me.Close()
+ End Sub
+
+ Private Sub ProductInfoToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ProductInfoToolStripMenuItem.Click
+ basicwm_infobox.showinfo("File Skimmer - v1.2", "Browse, edit, move, copy and delete the files on your computer.")
+ End Sub
+
+
+
+ Private Sub FolderToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles FolderToolStripMenuItem.Click, btnnewfolder.Click
+ basicwm_infobox.showinfo("Create New Folder", "Please specify a name for your folder.", True)
+ If Not IO.Directory.Exists(currentdir & "\" & basicwm_infobox.userinput) Then
+ IO.Directory.CreateDirectory(currentdir & "\" & basicwm_infobox.userinput)
+ Else
+ basicwm_infobox.showinfo("Create New Folder", "The specified folder already exists!")
+ End If
+ showfiles()
+ End Sub
+
+ Private Sub btndelete_Click(sender As Object, e As EventArgs) Handles btndelete.Click
+ Try
+ If IO.Directory.Exists(lvfiles.SelectedItems(0).Tag) Then
+ IO.Directory.Delete(lvfiles.SelectedItems(0).Tag, True)
+ ElseIf IO.File.Exists(lvfiles.SelectedItems(0).Tag) Then
+ IO.File.Delete(lvfiles.SelectedItems(0).Tag)
+ End If
+ Catch ex As Exception
+ basicwm_infobox.showinfo("Error!", "The following Visual Basic exception has occurred: " & vbNewLine & vbNewLine & ex.Message)
+ End Try
+ End Sub
+
+ Private Sub btnsave_Click(sender As Object, e As EventArgs) Handles btnsave.Click
+ If Not txtfilename.Text = "" Then
+ If IO.Directory.Exists(currentdir + "\" + txtfilename.Text) Then
+ basicwm_infobox.showinfo("Invalid File Name", "You can't save a file ontop of a directory with the same name!")
+ Else
+ Select Case application
+ Case "textpad"
+ Dim sw As New IO.StreamWriter(currentdir + "\" + txtfilename.Text)
+ sw.Write(TextPad.txtfilebody.Text)
+ sw.Close()
+ Me.Close()
+ End Select
+ End If
+ Else
+ basicwm_infobox.showinfo("Invalid File Name", "Please specify a file name, and not leave it blank!")
+ End If
+ End Sub
+End Class \ No newline at end of file