mirror of
https://github.com/TheUltimateHacker/ShiftOS.git
synced 2025-01-22 16:12:14 +00:00
#1 - File Skimmer bug fix + Fullscreen Login Screen
Fixed a bug with the File Skimmer, as well as adding a FullScreen Login Screen test that can be utilized using the "test fullscreen login" terminal command. There's also a "test fullscreen login customizer" command to test the Customization Options for the login screen, though I haven't even gotten close to completing that. I've also referenced another DLL, one that I made called "MichaelsMovableControlSuite.dll" that contains movable variations of Windows Forms Controls. By movable, I mean that at run-time, the user can drag these controls around, however some functions (such as the ability to type in a MovableTextBox) have been disabled. These controls are used for the Login Screen customizer.
This commit is contained in:
parent
a276b027fb
commit
d556f57a1f
11 changed files with 1401 additions and 372 deletions
|
@ -626,7 +626,10 @@ Public Class File_Skimmer
|
|||
|
||||
'Used for Desktop.
|
||||
Public Sub OpenFile(path As String)
|
||||
'Check if selected item is a file or folder. It it's a folder check its extension
|
||||
'Check if file exists
|
||||
If My.Computer.FileSystem.FileExists(path) Or My.Computer.FileSystem.DirectoryExists(path) Then
|
||||
|
||||
'Check if selected item is a file or folder. It it's a file check its extention
|
||||
|
||||
If path Like "*.owd" Then
|
||||
If ShiftOSDesktop.installedorcwrite = True Then
|
||||
|
@ -835,6 +838,7 @@ Public Class File_Skimmer
|
|||
End If
|
||||
End If
|
||||
Else
|
||||
|
||||
If My.Computer.FileSystem.DirectoryExists(path) Then
|
||||
lbllocation.Text = path
|
||||
showcontents()
|
||||
|
@ -845,6 +849,7 @@ Public Class File_Skimmer
|
|||
End If
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
End Sub
|
||||
Private Sub lbfiles_MouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles lvfiles.MouseClick
|
||||
|
|
290
ShiftOS/FullScreenLogin Customizer.Designer.vb
generated
Normal file
290
ShiftOS/FullScreenLogin Customizer.Designer.vb
generated
Normal file
|
@ -0,0 +1,290 @@
|
|||
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
|
||||
Partial Class FullScreenLoginCustomizer
|
||||
Inherits System.Windows.Forms.Form
|
||||
|
||||
'Form overrides dispose to clean up the component list.
|
||||
<System.Diagnostics.DebuggerNonUserCode()> _
|
||||
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.
|
||||
<System.Diagnostics.DebuggerStepThrough()> _
|
||||
Private Sub InitializeComponent()
|
||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(FullScreenLoginCustomizer))
|
||||
Me.txtusername = New MichaelsMovableControlSuite.MovableTextBox()
|
||||
Me.txtpassword = New MichaelsMovableControlSuite.MovableTextBox()
|
||||
Me.userpic = New MichaelsMovableControlSuite.MovablePictureBox()
|
||||
Me.loginbtn = New MichaelsMovableControlSuite.MovableButton()
|
||||
Me.shutdown = New MichaelsMovableControlSuite.MovableButton()
|
||||
Me.preview = New System.Windows.Forms.Panel()
|
||||
Me.pnldefault = New System.Windows.Forms.Panel()
|
||||
Me.Label3 = New System.Windows.Forms.Label()
|
||||
Me.Label4 = New System.Windows.Forms.Label()
|
||||
Me.Label2 = New System.Windows.Forms.Label()
|
||||
Me.Label1 = New System.Windows.Forms.Label()
|
||||
Me.Titlebar = New System.Windows.Forms.Panel()
|
||||
Me.lbtitletext = New System.Windows.Forms.Label()
|
||||
Me.pnluserpicture = New System.Windows.Forms.Panel()
|
||||
Me.Button1 = New System.Windows.Forms.Button()
|
||||
Me.Label7 = New System.Windows.Forms.Label()
|
||||
Me.Label6 = New System.Windows.Forms.Label()
|
||||
Me.Label5 = New System.Windows.Forms.Label()
|
||||
CType(Me.userpic, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.preview.SuspendLayout()
|
||||
Me.pnldefault.SuspendLayout()
|
||||
Me.Titlebar.SuspendLayout()
|
||||
Me.pnluserpicture.SuspendLayout()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'txtusername
|
||||
'
|
||||
Me.txtusername.BackColor = System.Drawing.Color.Black
|
||||
Me.txtusername.Cursor = System.Windows.Forms.Cursors.Arrow
|
||||
Me.txtusername.Font = New System.Drawing.Font("Trebuchet MS", 12.0!)
|
||||
Me.txtusername.ForeColor = System.Drawing.Color.Gray
|
||||
Me.txtusername.Location = New System.Drawing.Point(231, 183)
|
||||
Me.txtusername.Name = "txtusername"
|
||||
Me.txtusername.ReadOnly = True
|
||||
Me.txtusername.Size = New System.Drawing.Size(248, 26)
|
||||
Me.txtusername.TabIndex = 0
|
||||
Me.txtusername.Text = "Username"
|
||||
'
|
||||
'txtpassword
|
||||
'
|
||||
Me.txtpassword.BackColor = System.Drawing.Color.Black
|
||||
Me.txtpassword.Cursor = System.Windows.Forms.Cursors.Arrow
|
||||
Me.txtpassword.Font = New System.Drawing.Font("Trebuchet MS", 12.0!)
|
||||
Me.txtpassword.ForeColor = System.Drawing.Color.Gray
|
||||
Me.txtpassword.Location = New System.Drawing.Point(231, 224)
|
||||
Me.txtpassword.Name = "txtpassword"
|
||||
Me.txtpassword.ReadOnly = True
|
||||
Me.txtpassword.Size = New System.Drawing.Size(248, 26)
|
||||
Me.txtpassword.TabIndex = 1
|
||||
Me.txtpassword.Text = "Password"
|
||||
Me.txtpassword.UseSystemPasswordChar = True
|
||||
'
|
||||
'userpic
|
||||
'
|
||||
Me.userpic.Cursor = System.Windows.Forms.Cursors.Arrow
|
||||
Me.userpic.Location = New System.Drawing.Point(97, 183)
|
||||
Me.userpic.Name = "userpic"
|
||||
Me.userpic.Size = New System.Drawing.Size(128, 128)
|
||||
Me.userpic.TabIndex = 2
|
||||
Me.userpic.TabStop = False
|
||||
'
|
||||
'loginbtn
|
||||
'
|
||||
Me.loginbtn.Cursor = System.Windows.Forms.Cursors.Arrow
|
||||
Me.loginbtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat
|
||||
Me.loginbtn.Font = New System.Drawing.Font("Trebuchet MS", 12.0!, System.Drawing.FontStyle.Italic)
|
||||
Me.loginbtn.ForeColor = System.Drawing.Color.White
|
||||
Me.loginbtn.Location = New System.Drawing.Point(328, 268)
|
||||
Me.loginbtn.Name = "loginbtn"
|
||||
Me.loginbtn.Size = New System.Drawing.Size(151, 43)
|
||||
Me.loginbtn.TabIndex = 3
|
||||
Me.loginbtn.Text = "Log In"
|
||||
Me.loginbtn.UseVisualStyleBackColor = True
|
||||
'
|
||||
'shutdown
|
||||
'
|
||||
Me.shutdown.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
|
||||
Me.shutdown.Cursor = System.Windows.Forms.Cursors.Arrow
|
||||
Me.shutdown.FlatStyle = System.Windows.Forms.FlatStyle.Flat
|
||||
Me.shutdown.Font = New System.Drawing.Font("Trebuchet MS", 12.0!, System.Drawing.FontStyle.Italic)
|
||||
Me.shutdown.ForeColor = System.Drawing.Color.White
|
||||
Me.shutdown.Location = New System.Drawing.Point(1755, 715)
|
||||
Me.shutdown.Name = "shutdown"
|
||||
Me.shutdown.Size = New System.Drawing.Size(137, 50)
|
||||
Me.shutdown.TabIndex = 4
|
||||
Me.shutdown.Text = "Shutdown"
|
||||
Me.shutdown.UseVisualStyleBackColor = True
|
||||
'
|
||||
'preview
|
||||
'
|
||||
Me.preview.Controls.Add(Me.txtusername)
|
||||
Me.preview.Controls.Add(Me.shutdown)
|
||||
Me.preview.Controls.Add(Me.txtpassword)
|
||||
Me.preview.Controls.Add(Me.loginbtn)
|
||||
Me.preview.Controls.Add(Me.userpic)
|
||||
Me.preview.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.preview.Location = New System.Drawing.Point(0, 30)
|
||||
Me.preview.Name = "preview"
|
||||
Me.preview.Size = New System.Drawing.Size(1904, 771)
|
||||
Me.preview.TabIndex = 5
|
||||
'
|
||||
'pnldefault
|
||||
'
|
||||
Me.pnldefault.Controls.Add(Me.Label3)
|
||||
Me.pnldefault.Controls.Add(Me.Label4)
|
||||
Me.pnldefault.Controls.Add(Me.Label2)
|
||||
Me.pnldefault.Controls.Add(Me.Label1)
|
||||
Me.pnldefault.Dock = System.Windows.Forms.DockStyle.Bottom
|
||||
Me.pnldefault.ForeColor = System.Drawing.Color.White
|
||||
Me.pnldefault.Location = New System.Drawing.Point(0, 801)
|
||||
Me.pnldefault.Name = "pnldefault"
|
||||
Me.pnldefault.Size = New System.Drawing.Size(1904, 240)
|
||||
Me.pnldefault.TabIndex = 6
|
||||
'
|
||||
'Label3
|
||||
'
|
||||
Me.Label3.Location = New System.Drawing.Point(352, 46)
|
||||
Me.Label3.Name = "Label3"
|
||||
Me.Label3.Size = New System.Drawing.Size(293, 111)
|
||||
Me.Label3.TabIndex = 8
|
||||
Me.Label3.Text = "User Picture not in a good location? Need to move that Login Button ever-so-sligh" & _
|
||||
"tly? Moving objects around the screen is as easy as Click, Drag, Release!"
|
||||
'
|
||||
'Label4
|
||||
'
|
||||
Me.Label4.AutoSize = True
|
||||
Me.Label4.Font = New System.Drawing.Font("Trebuchet MS", 12.0!, System.Drawing.FontStyle.Italic)
|
||||
Me.Label4.Location = New System.Drawing.Point(351, 13)
|
||||
Me.Label4.Name = "Label4"
|
||||
Me.Label4.Size = New System.Drawing.Size(128, 22)
|
||||
Me.Label4.TabIndex = 7
|
||||
Me.Label4.Text = "Moving Controls"
|
||||
'
|
||||
'Label2
|
||||
'
|
||||
Me.Label2.Location = New System.Drawing.Point(13, 46)
|
||||
Me.Label2.Name = "Label2"
|
||||
Me.Label2.Size = New System.Drawing.Size(293, 111)
|
||||
Me.Label2.TabIndex = 6
|
||||
Me.Label2.Text = resources.GetString("Label2.Text")
|
||||
'
|
||||
'Label1
|
||||
'
|
||||
Me.Label1.AutoSize = True
|
||||
Me.Label1.Font = New System.Drawing.Font("Trebuchet MS", 12.0!, System.Drawing.FontStyle.Italic)
|
||||
Me.Label1.Location = New System.Drawing.Point(12, 13)
|
||||
Me.Label1.Name = "Label1"
|
||||
Me.Label1.Size = New System.Drawing.Size(248, 22)
|
||||
Me.Label1.TabIndex = 5
|
||||
Me.Label1.Text = "Login Screen Customizer - Home"
|
||||
'
|
||||
'Titlebar
|
||||
'
|
||||
Me.Titlebar.BackColor = System.Drawing.Color.Gray
|
||||
Me.Titlebar.Controls.Add(Me.lbtitletext)
|
||||
Me.Titlebar.Dock = System.Windows.Forms.DockStyle.Top
|
||||
Me.Titlebar.ForeColor = System.Drawing.Color.White
|
||||
Me.Titlebar.Location = New System.Drawing.Point(0, 0)
|
||||
Me.Titlebar.Name = "Titlebar"
|
||||
Me.Titlebar.Size = New System.Drawing.Size(1904, 30)
|
||||
Me.Titlebar.TabIndex = 5
|
||||
'
|
||||
'lbtitletext
|
||||
'
|
||||
Me.lbtitletext.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.lbtitletext.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, System.Drawing.FontStyle.Bold)
|
||||
Me.lbtitletext.Location = New System.Drawing.Point(0, 0)
|
||||
Me.lbtitletext.Margin = New System.Windows.Forms.Padding(3)
|
||||
Me.lbtitletext.Name = "lbtitletext"
|
||||
Me.lbtitletext.Size = New System.Drawing.Size(1904, 30)
|
||||
Me.lbtitletext.TabIndex = 0
|
||||
Me.lbtitletext.Text = "Login Screen Customizer"
|
||||
Me.lbtitletext.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
|
||||
'
|
||||
'pnluserpicture
|
||||
'
|
||||
Me.pnluserpicture.Controls.Add(Me.Button1)
|
||||
Me.pnluserpicture.Controls.Add(Me.Label7)
|
||||
Me.pnluserpicture.Controls.Add(Me.Label6)
|
||||
Me.pnluserpicture.Controls.Add(Me.Label5)
|
||||
Me.pnluserpicture.ForeColor = System.Drawing.Color.White
|
||||
Me.pnluserpicture.Location = New System.Drawing.Point(0, 801)
|
||||
Me.pnluserpicture.Name = "pnluserpicture"
|
||||
Me.pnluserpicture.Size = New System.Drawing.Size(1904, 240)
|
||||
Me.pnluserpicture.TabIndex = 9
|
||||
'
|
||||
'Button1
|
||||
'
|
||||
Me.Button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat
|
||||
Me.Button1.Location = New System.Drawing.Point(20, 134)
|
||||
Me.Button1.Name = "Button1"
|
||||
Me.Button1.Size = New System.Drawing.Size(124, 94)
|
||||
Me.Button1.TabIndex = 3
|
||||
Me.Button1.UseVisualStyleBackColor = True
|
||||
'
|
||||
'Label7
|
||||
'
|
||||
Me.Label7.AutoSize = True
|
||||
Me.Label7.Location = New System.Drawing.Point(17, 108)
|
||||
Me.Label7.Name = "Label7"
|
||||
Me.Label7.Size = New System.Drawing.Size(77, 13)
|
||||
Me.Label7.TabIndex = 2
|
||||
Me.Label7.Text = "File for Picture:"
|
||||
'
|
||||
'Label6
|
||||
'
|
||||
Me.Label6.AutoSize = True
|
||||
Me.Label6.Location = New System.Drawing.Point(17, 46)
|
||||
Me.Label6.Name = "Label6"
|
||||
Me.Label6.Size = New System.Drawing.Size(262, 13)
|
||||
Me.Label6.TabIndex = 1
|
||||
Me.Label6.Text = "The picture associated to you when you're logging on."
|
||||
'
|
||||
'Label5
|
||||
'
|
||||
Me.Label5.AutoSize = True
|
||||
Me.Label5.Font = New System.Drawing.Font("Trebuchet MS", 12.0!, System.Drawing.FontStyle.Italic)
|
||||
Me.Label5.Location = New System.Drawing.Point(16, 13)
|
||||
Me.Label5.Name = "Label5"
|
||||
Me.Label5.Size = New System.Drawing.Size(162, 22)
|
||||
Me.Label5.TabIndex = 0
|
||||
Me.Label5.Text = "User Account Picture"
|
||||
'
|
||||
'FullScreenLoginCustomizer
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||
Me.BackColor = System.Drawing.Color.Black
|
||||
Me.ClientSize = New System.Drawing.Size(1904, 1041)
|
||||
Me.Controls.Add(Me.preview)
|
||||
Me.Controls.Add(Me.Titlebar)
|
||||
Me.Controls.Add(Me.pnluserpicture)
|
||||
Me.Controls.Add(Me.pnldefault)
|
||||
Me.Name = "FullScreenLoginCustomizer"
|
||||
Me.Text = "FullScreenLogin"
|
||||
CType(Me.userpic, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.preview.ResumeLayout(False)
|
||||
Me.preview.PerformLayout()
|
||||
Me.pnldefault.ResumeLayout(False)
|
||||
Me.pnldefault.PerformLayout()
|
||||
Me.Titlebar.ResumeLayout(False)
|
||||
Me.pnluserpicture.ResumeLayout(False)
|
||||
Me.pnluserpicture.PerformLayout()
|
||||
Me.ResumeLayout(False)
|
||||
|
||||
End Sub
|
||||
Friend WithEvents txtusername As MichaelsMovableControlSuite.MovableTextBox
|
||||
Friend WithEvents txtpassword As MichaelsMovableControlSuite.MovableTextBox
|
||||
Friend WithEvents userpic As MichaelsMovableControlSuite.MovablePictureBox
|
||||
Friend WithEvents loginbtn As MichaelsMovableControlSuite.MovableButton
|
||||
Friend WithEvents shutdown As MichaelsMovableControlSuite.MovableButton
|
||||
Friend WithEvents preview As System.Windows.Forms.Panel
|
||||
Friend WithEvents pnldefault As System.Windows.Forms.Panel
|
||||
Friend WithEvents Titlebar As System.Windows.Forms.Panel
|
||||
Friend WithEvents lbtitletext As System.Windows.Forms.Label
|
||||
Friend WithEvents Label3 As System.Windows.Forms.Label
|
||||
Friend WithEvents Label4 As System.Windows.Forms.Label
|
||||
Friend WithEvents Label2 As System.Windows.Forms.Label
|
||||
Friend WithEvents Label1 As System.Windows.Forms.Label
|
||||
Friend WithEvents pnluserpicture As System.Windows.Forms.Panel
|
||||
Friend WithEvents Button1 As System.Windows.Forms.Button
|
||||
Friend WithEvents Label7 As System.Windows.Forms.Label
|
||||
Friend WithEvents Label6 As System.Windows.Forms.Label
|
||||
Friend WithEvents Label5 As System.Windows.Forms.Label
|
||||
End Class
|
123
ShiftOS/FullScreenLogin Customizer.resx
Normal file
123
ShiftOS/FullScreenLogin Customizer.resx
Normal file
|
@ -0,0 +1,123 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="Label2.Text" xml:space="preserve">
|
||||
<value>Welcome home! This is the Login Screen Customizer. It allows you to shift the Login Screen to look any way you want. This panel will update with various options as you're shifting. To close this window, press "Cancel" and to apply your changes, click "Apply".</value>
|
||||
</data>
|
||||
</root>
|
222
ShiftOS/FullScreenLogin Customizer.vb
Normal file
222
ShiftOS/FullScreenLogin Customizer.vb
Normal file
|
@ -0,0 +1,222 @@
|
|||
Public Class FullScreenLoginCustomizer
|
||||
|
||||
#Region "Declarations"
|
||||
Public autologin As Boolean
|
||||
Public fullScreen As Boolean
|
||||
Public inputfont As String
|
||||
Public inputfontsize As Integer
|
||||
Public inputfontstyle As FontStyle
|
||||
Public inputforecolor As Color
|
||||
Public inputbackcolor As Color
|
||||
Public buttonfont As String
|
||||
Public buttonfontsize As Integer
|
||||
Public buttonfontstyle As FontStyle
|
||||
|
||||
Public userimagesize As Integer
|
||||
Public userimagelocation As Point
|
||||
Public userimage As Image
|
||||
Public userimagelayout As ImageLayout
|
||||
|
||||
Public loginbg As Image
|
||||
Public loginbgcolor As Color
|
||||
Public loginbglayout As ImageLayout
|
||||
|
||||
'Locations...
|
||||
|
||||
Public userTextboxX As Integer
|
||||
Public userTextBoxY As Integer
|
||||
Public passTextBoxX As Integer
|
||||
Public passTextBoxY As Integer
|
||||
Public loginbtnX As Integer
|
||||
Public loginbtnY As Integer
|
||||
Public shutdownbtnX As Integer
|
||||
Public shutdownbtnY As Integer
|
||||
|
||||
'Codepoint Stuff
|
||||
|
||||
Public earnedCP As Integer = 0
|
||||
|
||||
|
||||
#End Region
|
||||
|
||||
Dim currentControl As String = "None"
|
||||
|
||||
Private Sub FullScreenLogin_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None
|
||||
Me.WindowState = FormWindowState.Maximized
|
||||
setskin()
|
||||
End Sub
|
||||
|
||||
Public Sub setskin()
|
||||
preview.BackColor = Skins.loginbgcolor
|
||||
preview.BackgroundImage = Skins.loginbg
|
||||
preview.BackgroundImageLayout = Skins.loginbglayout
|
||||
userpic.Size = New Size(Skins.userimagesize, Skins.userimagesize)
|
||||
userpic.BackgroundImage = Skins.userimage
|
||||
userpic.BackColor = Color.Transparent
|
||||
userpic.BackgroundImageLayout = Skins.userimagelayout
|
||||
If Not IsNothing(Skins.userimagelocation) Then userpic.Location = Skins.userimagelocation
|
||||
txtusername.ForeColor = Skins.inputforecolor
|
||||
txtpassword.ForeColor = Skins.inputforecolor
|
||||
txtusername.BackColor = Skins.inputbackcolor
|
||||
txtpassword.BackColor = Skins.inputbackcolor
|
||||
txtusername.Font = New Font(Skins.inputfont, Skins.inputfontsize, Skins.inputfontstyle)
|
||||
txtpassword.Font = New Font(Skins.inputfont, Skins.inputfontsize, Skins.inputfontstyle)
|
||||
loginbtn.Font = New Font(Skins.buttonfont, Skins.buttonfontsize, Skins.buttonfontstyle)
|
||||
shutdown.Font = New Font(Skins.buttonfont, Skins.buttonfontsize, Skins.buttonfontstyle)
|
||||
txtusername.Location = New Point(Skins.userTextboxX, Skins.userTextBoxY)
|
||||
txtpassword.Location = New Point(Skins.passTextBoxX, Skins.passTextBoxY)
|
||||
loginbtn.Location = New Point(Skins.loginbtnX, Skins.loginbtnY)
|
||||
shutdown.Location = New Point(Skins.shutdownbtnX, Skins.shutdownbtnY)
|
||||
If shutdown.Location.X > preview.Height Then
|
||||
shutdown.Location = New Point(Skins.shutdownbtnX, Skins.shutdownbtnY - pnldefault.Height)
|
||||
End If
|
||||
Titlebar.Height = Skins.titlebarheight
|
||||
lbtitletext.ForeColor = Skins.titletextcolour
|
||||
lbtitletext.BackColor = Skins.titlebarcolour
|
||||
If Skins.titlebar Is Nothing Then lbtitletext.BackgroundImage = Nothing Else lbtitletext.BackgroundImage = Skins.titlebar
|
||||
lbtitletext.BackgroundImageLayout = Skins.titlebarlayout
|
||||
Select Case Skins.titletextpos
|
||||
Case "Left"
|
||||
lbtitletext.TextAlign = ContentAlignment.MiddleLeft
|
||||
Case "Centre"
|
||||
lbtitletext.TextAlign = ContentAlignment.MiddleCenter
|
||||
End Select
|
||||
lbtitletext.Font = New Font(Skins.titletextfontfamily, Skins.titletextfontsize, Skins.titletextfontstyle, GraphicsUnit.Point)
|
||||
Me.TopMost = True
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub userpic_Click(sender As Object, e As EventArgs) Handles userpic.Click
|
||||
currentControl = "User Picture"
|
||||
determineSettings()
|
||||
End Sub
|
||||
|
||||
Private Sub userpic_UserMove(sender As Object, e As MouseEventArgs) Handles userpic.MouseUp
|
||||
userimagelocation = userpic.Location
|
||||
setNewSkin()
|
||||
End Sub
|
||||
|
||||
Public Sub determineSettings()
|
||||
'Sets what settings panel is visible:
|
||||
Select Case currentControl
|
||||
Case "None"
|
||||
pnldefault.Show()
|
||||
Case "User Picture"
|
||||
pnluserpicture.Show()
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
Public Sub applySettings()
|
||||
Skins.userimage = userimage
|
||||
Skins.userimagesize = userimagesize
|
||||
Skins.userimagelayout = userimagelayout
|
||||
Skins.userimagelocation = userimagelocation
|
||||
Skins.inputforecolor = inputforecolor
|
||||
Skins.inputbackcolor = inputbackcolor
|
||||
Skins.inputfont = inputfont
|
||||
Skins.inputfontsize = inputfontsize
|
||||
Skins.inputfontstyle = inputfontstyle
|
||||
Skins.loginbg = loginbg
|
||||
Skins.loginbglayout = loginbglayout
|
||||
Skins.loginbgcolor = loginbgcolor
|
||||
Skins.userTextboxX = userTextboxX
|
||||
Skins.userTextBoxY = userTextBoxY
|
||||
Skins.passTextBoxX = passTextBoxX
|
||||
Skins.passTextBoxY = passTextBoxY
|
||||
Skins.shutdownbtnX = shutdownbtnX
|
||||
Skins.shutdownbtnY = shutdownbtnY
|
||||
Skins.loginbtnX = loginbtnX
|
||||
Skins.loginbtnY = loginbtnY
|
||||
Skins.saveskinfiles(True)
|
||||
infobox.showinfo("Login Screen Customizer", "You have earned " & earnedCP & " Code points for all customizations made to your login screen.")
|
||||
Helper.addCP(earnedCP)
|
||||
End Sub
|
||||
|
||||
Public Sub setDefaults()
|
||||
userimage = Skins.userimage
|
||||
userimagesize = Skins.userimagesize
|
||||
userimagelayout = Skins.userimagelayout
|
||||
userimagelocation = Skins.userimagelocation
|
||||
inputforecolor = Skins.inputforecolor
|
||||
inputbackcolor = Skins.inputbackcolor
|
||||
inputfont = Skins.inputfont
|
||||
inputfontsize = Skins.inputfontsize
|
||||
inputfontstyle = Skins.inputfontstyle
|
||||
loginbg = Skins.loginbg
|
||||
loginbgcolor = Skins.loginbgcolor
|
||||
loginbglayout = Skins.loginbglayout
|
||||
userTextboxX = Skins.userTextboxX
|
||||
userTextBoxY = Skins.userTextBoxY
|
||||
passTextBoxX = Skins.passTextBoxX
|
||||
passTextBoxY = Skins.passTextBoxY
|
||||
shutdownbtnX = Skins.shutdownbtnX
|
||||
shutdownbtnY = Skins.shutdownbtnY
|
||||
loginbtnX = Skins.loginbtnX
|
||||
loginbtnY = Skins.loginbtnY
|
||||
End Sub
|
||||
|
||||
Public Sub setNewSkin()
|
||||
preview.BackColor = loginbgcolor
|
||||
If loginbg Is Nothing Then preview.BackgroundImage = Nothing Else preview.BackgroundImage = loginbg
|
||||
preview.BackgroundImageLayout = loginbglayout
|
||||
|
||||
userpic.BackgroundImage = userimage
|
||||
userpic.Size = New Size(userimagesize, userimagesize)
|
||||
userpic.BackgroundImageLayout = userimagelayout
|
||||
|
||||
txtusername.ForeColor = inputforecolor
|
||||
txtpassword.ForeColor = inputforecolor
|
||||
txtusername.BackColor = inputbackcolor
|
||||
txtpassword.BackColor = inputbackcolor
|
||||
txtusername.Font = New Font(inputfont, inputfontsize, inputfontstyle)
|
||||
txtpassword.Font = New Font(inputfont, inputfontsize, inputfontstyle)
|
||||
loginbtn.Font = New Font(buttonfont, buttonfontsize, buttonfontstyle)
|
||||
shutdown.Font = New Font(buttonfont, buttonfontsize, buttonfontstyle)
|
||||
addRandomCP()
|
||||
|
||||
End Sub
|
||||
|
||||
Public Sub addRandomCP()
|
||||
Dim rand As New Random
|
||||
Dim numToAdd As Integer = rand.Next(1, 5)
|
||||
earnedCP = earnedCP + numToAdd
|
||||
End Sub
|
||||
|
||||
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
|
||||
Graphic_Picker.graphictochange = "User Account Picture"
|
||||
Graphic_Picker.Show()
|
||||
End Sub
|
||||
|
||||
Private Sub txtusername_UserMove(sender As Object, e As MouseEventArgs) Handles txtusername.MouseUp
|
||||
currentControl = "Username Input"
|
||||
determineSettings()
|
||||
userTextboxX = txtusername.Location.X
|
||||
userTextBoxY = txtusername.Location.Y
|
||||
setNewSkin()
|
||||
End Sub
|
||||
|
||||
Private Sub txtpassword_MouseUp(sender As Object, e As MouseEventArgs) Handles txtpassword.MouseUp
|
||||
currentControl = "Password Input"
|
||||
determineSettings()
|
||||
passTextBoxX = txtpassword.Location.X
|
||||
passTextBoxY = txtpassword.Location.Y
|
||||
setNewSkin()
|
||||
End Sub
|
||||
|
||||
Private Sub shutdown_MouseUp(sender As Object, e As MouseEventArgs) Handles shutdown.MouseUp
|
||||
currentControl = "Shutdown Button"
|
||||
determineSettings()
|
||||
shutdownbtnX = shutdown.Location.X
|
||||
shutdownbtnY = shutdown.Location.Y
|
||||
setNewSkin()
|
||||
End Sub
|
||||
|
||||
Private Sub loginbtn_MouseUp(sender As Object, e As MouseEventArgs) Handles loginbtn.MouseUp
|
||||
currentControl = "Log In Button"
|
||||
determineSettings()
|
||||
loginbtnX = loginbtn.Location.X
|
||||
loginbtnY = loginbtn.Location.Y
|
||||
setNewSkin()
|
||||
End Sub
|
||||
End Class
|
112
ShiftOS/FullScreenLogin.Designer.vb
generated
Normal file
112
ShiftOS/FullScreenLogin.Designer.vb
generated
Normal file
|
@ -0,0 +1,112 @@
|
|||
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
|
||||
Partial Class FullScreenLogin
|
||||
Inherits System.Windows.Forms.Form
|
||||
|
||||
'Form overrides dispose to clean up the component list.
|
||||
<System.Diagnostics.DebuggerNonUserCode()> _
|
||||
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.
|
||||
<System.Diagnostics.DebuggerStepThrough()> _
|
||||
Private Sub InitializeComponent()
|
||||
Me.txtusername = New System.Windows.Forms.TextBox()
|
||||
Me.txtpassword = New System.Windows.Forms.TextBox()
|
||||
Me.userpic = New System.Windows.Forms.PictureBox()
|
||||
Me.loginbtn = New System.Windows.Forms.Button()
|
||||
Me.shutdown = New System.Windows.Forms.Button()
|
||||
CType(Me.userpic, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'txtusername
|
||||
'
|
||||
Me.txtusername.BackColor = System.Drawing.Color.Black
|
||||
Me.txtusername.Font = New System.Drawing.Font("Trebuchet MS", 12.0!)
|
||||
Me.txtusername.ForeColor = System.Drawing.Color.Gray
|
||||
Me.txtusername.Location = New System.Drawing.Point(171, 202)
|
||||
Me.txtusername.Name = "txtusername"
|
||||
Me.txtusername.Size = New System.Drawing.Size(248, 26)
|
||||
Me.txtusername.TabIndex = 0
|
||||
Me.txtusername.Text = "Username"
|
||||
'
|
||||
'txtpassword
|
||||
'
|
||||
Me.txtpassword.BackColor = System.Drawing.Color.Black
|
||||
Me.txtpassword.Font = New System.Drawing.Font("Trebuchet MS", 12.0!)
|
||||
Me.txtpassword.ForeColor = System.Drawing.Color.Gray
|
||||
Me.txtpassword.Location = New System.Drawing.Point(171, 243)
|
||||
Me.txtpassword.Name = "txtpassword"
|
||||
Me.txtpassword.Size = New System.Drawing.Size(248, 26)
|
||||
Me.txtpassword.TabIndex = 1
|
||||
Me.txtpassword.Text = "Password"
|
||||
Me.txtpassword.UseSystemPasswordChar = True
|
||||
'
|
||||
'userpic
|
||||
'
|
||||
Me.userpic.Location = New System.Drawing.Point(36, 202)
|
||||
Me.userpic.Name = "userpic"
|
||||
Me.userpic.Size = New System.Drawing.Size(128, 128)
|
||||
Me.userpic.TabIndex = 2
|
||||
Me.userpic.TabStop = False
|
||||
'
|
||||
'loginbtn
|
||||
'
|
||||
Me.loginbtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat
|
||||
Me.loginbtn.Font = New System.Drawing.Font("Trebuchet MS", 12.0!, System.Drawing.FontStyle.Italic)
|
||||
Me.loginbtn.ForeColor = System.Drawing.Color.White
|
||||
Me.loginbtn.Location = New System.Drawing.Point(268, 286)
|
||||
Me.loginbtn.Name = "loginbtn"
|
||||
Me.loginbtn.Size = New System.Drawing.Size(151, 43)
|
||||
Me.loginbtn.TabIndex = 3
|
||||
Me.loginbtn.Text = "Log In"
|
||||
Me.loginbtn.UseVisualStyleBackColor = True
|
||||
'
|
||||
'shutdown
|
||||
'
|
||||
Me.shutdown.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
|
||||
Me.shutdown.FlatStyle = System.Windows.Forms.FlatStyle.Flat
|
||||
Me.shutdown.Font = New System.Drawing.Font("Trebuchet MS", 12.0!, System.Drawing.FontStyle.Italic)
|
||||
Me.shutdown.ForeColor = System.Drawing.Color.White
|
||||
Me.shutdown.Location = New System.Drawing.Point(1755, 979)
|
||||
Me.shutdown.Name = "shutdown"
|
||||
Me.shutdown.Size = New System.Drawing.Size(137, 50)
|
||||
Me.shutdown.TabIndex = 4
|
||||
Me.shutdown.Text = "Shutdown"
|
||||
Me.shutdown.UseVisualStyleBackColor = True
|
||||
'
|
||||
'FullScreenLogin
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||
Me.BackColor = System.Drawing.Color.Black
|
||||
Me.ClientSize = New System.Drawing.Size(1904, 1041)
|
||||
Me.Controls.Add(Me.shutdown)
|
||||
Me.Controls.Add(Me.loginbtn)
|
||||
Me.Controls.Add(Me.userpic)
|
||||
Me.Controls.Add(Me.txtpassword)
|
||||
Me.Controls.Add(Me.txtusername)
|
||||
Me.Name = "FullScreenLogin"
|
||||
Me.Text = "FullScreenLogin"
|
||||
CType(Me.userpic, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.ResumeLayout(False)
|
||||
Me.PerformLayout()
|
||||
|
||||
End Sub
|
||||
Friend WithEvents txtusername As System.Windows.Forms.TextBox
|
||||
Friend WithEvents txtpassword As System.Windows.Forms.TextBox
|
||||
Friend WithEvents userpic As System.Windows.Forms.PictureBox
|
||||
Friend WithEvents loginbtn As System.Windows.Forms.Button
|
||||
Friend WithEvents shutdown As System.Windows.Forms.Button
|
||||
End Class
|
120
ShiftOS/FullScreenLogin.resx
Normal file
120
ShiftOS/FullScreenLogin.resx
Normal file
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
48
ShiftOS/FullScreenLogin.vb
Normal file
48
ShiftOS/FullScreenLogin.vb
Normal file
|
@ -0,0 +1,48 @@
|
|||
Public Class FullScreenLogin
|
||||
|
||||
Private Sub FullScreenLogin_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None
|
||||
Me.WindowState = FormWindowState.Maximized
|
||||
setskin()
|
||||
End Sub
|
||||
|
||||
Public Sub setskin()
|
||||
Me.BackColor = Skins.loginbgcolor
|
||||
Me.BackgroundImage = Skins.loginbg
|
||||
Me.BackgroundImageLayout = Skins.loginbglayout
|
||||
userpic.Size = New Size(Skins.userimagesize, Skins.userimagesize)
|
||||
userpic.BackgroundImage = Skins.userimage
|
||||
userpic.BackColor = Color.Transparent
|
||||
userpic.BackgroundImageLayout = Skins.userimagelayout
|
||||
If Not IsNothing(Skins.userimagelocation) Then userpic.Location = Skins.userimagelocation
|
||||
txtusername.ForeColor = Skins.inputforecolor
|
||||
txtpassword.ForeColor = Skins.inputforecolor
|
||||
txtusername.BackColor = Skins.inputbackcolor
|
||||
txtpassword.BackColor = Skins.inputbackcolor
|
||||
txtusername.Font = New Font(Skins.inputfont, Skins.inputfontsize, Skins.inputfontstyle)
|
||||
txtpassword.Font = New Font(Skins.inputfont, Skins.inputfontsize, Skins.inputfontstyle)
|
||||
loginbtn.Font = New Font(Skins.buttonfont, Skins.buttonfontsize, Skins.buttonfontstyle)
|
||||
shutdown.Font = New Font(Skins.buttonfont, Skins.buttonfontsize, Skins.buttonfontstyle)
|
||||
txtusername.Location = New Point(Skins.userTextboxX, Skins.userTextBoxY)
|
||||
txtpassword.Location = New Point(Skins.passTextBoxX, Skins.passTextBoxY)
|
||||
loginbtn.Location = New Point(Skins.loginbtnX, Skins.loginbtnY)
|
||||
shutdown.Location = New Point(Skins.shutdownbtnX, Skins.shutdownbtnY)
|
||||
Me.TopMost = True
|
||||
End Sub
|
||||
|
||||
Private Sub loginbtn_Click(sender As Object, e As EventArgs) Handles loginbtn.Click
|
||||
If txtusername.Text = ShiftOSDesktop.username And txtpassword.Text = ShiftOSDesktop.password Then
|
||||
Me.Close()
|
||||
infobox.showinfo("Login Screen", "The Login Screen has completed with no errors!")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles shutdown.Click
|
||||
ShiftOSDesktop.shutdownshiftos()
|
||||
End Sub
|
||||
|
||||
Private Sub clearChars(sender As Object, e As MouseEventArgs) Handles txtusername.MouseDown, txtpassword.MouseDown
|
||||
txtusername.Text = ""
|
||||
txtpassword.Text = ""
|
||||
End Sub
|
||||
End Class
|
|
@ -85,6 +85,9 @@
|
|||
<ApplicationIcon>ShiftOSLogo.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="MichaelsMovableControlSuite">
|
||||
<HintPath>..\..\..\MovableControls\MichaelsMovableControlSuite\MichaelsMovableControlSuite\bin\Debug\MichaelsMovableControlSuite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
|
@ -151,6 +154,18 @@
|
|||
<Compile Include="Catalyst_Main.vb">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FullScreenLogin Customizer.Designer.vb">
|
||||
<DependentUpon>FullScreenLogin Customizer.vb</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="FullScreenLogin Customizer.vb">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FullScreenLogin.Designer.vb">
|
||||
<DependentUpon>FullScreenLogin.vb</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="FullScreenLogin.vb">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="loginform.Designer.vb">
|
||||
<DependentUpon>loginform.vb</DependentUpon>
|
||||
</Compile>
|
||||
|
@ -474,6 +489,12 @@
|
|||
<EmbeddedResource Include="coherencemodeform.resx">
|
||||
<DependentUpon>coherencemodeform.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FullScreenLogin Customizer.resx">
|
||||
<DependentUpon>FullScreenLogin Customizer.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FullScreenLogin.resx">
|
||||
<DependentUpon>FullScreenLogin.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="loginform.resx">
|
||||
<DependentUpon>loginform.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
|
|
|
@ -1620,7 +1620,14 @@
|
|||
For Each Control In MyBase.Controls
|
||||
Control.visible = False
|
||||
Next
|
||||
If Skins.autologin = False Then
|
||||
If Skins.fullScreen = False Then
|
||||
loginform.ShowDialog()
|
||||
Else
|
||||
FullScreenLogin.ShowDialog()
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
For Each Control In MyBase.Controls
|
||||
Control.visible = True
|
||||
|
|
|
@ -956,6 +956,10 @@ Public Class Terminal
|
|||
|
||||
If further = True Then
|
||||
Select Case command
|
||||
Case "test fullscreen login customizer"
|
||||
FullScreenLoginCustomizer.Show()
|
||||
Case "test fullscreen login"
|
||||
FullScreenLogin.Show()
|
||||
Case "adv app launcher on"
|
||||
ShiftOSDesktop.boughtadvapplauncher = True
|
||||
ShiftOSDesktop.savegame()
|
||||
|
|
|
@ -172,6 +172,43 @@ Module Skins
|
|||
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)
|
||||
|
@ -191,6 +228,12 @@ Module Skins
|
|||
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
|
||||
|
@ -440,6 +483,21 @@ Module Skins
|
|||
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()
|
||||
|
@ -508,6 +566,8 @@ Module Skins
|
|||
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,
|
||||
|
@ -640,6 +700,23 @@ Module Skins
|
|||
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"
|
||||
|
|
Loading…
Reference in a new issue