diff --git a/.vs/ShiftOS/v15/sqlite3/storage.ide b/.vs/ShiftOS/v15/sqlite3/storage.ide
index 31873c6..232bc17 100644
Binary files a/.vs/ShiftOS/v15/sqlite3/storage.ide and b/.vs/ShiftOS/v15/sqlite3/storage.ide differ
diff --git a/ShiftOS.Engine/ShiftOS.Engine.csproj b/ShiftOS.Engine/ShiftOS.Engine.csproj
index ad5696a..8683d20 100644
--- a/ShiftOS.Engine/ShiftOS.Engine.csproj
+++ b/ShiftOS.Engine/ShiftOS.Engine.csproj
@@ -48,7 +48,6 @@
True
Resources.resx
-
UserControl
diff --git a/ShiftOS.Engine/SkinningEngine.cs b/ShiftOS.Engine/SkinningEngine.cs
deleted file mode 100644
index b94069d..0000000
--- a/ShiftOS.Engine/SkinningEngine.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Forms;
-using ShiftOS.Engine.WindowManager;
-using System.Drawing;
-
-namespace ShiftOS.Engine
-{
- public static class SkinningEngine
- {
- static ShiftWindow shiftWindow = new ShiftWindow();
- public static void SetTitleBarColor(Color selectedColor)
- {
- shiftWindow.top.BackColor = selectedColor;
- }
- public static void SetBackColor(Color selectedColor)
- {
- shiftWindow.programContent.BackColor = selectedColor;
- }
- }
-}
diff --git a/ShiftOS.Main/ShiftOS.Main.csproj b/ShiftOS.Main/ShiftOS.Main.csproj
index 77bf889..18e842f 100644
--- a/ShiftOS.Main/ShiftOS.Main.csproj
+++ b/ShiftOS.Main/ShiftOS.Main.csproj
@@ -52,12 +52,24 @@
+
+ UserControl
+
+
+ SelectColor.cs
+
UserControl
ShiftDemo.cs
+
+ UserControl
+
+
+ Shifter.cs
+
Form
@@ -77,9 +89,15 @@
Resources.resx
True
+
+ SelectColor.cs
+
ShiftDemo.cs
+
+ Shifter.cs
+
TestForm.cs
diff --git a/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/SelectColor.Designer.cs b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/SelectColor.Designer.cs
new file mode 100644
index 0000000..e305651
--- /dev/null
+++ b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/SelectColor.Designer.cs
@@ -0,0 +1,128 @@
+namespace ShiftOS.Main.ShiftOS.Apps
+{
+ partial class SelectColor
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Component Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.label1 = new System.Windows.Forms.Label();
+ this.label2 = new System.Windows.Forms.Label();
+ this.label3 = new System.Windows.Forms.Label();
+ this.textBox1 = new System.Windows.Forms.TextBox();
+ this.textBox2 = new System.Windows.Forms.TextBox();
+ this.textBox3 = new System.Windows.Forms.TextBox();
+ this.btnSetColor = new System.Windows.Forms.Button();
+ this.SuspendLayout();
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(21, 34);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(39, 13);
+ this.label1.TabIndex = 0;
+ this.label1.Text = "Red:";
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(21, 62);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(55, 13);
+ this.label2.TabIndex = 1;
+ this.label2.Text = "Green:";
+ //
+ // label3
+ //
+ this.label3.AutoSize = true;
+ this.label3.Location = new System.Drawing.Point(21, 92);
+ this.label3.Name = "label3";
+ this.label3.Size = new System.Drawing.Size(47, 13);
+ this.label3.TabIndex = 2;
+ this.label3.Text = "Blue:";
+ //
+ // textBox1
+ //
+ this.textBox1.Location = new System.Drawing.Point(75, 27);
+ this.textBox1.Name = "textBox1";
+ this.textBox1.Size = new System.Drawing.Size(206, 20);
+ this.textBox1.TabIndex = 3;
+ //
+ // textBox2
+ //
+ this.textBox2.Location = new System.Drawing.Point(75, 58);
+ this.textBox2.Name = "textBox2";
+ this.textBox2.Size = new System.Drawing.Size(206, 20);
+ this.textBox2.TabIndex = 4;
+ //
+ // textBox3
+ //
+ this.textBox3.Location = new System.Drawing.Point(75, 88);
+ this.textBox3.Name = "textBox3";
+ this.textBox3.Size = new System.Drawing.Size(206, 20);
+ this.textBox3.TabIndex = 5;
+ //
+ // btnSetColor
+ //
+ this.btnSetColor.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
+ this.btnSetColor.Location = new System.Drawing.Point(75, 121);
+ this.btnSetColor.Name = "btnSetColor";
+ this.btnSetColor.Size = new System.Drawing.Size(93, 23);
+ this.btnSetColor.TabIndex = 6;
+ this.btnSetColor.Text = "Set Color";
+ this.btnSetColor.UseVisualStyleBackColor = true;
+ this.btnSetColor.Click += new System.EventHandler(this.btnSetColor_Click);
+ //
+ // SelectColor
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.Controls.Add(this.btnSetColor);
+ this.Controls.Add(this.textBox3);
+ this.Controls.Add(this.textBox2);
+ this.Controls.Add(this.textBox1);
+ this.Controls.Add(this.label3);
+ this.Controls.Add(this.label2);
+ this.Controls.Add(this.label1);
+ this.Font = new System.Drawing.Font("Lucida Console", 9.25F);
+ this.Name = "SelectColor";
+ this.Size = new System.Drawing.Size(317, 158);
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.Label label2;
+ private System.Windows.Forms.Label label3;
+ private System.Windows.Forms.TextBox textBox1;
+ private System.Windows.Forms.TextBox textBox2;
+ private System.Windows.Forms.TextBox textBox3;
+ private System.Windows.Forms.Button btnSetColor;
+ }
+}
diff --git a/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/SelectColor.cs b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/SelectColor.cs
new file mode 100644
index 0000000..9062947
--- /dev/null
+++ b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/SelectColor.cs
@@ -0,0 +1,60 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using ShiftOS.Engine.WindowManager;
+
+namespace ShiftOS.Main.ShiftOS.Apps
+{
+ public partial class SelectColor : UserControl
+ {
+ ShiftWM shiftWM = new ShiftWM();
+ Color finalColor;
+ int colorType1;
+ int colorType2;
+ int colorType3;
+ public SelectColor()
+ {
+ InitializeComponent();
+
+ }
+
+ private void btnSetColor_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ colorType1 = Convert.ToInt32(textBox1.Text);
+ colorType2 = Convert.ToInt32(textBox2.Text);
+ colorType3 = Convert.ToInt32(textBox3.Text);
+ }
+ catch(Exception ex)
+ {
+ shiftWM.StartInfoboxSession("Error!", "Failed to parse integer. Error:\n" + ex, InfoboxTemplate.buttonType.OK);
+ }
+
+ if (colorType1 > 255 || colorType2 > 255 || colorType3 > 255)
+ {
+ shiftWM.StartInfoboxSession("Error!", "A value cannot be greater than 255!", InfoboxTemplate.buttonType.OK);
+ }
+ else
+ {
+ try
+ {
+ ShiftWindow sw = new ShiftWindow();
+ finalColor = Color.FromArgb(colorType1, colorType2, colorType3);
+ this.BackColor = finalColor;
+ shiftWM.StartInfoboxSession("Success!", "Changed color to:\n" + colorType1.ToString() + ", " + colorType2.ToString() + ", " + colorType3.ToString() + ".", InfoboxTemplate.buttonType.OK);
+ }
+ catch (Exception ex)
+ {
+ shiftWM.StartInfoboxSession("Error!", "An error occured while setting the color.", InfoboxTemplate.buttonType.OK);
+ }
+ }
+ }
+ }
+}
diff --git a/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/SelectColor.resx b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/SelectColor.resx
new file mode 100644
index 0000000..1af7de1
--- /dev/null
+++ b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/SelectColor.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/Shifter.Designer.cs b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/Shifter.Designer.cs
new file mode 100644
index 0000000..a89dca4
--- /dev/null
+++ b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/Shifter.Designer.cs
@@ -0,0 +1,119 @@
+namespace ShiftOS.Main.ShiftOS.Apps
+{
+ partial class Shifter
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Component Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.tabControl1 = new System.Windows.Forms.TabControl();
+ this.tabPage1 = new System.Windows.Forms.TabPage();
+ this.groupBox1 = new System.Windows.Forms.GroupBox();
+ this.button1 = new System.Windows.Forms.Button();
+ this.tabPage2 = new System.Windows.Forms.TabPage();
+ this.tabControl1.SuspendLayout();
+ this.tabPage1.SuspendLayout();
+ this.groupBox1.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // tabControl1
+ //
+ this.tabControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.tabControl1.Controls.Add(this.tabPage1);
+ this.tabControl1.Controls.Add(this.tabPage2);
+ this.tabControl1.Location = new System.Drawing.Point(3, 3);
+ this.tabControl1.Name = "tabControl1";
+ this.tabControl1.SelectedIndex = 0;
+ this.tabControl1.Size = new System.Drawing.Size(334, 322);
+ this.tabControl1.TabIndex = 0;
+ //
+ // tabPage1
+ //
+ this.tabPage1.Controls.Add(this.groupBox1);
+ this.tabPage1.Location = new System.Drawing.Point(4, 22);
+ this.tabPage1.Name = "tabPage1";
+ this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
+ this.tabPage1.Size = new System.Drawing.Size(326, 296);
+ this.tabPage1.TabIndex = 0;
+ this.tabPage1.Text = "Titlebar";
+ this.tabPage1.UseVisualStyleBackColor = true;
+ //
+ // groupBox1
+ //
+ this.groupBox1.Controls.Add(this.button1);
+ this.groupBox1.Location = new System.Drawing.Point(6, 6);
+ this.groupBox1.Name = "groupBox1";
+ this.groupBox1.Size = new System.Drawing.Size(161, 108);
+ this.groupBox1.TabIndex = 0;
+ this.groupBox1.TabStop = false;
+ this.groupBox1.Text = "groupBox1";
+ //
+ // button1
+ //
+ this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
+ this.button1.Font = new System.Drawing.Font("Lucida Console", 8.25F);
+ this.button1.Location = new System.Drawing.Point(6, 19);
+ this.button1.Name = "button1";
+ this.button1.Size = new System.Drawing.Size(149, 23);
+ this.button1.TabIndex = 1;
+ this.button1.Text = "Set Titlebar Color";
+ this.button1.UseVisualStyleBackColor = true;
+ this.button1.Click += new System.EventHandler(this.button1_Click);
+ //
+ // tabPage2
+ //
+ this.tabPage2.Location = new System.Drawing.Point(4, 22);
+ this.tabPage2.Name = "tabPage2";
+ this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
+ this.tabPage2.Size = new System.Drawing.Size(326, 296);
+ this.tabPage2.TabIndex = 1;
+ this.tabPage2.Text = "tabPage2";
+ this.tabPage2.UseVisualStyleBackColor = true;
+ //
+ // Shifter
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.Controls.Add(this.tabControl1);
+ this.Name = "Shifter";
+ this.Size = new System.Drawing.Size(340, 325);
+ this.tabControl1.ResumeLayout(false);
+ this.tabPage1.ResumeLayout(false);
+ this.groupBox1.ResumeLayout(false);
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.TabControl tabControl1;
+ private System.Windows.Forms.TabPage tabPage1;
+ private System.Windows.Forms.GroupBox groupBox1;
+ private System.Windows.Forms.Button button1;
+ private System.Windows.Forms.TabPage tabPage2;
+ }
+}
diff --git a/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/Shifter.cs b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/Shifter.cs
new file mode 100644
index 0000000..74b2079
--- /dev/null
+++ b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/Shifter.cs
@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using ShiftOS.Engine.WindowManager;
+
+namespace ShiftOS.Main.ShiftOS.Apps
+{
+ public partial class Shifter : UserControl
+ {
+ public int colorType; //This is a check to see what option was chosen.
+ ShiftWM wm = new ShiftWM();
+ public Shifter()
+ {
+ InitializeComponent();
+ }
+
+ private void button1_Click(object sender, EventArgs e)
+ {
+ colorType = 1;
+ wm.Init(new SelectColor(), "Select a color", Properties.Resources.iconColourPicker_fw);
+ }
+ }
+}
diff --git a/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/Shifter.resx b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/Shifter.resx
new file mode 100644
index 0000000..1af7de1
--- /dev/null
+++ b/ShiftOS.Main/ShiftOS/Apps/ShifterStuff/Shifter.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file