diff options
| author | EverythingWindows <[email protected]> | 2022-11-20 21:53:17 +0700 |
|---|---|---|
| committer | EverythingWindows <[email protected]> | 2022-11-20 21:53:17 +0700 |
| commit | 3f4edf1b79ee4ee5a73251930af641bcd0db225e (patch) | |
| tree | c018dad0d65e9997867f951df94ef907ea18956c /ShiftOS-TheRevival/MainForms | |
| parent | 9d384be17594240918b6b277521d3eaa15151ae9 (diff) | |
| download | shiftos-therevival-old-3f4edf1b79ee4ee5a73251930af641bcd0db225e.tar.gz shiftos-therevival-old-3f4edf1b79ee4ee5a73251930af641bcd0db225e.tar.bz2 shiftos-therevival-old-3f4edf1b79ee4ee5a73251930af641bcd0db225e.zip | |
trial on Dual Window Manager
Diffstat (limited to 'ShiftOS-TheRevival/MainForms')
9 files changed, 443 insertions, 1 deletions
diff --git a/ShiftOS-TheRevival/MainForms/Applications/Console.vb b/ShiftOS-TheRevival/MainForms/Applications/Console.vb index 3ae1603..61f6920 100644 --- a/ShiftOS-TheRevival/MainForms/Applications/Console.vb +++ b/ShiftOS-TheRevival/MainForms/Applications/Console.vb @@ -17,6 +17,7 @@ Public Class Console Public ShOSKey As String 'DOSKEY tracking string for ShiftOS Public Secure As Boolean 'Define either Secure Text mode is enabled or not (experimental!) Public SecureString As String 'String for Secure Text mode (experimental) + Public DuWM_PID As Integer 'DuWM Process ID Private Sub Console_Load(sender As Object, e As EventArgs) Handles MyBase.Load With ShortcutHandler @@ -223,7 +224,7 @@ Public Class Console End If End If End If - If Strings.OnceInfo(0) = "Yes" Then + If Strings.OnceInfo(0) = "Yes" Then InfoBar.Text = InfoBar.Text & " root |" Else InfoBar.Text = InfoBar.Text & " user |" diff --git a/ShiftOS-TheRevival/MainForms/Applications/Shifter.Designer.vb b/ShiftOS-TheRevival/MainForms/Applications/Shifter.Designer.vb new file mode 100644 index 0000000..38ead47 --- /dev/null +++ b/ShiftOS-TheRevival/MainForms/Applications/Shifter.Designer.vb @@ -0,0 +1,55 @@ +<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> +Partial Class Shifter + 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.Label1 = New System.Windows.Forms.Label() + Me.SuspendLayout() + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(12, 9) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(40, 13) + Me.Label1.TabIndex = 0 + Me.Label1.Text = "Shifter!" + ' + 'Shifter + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.BackColor = System.Drawing.Color.White + Me.ClientSize = New System.Drawing.Size(800, 450) + Me.Controls.Add(Me.Label1) + Me.ForeColor = System.Drawing.Color.Black + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None + Me.Name = "Shifter" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Shifter" + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + + Friend WithEvents Label1 As Label +End Class diff --git a/ShiftOS-TheRevival/MainForms/Applications/Shifter.resx b/ShiftOS-TheRevival/MainForms/Applications/Shifter.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/ShiftOS-TheRevival/MainForms/Applications/Shifter.resx @@ -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>
\ No newline at end of file diff --git a/ShiftOS-TheRevival/MainForms/Applications/Shifter.vb b/ShiftOS-TheRevival/MainForms/Applications/Shifter.vb new file mode 100644 index 0000000..cea6fe3 --- /dev/null +++ b/ShiftOS-TheRevival/MainForms/Applications/Shifter.vb @@ -0,0 +1,13 @@ +Public Class Shifter + Public DuWM_PID As Integer 'DuWM Process ID + + Private Sub Shifter_Load(sender As Object, e As EventArgs) Handles MyBase.Load + + End Sub + + Private Sub DuWM_Tick(sender As Object, e As EventArgs) + If Strings.ProcessID(DuWM_PID) = 0 Then + Close() + End If + End Sub +End Class
\ No newline at end of file diff --git a/ShiftOS-TheRevival/MainForms/DesktopEnvironment/master/DesktopManager.vb b/ShiftOS-TheRevival/MainForms/DesktopEnvironment/master/DesktopManager.vb index 576c568..cbf8cbb 100644 --- a/ShiftOS-TheRevival/MainForms/DesktopEnvironment/master/DesktopManager.vb +++ b/ShiftOS-TheRevival/MainForms/DesktopEnvironment/master/DesktopManager.vb @@ -4,10 +4,12 @@ Desktop.TopMost = False Desktop.FormBorderStyle = FormBorderStyle.None Desktop.WindowState = FormWindowState.Maximized + Cursor.Show() End Sub Public Sub StopX() Desktop.Close() + Cursor.Hide() Console_Full() End Sub End Module diff --git a/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_Main.vb b/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_Main.vb new file mode 100644 index 0000000..f3985a9 --- /dev/null +++ b/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_Main.vb @@ -0,0 +1,57 @@ +Module DuWM_Main + Public IsDual As Boolean + + Public Sub DuWM_FirstWindowSet(WindowName As Form) + WindowName.Height = Desktop.Height - 20 + WindowName.Width = (Desktop.Width / 2) - 20 + WindowName.Location = New Point(10, 10) + End Sub + + Public Sub DuWM_SecondWindowSet(WindowName As Form) + WindowName.Show() + WindowName.Height = Desktop.Height - 20 + WindowName.Width = (Desktop.Width / 2) - 20 + WindowName.Location = New Point((Desktop.Width / 2) + 10, 10) + End Sub + + 'Public Sub DuWM_GenerateWindowSet(WindowName As Form, PID As Integer) + ' Dim NewWContainer As New DuWM_WindowContainer + ' NewWContainer.Width = (Desktop.Width / 2) - 10 + ' NewWContainer.Height = Desktop.Height - 20 + ' NewWContainer.ChildForm = WindowName + ' NewWContainer.ChildForm.TopLevel = False + ' NewWContainer.ChildForm.FormBorderStyle = FormBorderStyle.None + ' NewWContainer.ChildForm.Size = New Size((Desktop.Width / 2) - 10, Desktop.Height - 20) + ' Select Case PID + ' Case 0 + ' NewWContainer.Location = New Point(10, 10) + ' Case 1 + ' NewWContainer.Location = New Point((Desktop.Width / 2) + 10, 10) + ' End Select + ' NewWContainer.ChildForm.WindowState = FormWindowState.Normal + ' NewWContainer.ChildForm.Visible = False + ' NewWContainer.DuWM_ContainerPanel.Controls.Add(NewWContainer.ChildForm) + ' Select Case NewWContainer.ChildForm.Visible + ' Case False + ' NewWContainer.ChildForm.Visible = True + ' Case Else + ' NewWContainer.ChildForm.Visible = False + ' End Select + ' Dim WindowNameStr As String = Convert.ToString(WindowName) + ' Select Case WindowNameStr + ' Case "Console" + ' NewWContainer.DuWM_PID = 0 + ' Strings.ProcessID(0) = 1 + ' Case "Shifter" + ' NewWContainer.DuWM_PID = 1 + ' Strings.ProcessID(1) = 1 + ' End Select + ' NewWContainer.Show() + ' NewWContainer.DuWM_WMCheck.Start() + 'End Sub + + 'Public Sub DuWM_KillAllWindow() + ' Strings.ProcessID(0) = 0 + ' Strings.ProcessID(1) = 0 + 'End Sub +End Module diff --git a/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_WindowContainer.Designer.vb b/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_WindowContainer.Designer.vb new file mode 100644 index 0000000..b9d6a4e --- /dev/null +++ b/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_WindowContainer.Designer.vb @@ -0,0 +1,57 @@ +<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _ +Partial Class DuWM_WindowContainer + 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.components = New System.ComponentModel.Container() + Me.DuWM_ContainerPanel = New System.Windows.Forms.Panel() + Me.DuWM_WMCheck = New System.Windows.Forms.Timer(Me.components) + Me.SuspendLayout() + ' + 'DuWM_ContainerPanel + ' + Me.DuWM_ContainerPanel.Dock = System.Windows.Forms.DockStyle.Fill + Me.DuWM_ContainerPanel.Location = New System.Drawing.Point(0, 0) + Me.DuWM_ContainerPanel.Name = "DuWM_ContainerPanel" + Me.DuWM_ContainerPanel.Size = New System.Drawing.Size(800, 450) + Me.DuWM_ContainerPanel.TabIndex = 0 + ' + 'DuWM_WMCheck + ' + ' + 'DuWM_WindowContainer + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.BackColor = System.Drawing.Color.White + Me.ClientSize = New System.Drawing.Size(800, 450) + Me.Controls.Add(Me.DuWM_ContainerPanel) + Me.ForeColor = System.Drawing.Color.Black + Me.Name = "DuWM_WindowContainer" + Me.Text = "DuWM_WindowContainer" + Me.ResumeLayout(False) + + End Sub + + Friend WithEvents DuWM_ContainerPanel As Panel + Friend WithEvents DuWM_WMCheck As Timer +End Class diff --git a/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_WindowContainer.resx b/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_WindowContainer.resx new file mode 100644 index 0000000..d87325b --- /dev/null +++ b/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_WindowContainer.resx @@ -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> + <metadata name="DuWM_WMCheck.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>17, 17</value> + </metadata> +</root>
\ No newline at end of file diff --git a/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_WindowContainer.vb b/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_WindowContainer.vb new file mode 100644 index 0000000..b845522 --- /dev/null +++ b/ShiftOS-TheRevival/MainForms/WindowManager/DualWindowManager/DuWM_WindowContainer.vb @@ -0,0 +1,14 @@ +Public Class DuWM_WindowContainer + Public ChildForm As Form + Public DuWM_PID As Integer + + Private Sub DuWM_WindowContainer_Load(sender As Object, e As EventArgs) Handles MyBase.Load + + End Sub + + Private Sub DuWM_WMCheck_Tick(sender As Object, e As EventArgs) Handles DuWM_WMCheck.Tick + If Strings.ProcessID(DuWM_PID) = 0 Then + Close() + End If + End Sub +End Class
\ No newline at end of file |
