diff options
Diffstat (limited to 'ShiftOS.WinForms/Applications')
25 files changed, 1478 insertions, 346 deletions
diff --git a/ShiftOS.WinForms/Applications/AddressBook.cs b/ShiftOS.WinForms/Applications/AddressBook.cs index bc6a4cd..4d46aab 100644 --- a/ShiftOS.WinForms/Applications/AddressBook.cs +++ b/ShiftOS.WinForms/Applications/AddressBook.cs @@ -14,7 +14,7 @@ using Newtonsoft.Json; namespace ShiftOS.WinForms.Applications { [WinOpen("{WO_ADDRESSBOOK}")] - [AppscapeEntry("{TITLE_ADDRESSBOOK}", "{DESC_ADDRESSBOOK}", 1024, 750, null, "{AL_OFFICE}")] + [AppscapeEntry("address_book", "{TITLE_ADDRESSBOOK}", "{DESC_ADDRESSBOOK}", 1024, 750, null, "{AL_OFFICE}")] [DefaultTitle("{TITLE_ADDRESSBOOK}")] [Launcher("{TITLE_ADDRESSBOOK}", false, null, "{AL_OFFICE}")] public partial class AddressBook : UserControl, IShiftOSWindow diff --git a/ShiftOS.WinForms/Applications/Artpad.Designer.cs b/ShiftOS.WinForms/Applications/Artpad.Designer.cs index 7b94c34..f30839a 100644 --- a/ShiftOS.WinForms/Applications/Artpad.Designer.cs +++ b/ShiftOS.WinForms/Applications/Artpad.Designer.cs @@ -50,7 +50,6 @@ namespace ShiftOS.WinForms.Applications this.pgcontents = new System.Windows.Forms.Panel(); this.pnldrawingbackground = new System.Windows.Forms.Panel(); this.pnlinitialcanvassettings = new System.Windows.Forms.Panel(); - this.btncancel = new System.Windows.Forms.Button(); this.btncreate = new System.Windows.Forms.Button(); this.Label11 = new System.Windows.Forms.Label(); this.lbltotalpixels = new System.Windows.Forms.Label(); @@ -205,6 +204,11 @@ namespace ShiftOS.WinForms.Applications this.Label4 = new System.Windows.Forms.Label(); this.line6 = new System.Windows.Forms.Panel(); this.pnltoolproperties = new System.Windows.Forms.Panel(); + this.pnlmagnifiersettings = new System.Windows.Forms.Panel(); + this.btnzoomout = new System.Windows.Forms.Button(); + this.btnzoomin = new System.Windows.Forms.Button(); + this.lblzoomlevel = new System.Windows.Forms.Label(); + this.Label7 = new System.Windows.Forms.Label(); this.pnleracertoolsettings = new System.Windows.Forms.Panel(); this.Label28 = new System.Windows.Forms.Label(); this.btneracersquare = new System.Windows.Forms.Button(); @@ -255,11 +259,6 @@ namespace ShiftOS.WinForms.Applications this.Label3 = new System.Windows.Forms.Label(); this.Label2 = new System.Windows.Forms.Label(); this.Label1 = new System.Windows.Forms.Label(); - this.pnlmagnifiersettings = new System.Windows.Forms.Panel(); - this.btnzoomout = new System.Windows.Forms.Button(); - this.btnzoomin = new System.Windows.Forms.Button(); - this.lblzoomlevel = new System.Windows.Forms.Label(); - this.Label7 = new System.Windows.Forms.Label(); this.pnlfloodfillsettings = new System.Windows.Forms.Panel(); this.Label12 = new System.Windows.Forms.Label(); this.Label15 = new System.Windows.Forms.Label(); @@ -292,12 +291,6 @@ namespace ShiftOS.WinForms.Applications this.btnpaintbrush = new System.Windows.Forms.Button(); this.btntexttool = new System.Windows.Forms.Button(); this.btneracer = new System.Windows.Forms.Button(); - this.btnnew = new System.Windows.Forms.Button(); - this.btnmagnify = new System.Windows.Forms.Button(); - this.btnopen = new System.Windows.Forms.Button(); - this.btnsave = new System.Windows.Forms.Button(); - this.btnundo = new System.Windows.Forms.Button(); - this.btnredo = new System.Windows.Forms.Button(); this.line1 = new System.Windows.Forms.Panel(); this.pnltoolpreview = new System.Windows.Forms.Panel(); this.Label13 = new System.Windows.Forms.Label(); @@ -311,6 +304,22 @@ namespace ShiftOS.WinForms.Applications this.pullbottom = new System.Windows.Forms.Timer(this.components); this.pullside = new System.Windows.Forms.Timer(this.components); this.tmrsetupui = new System.Windows.Forms.Timer(this.components); + this.msTools = new System.Windows.Forms.MenuStrip(); + this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.gENNEWToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.gENLOADToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.gENSAVEToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.gENEXITToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.editToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.undoToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.redoToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.viewToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.zoomToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem5 = new System.Windows.Forms.ToolStripMenuItem(); + this.moreControlsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.pgcontents.SuspendLayout(); this.pnldrawingbackground.SuspendLayout(); this.pnlinitialcanvassettings.SuspendLayout(); @@ -320,6 +329,7 @@ namespace ShiftOS.WinForms.Applications this.pnlpallet.SuspendLayout(); this.flowcolours.SuspendLayout(); this.pnltoolproperties.SuspendLayout(); + this.pnlmagnifiersettings.SuspendLayout(); this.pnleracertoolsettings.SuspendLayout(); this.pnlpixelplacersettings.SuspendLayout(); this.pnlovaltoolsettings.SuspendLayout(); @@ -327,7 +337,6 @@ namespace ShiftOS.WinForms.Applications this.pnlpaintbrushtoolsettings.SuspendLayout(); this.pnltexttoolsettings.SuspendLayout(); this.pnlpixelsettersettings.SuspendLayout(); - this.pnlmagnifiersettings.SuspendLayout(); this.pnlfloodfillsettings.SuspendLayout(); this.pnlsquaretoolsettings.SuspendLayout(); this.pnlpencilsettings.SuspendLayout(); @@ -335,6 +344,7 @@ namespace ShiftOS.WinForms.Applications this.pnltoolpositioner.SuspendLayout(); this.pnltoolpreview.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.picpreview)).BeginInit(); + this.msTools.SuspendLayout(); this.SuspendLayout(); // // pgcontents @@ -344,9 +354,9 @@ namespace ShiftOS.WinForms.Applications this.pgcontents.Controls.Add(this.pnlbottompanel); this.pgcontents.Controls.Add(this.pnltools); this.pgcontents.Dock = System.Windows.Forms.DockStyle.Fill; - this.pgcontents.Location = new System.Drawing.Point(0, 0); + this.pgcontents.Location = new System.Drawing.Point(0, 24); this.pgcontents.Name = "pgcontents"; - this.pgcontents.Size = new System.Drawing.Size(802, 598); + this.pgcontents.Size = new System.Drawing.Size(802, 574); this.pgcontents.TabIndex = 20; // // pnldrawingbackground @@ -365,7 +375,6 @@ namespace ShiftOS.WinForms.Applications // pnlinitialcanvassettings // this.pnlinitialcanvassettings.BackColor = System.Drawing.Color.White; - this.pnlinitialcanvassettings.Controls.Add(this.btncancel); this.pnlinitialcanvassettings.Controls.Add(this.btncreate); this.pnlinitialcanvassettings.Controls.Add(this.Label11); this.pnlinitialcanvassettings.Controls.Add(this.lbltotalpixels); @@ -373,28 +382,17 @@ namespace ShiftOS.WinForms.Applications this.pnlinitialcanvassettings.Controls.Add(this.Label10); this.pnlinitialcanvassettings.Controls.Add(this.txtnewcanvaswidth); this.pnlinitialcanvassettings.Controls.Add(this.Label9); - this.pnlinitialcanvassettings.Location = new System.Drawing.Point(223, 178); + this.pnlinitialcanvassettings.Location = new System.Drawing.Point(144, 137); this.pnlinitialcanvassettings.Name = "pnlinitialcanvassettings"; - this.pnlinitialcanvassettings.Size = new System.Drawing.Size(223, 100); + this.pnlinitialcanvassettings.Size = new System.Drawing.Size(326, 160); this.pnlinitialcanvassettings.TabIndex = 1; // - // btncancel - // - this.btncancel.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btncancel.Location = new System.Drawing.Point(7, 66); - this.btncancel.Name = "btncancel"; - this.btncancel.Size = new System.Drawing.Size(102, 28); - this.btncancel.TabIndex = 7; - this.btncancel.Text = "Cancel"; - this.btncancel.UseVisualStyleBackColor = true; - this.btncancel.Click += new System.EventHandler(this.btncancel_Click); - // // btncreate // this.btncreate.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btncreate.Location = new System.Drawing.Point(114, 66); + this.btncreate.Location = new System.Drawing.Point(196, 93); this.btncreate.Name = "btncreate"; - this.btncreate.Size = new System.Drawing.Size(102, 28); + this.btncreate.Size = new System.Drawing.Size(115, 50); this.btncreate.TabIndex = 6; this.btncreate.Text = "Create"; this.btncreate.UseVisualStyleBackColor = true; @@ -403,19 +401,19 @@ namespace ShiftOS.WinForms.Applications // Label11 // this.Label11.AutoSize = true; - this.Label11.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.Label11.Location = new System.Drawing.Point(124, 9); + this.Label11.Font = new System.Drawing.Font("Microsoft Sans Serif", 14F); + this.Label11.Location = new System.Drawing.Point(200, 7); this.Label11.Name = "Label11"; - this.Label11.Size = new System.Drawing.Size(88, 20); + this.Label11.Size = new System.Drawing.Size(106, 24); this.Label11.TabIndex = 5; this.Label11.Text = "Total Pixels"; // // lbltotalpixels // - this.lbltotalpixels.Font = new System.Drawing.Font("Microsoft Sans Serif", 18F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.lbltotalpixels.Location = new System.Drawing.Point(114, 30); + this.lbltotalpixels.Font = new System.Drawing.Font("Microsoft Sans Serif", 22F); + this.lbltotalpixels.Location = new System.Drawing.Point(181, 31); this.lbltotalpixels.Name = "lbltotalpixels"; - this.lbltotalpixels.Size = new System.Drawing.Size(106, 29); + this.lbltotalpixels.Size = new System.Drawing.Size(143, 56); this.lbltotalpixels.TabIndex = 4; this.lbltotalpixels.Text = "0"; this.lbltotalpixels.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; @@ -424,21 +422,22 @@ namespace ShiftOS.WinForms.Applications // this.txtnewcanvasheight.BackColor = System.Drawing.Color.White; this.txtnewcanvasheight.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.txtnewcanvasheight.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.txtnewcanvasheight.Location = new System.Drawing.Point(59, 37); + this.txtnewcanvasheight.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F); + this.txtnewcanvasheight.Location = new System.Drawing.Point(82, 93); this.txtnewcanvasheight.MaxLength = 4; this.txtnewcanvasheight.Name = "txtnewcanvasheight"; - this.txtnewcanvasheight.Size = new System.Drawing.Size(54, 22); + this.txtnewcanvasheight.Size = new System.Drawing.Size(54, 26); this.txtnewcanvasheight.TabIndex = 3; + this.txtnewcanvasheight.Text = "0"; this.txtnewcanvasheight.TextChanged += new System.EventHandler(this.txtnewcanvaswidth_TextChanged); // // Label10 // this.Label10.AutoSize = true; - this.Label10.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.Label10.Location = new System.Drawing.Point(8, 40); + this.Label10.Font = new System.Drawing.Font("Microsoft Sans Serif", 15F); + this.Label10.Location = new System.Drawing.Point(7, 91); this.Label10.Name = "Label10"; - this.Label10.Size = new System.Drawing.Size(50, 16); + this.Label10.Size = new System.Drawing.Size(74, 25); this.Label10.TabIndex = 2; this.Label10.Text = "Height:"; // @@ -446,21 +445,22 @@ namespace ShiftOS.WinForms.Applications // this.txtnewcanvaswidth.BackColor = System.Drawing.Color.White; this.txtnewcanvaswidth.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.txtnewcanvaswidth.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.txtnewcanvaswidth.Location = new System.Drawing.Point(59, 9); + this.txtnewcanvaswidth.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F); + this.txtnewcanvaswidth.Location = new System.Drawing.Point(82, 41); this.txtnewcanvaswidth.MaxLength = 4; this.txtnewcanvaswidth.Name = "txtnewcanvaswidth"; - this.txtnewcanvaswidth.Size = new System.Drawing.Size(54, 22); + this.txtnewcanvaswidth.Size = new System.Drawing.Size(54, 26); this.txtnewcanvaswidth.TabIndex = 1; + this.txtnewcanvaswidth.Text = "0"; this.txtnewcanvaswidth.TextChanged += new System.EventHandler(this.txtnewcanvaswidth_TextChanged); // // Label9 // this.Label9.AutoSize = true; - this.Label9.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.Label9.Location = new System.Drawing.Point(8, 12); + this.Label9.Font = new System.Drawing.Font("Microsoft Sans Serif", 15F); + this.Label9.Location = new System.Drawing.Point(7, 39); this.Label9.Name = "Label9"; - this.Label9.Size = new System.Drawing.Size(45, 16); + this.Label9.Size = new System.Drawing.Size(69, 25); this.Label9.TabIndex = 0; this.Label9.Text = "Width:"; // @@ -477,7 +477,7 @@ namespace ShiftOS.WinForms.Applications this.pnlpalettesize.Controls.Add(this.Label42); this.pnlpalettesize.Controls.Add(this.txtcolorpalletwidth); this.pnlpalettesize.Controls.Add(this.Label43); - this.pnlpalettesize.Location = new System.Drawing.Point(207, 178); + this.pnlpalettesize.Location = new System.Drawing.Point(144, 303); this.pnlpalettesize.Name = "pnlpalettesize"; this.pnlpalettesize.Size = new System.Drawing.Size(259, 100); this.pnlpalettesize.TabIndex = 2; @@ -604,7 +604,7 @@ namespace ShiftOS.WinForms.Applications this.pnlbottompanel.Dock = System.Windows.Forms.DockStyle.Bottom; this.pnlbottompanel.Location = new System.Drawing.Point(120, 474); this.pnlbottompanel.Name = "pnlbottompanel"; - this.pnlbottompanel.Size = new System.Drawing.Size(682, 124); + this.pnlbottompanel.Size = new System.Drawing.Size(682, 100); this.pnlbottompanel.TabIndex = 1; // // pnlpallet @@ -618,15 +618,15 @@ namespace ShiftOS.WinForms.Applications this.pnlpallet.Controls.Add(this.line6); this.pnlpallet.Location = new System.Drawing.Point(457, 0); this.pnlpallet.Name = "pnlpallet"; - this.pnlpallet.Size = new System.Drawing.Size(225, 124); + this.pnlpallet.Size = new System.Drawing.Size(225, 100); this.pnlpallet.TabIndex = 0; // // label44 // this.label44.Dock = System.Windows.Forms.DockStyle.Fill; - this.label44.Location = new System.Drawing.Point(0, 24); + this.label44.Location = new System.Drawing.Point(0, 16); this.label44.Name = "label44"; - this.label44.Size = new System.Drawing.Size(225, 27); + this.label44.Size = new System.Drawing.Size(225, 11); this.label44.TabIndex = 13; this.label44.Text = "Left click to select, right click to change color"; this.label44.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; @@ -762,7 +762,7 @@ namespace ShiftOS.WinForms.Applications this.flowcolours.Controls.Add(this.colourpallet127); this.flowcolours.Controls.Add(this.colourpallet128); this.flowcolours.Dock = System.Windows.Forms.DockStyle.Bottom; - this.flowcolours.Location = new System.Drawing.Point(0, 51); + this.flowcolours.Location = new System.Drawing.Point(0, 27); this.flowcolours.Name = "flowcolours"; this.flowcolours.Padding = new System.Windows.Forms.Padding(1, 1, 0, 0); this.flowcolours.Size = new System.Drawing.Size(225, 73); @@ -2054,9 +2054,9 @@ namespace ShiftOS.WinForms.Applications this.Label4.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.Label4.Location = new System.Drawing.Point(0, 1); this.Label4.Name = "Label4"; - this.Label4.Size = new System.Drawing.Size(225, 23); + this.Label4.Size = new System.Drawing.Size(225, 15); this.Label4.TabIndex = 11; - this.Label4.Text = "Colours"; + this.Label4.Text = "Colors"; this.Label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; // // line6 @@ -2070,6 +2070,7 @@ namespace ShiftOS.WinForms.Applications // // pnltoolproperties // + this.pnltoolproperties.Controls.Add(this.pnlmagnifiersettings); this.pnltoolproperties.Controls.Add(this.pnleracertoolsettings); this.pnltoolproperties.Controls.Add(this.pnlpixelplacersettings); this.pnltoolproperties.Controls.Add(this.pnlovaltoolsettings); @@ -2077,7 +2078,6 @@ namespace ShiftOS.WinForms.Applications this.pnltoolproperties.Controls.Add(this.pnlpaintbrushtoolsettings); this.pnltoolproperties.Controls.Add(this.pnltexttoolsettings); this.pnltoolproperties.Controls.Add(this.pnlpixelsettersettings); - this.pnltoolproperties.Controls.Add(this.pnlmagnifiersettings); this.pnltoolproperties.Controls.Add(this.pnlfloodfillsettings); this.pnltoolproperties.Controls.Add(this.pnlsquaretoolsettings); this.pnltoolproperties.Controls.Add(this.pnlpencilsettings); @@ -2090,6 +2090,60 @@ namespace ShiftOS.WinForms.Applications this.pnltoolproperties.Size = new System.Drawing.Size(457, 100); this.pnltoolproperties.TabIndex = 1; // + // pnlmagnifiersettings + // + this.pnlmagnifiersettings.Controls.Add(this.btnzoomout); + this.pnlmagnifiersettings.Controls.Add(this.btnzoomin); + this.pnlmagnifiersettings.Controls.Add(this.lblzoomlevel); + this.pnlmagnifiersettings.Controls.Add(this.Label7); + this.pnlmagnifiersettings.Location = new System.Drawing.Point(78, 50); + this.pnlmagnifiersettings.Name = "pnlmagnifiersettings"; + this.pnlmagnifiersettings.Size = new System.Drawing.Size(67, 44); + this.pnlmagnifiersettings.TabIndex = 6; + this.pnlmagnifiersettings.Visible = false; + // + // btnzoomout + // + this.btnzoomout.Font = new System.Drawing.Font("Microsoft Sans Serif", 27.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnzoomout.Location = new System.Drawing.Point(16, 33); + this.btnzoomout.Name = "btnzoomout"; + this.btnzoomout.Size = new System.Drawing.Size(129, 56); + this.btnzoomout.TabIndex = 11; + this.btnzoomout.Text = "-"; + this.btnzoomout.UseVisualStyleBackColor = true; + this.btnzoomout.Click += new System.EventHandler(this.btnzoomout_Click); + // + // btnzoomin + // + this.btnzoomin.Font = new System.Drawing.Font("Microsoft Sans Serif", 27.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnzoomin.Location = new System.Drawing.Point(313, 33); + this.btnzoomin.Name = "btnzoomin"; + this.btnzoomin.Size = new System.Drawing.Size(129, 56); + this.btnzoomin.TabIndex = 10; + this.btnzoomin.Text = "+"; + this.btnzoomin.UseVisualStyleBackColor = true; + this.btnzoomin.Click += new System.EventHandler(this.btnzoomin_Click); + // + // lblzoomlevel + // + this.lblzoomlevel.Font = new System.Drawing.Font("Microsoft Sans Serif", 36F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblzoomlevel.Location = new System.Drawing.Point(151, 33); + this.lblzoomlevel.Name = "lblzoomlevel"; + this.lblzoomlevel.Size = new System.Drawing.Size(156, 56); + this.lblzoomlevel.TabIndex = 1; + this.lblzoomlevel.Text = "1X"; + this.lblzoomlevel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // Label7 + // + this.Label7.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.Label7.Location = new System.Drawing.Point(6, 3); + this.Label7.Name = "Label7"; + this.Label7.Size = new System.Drawing.Size(444, 23); + this.Label7.TabIndex = 0; + this.Label7.Text = "Magnifier Settings"; + this.Label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // // pnleracertoolsettings // this.pnleracertoolsettings.Controls.Add(this.Label28); @@ -2120,7 +2174,7 @@ namespace ShiftOS.WinForms.Applications this.btneracersquare.BackgroundImage = global::ShiftOS.WinForms.Properties.Resources.ArtPadsquarerubberselected; this.btneracersquare.FlatAppearance.BorderSize = 0; this.btneracersquare.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btneracersquare.Location = new System.Drawing.Point(75, 21); + this.btneracersquare.Location = new System.Drawing.Point(75, 15); this.btneracersquare.Margin = new System.Windows.Forms.Padding(6, 6, 0, 0); this.btneracersquare.Name = "btneracersquare"; this.btneracersquare.Size = new System.Drawing.Size(60, 50); @@ -2134,7 +2188,7 @@ namespace ShiftOS.WinForms.Applications this.btneracercircle.BackgroundImage = global::ShiftOS.WinForms.Properties.Resources.ArtPadcirclerubber; this.btneracercircle.FlatAppearance.BorderSize = 0; this.btneracercircle.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btneracercircle.Location = new System.Drawing.Point(9, 21); + this.btneracercircle.Location = new System.Drawing.Point(9, 15); this.btneracercircle.Margin = new System.Windows.Forms.Padding(6, 6, 0, 0); this.btneracercircle.Name = "btneracercircle"; this.btneracercircle.Size = new System.Drawing.Size(60, 50); @@ -2146,9 +2200,9 @@ namespace ShiftOS.WinForms.Applications // Label24 // this.Label24.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.Label24.Location = new System.Drawing.Point(141, 29); + this.Label24.Location = new System.Drawing.Point(141, 25); this.Label24.Name = "Label24"; - this.Label24.Size = new System.Drawing.Size(314, 38); + this.Label24.Size = new System.Drawing.Size(314, 35); this.Label24.TabIndex = 15; this.Label24.Text = "Choose a shape and size for your eracer then rub out unwanted parts of your drawi" + "ng with the mouse."; @@ -2159,7 +2213,7 @@ namespace ShiftOS.WinForms.Applications this.txteracersize.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.txteracersize.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.txteracersize.ForeColor = System.Drawing.Color.Black; - this.txteracersize.Location = new System.Drawing.Point(198, 70); + this.txteracersize.Location = new System.Drawing.Point(198, 69); this.txteracersize.Name = "txteracersize"; this.txteracersize.Size = new System.Drawing.Size(73, 26); this.txteracersize.TabIndex = 12; @@ -2180,7 +2234,7 @@ namespace ShiftOS.WinForms.Applications this.Label27.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.Label27.Location = new System.Drawing.Point(6, 3); this.Label27.Name = "Label27"; - this.Label27.Size = new System.Drawing.Size(444, 23); + this.Label27.Size = new System.Drawing.Size(444, 18); this.Label27.TabIndex = 0; this.Label27.Text = "Eraser Tool Settings"; this.Label27.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; @@ -2661,60 +2715,6 @@ namespace ShiftOS.WinForms.Applications this.Label1.Text = "Pixel Setter Settings"; this.Label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; // - // pnlmagnifiersettings - // - this.pnlmagnifiersettings.Controls.Add(this.btnzoomout); - this.pnlmagnifiersettings.Controls.Add(this.btnzoomin); - this.pnlmagnifiersettings.Controls.Add(this.lblzoomlevel); - this.pnlmagnifiersettings.Controls.Add(this.Label7); - this.pnlmagnifiersettings.Location = new System.Drawing.Point(78, 50); - this.pnlmagnifiersettings.Name = "pnlmagnifiersettings"; - this.pnlmagnifiersettings.Size = new System.Drawing.Size(67, 44); - this.pnlmagnifiersettings.TabIndex = 6; - this.pnlmagnifiersettings.Visible = false; - // - // btnzoomout - // - this.btnzoomout.Font = new System.Drawing.Font("Microsoft Sans Serif", 27.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btnzoomout.Location = new System.Drawing.Point(16, 33); - this.btnzoomout.Name = "btnzoomout"; - this.btnzoomout.Size = new System.Drawing.Size(129, 56); - this.btnzoomout.TabIndex = 11; - this.btnzoomout.Text = "-"; - this.btnzoomout.UseVisualStyleBackColor = true; - this.btnzoomout.Click += new System.EventHandler(this.btnzoomout_Click); - // - // btnzoomin - // - this.btnzoomin.Font = new System.Drawing.Font("Microsoft Sans Serif", 27.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btnzoomin.Location = new System.Drawing.Point(313, 33); - this.btnzoomin.Name = "btnzoomin"; - this.btnzoomin.Size = new System.Drawing.Size(129, 56); - this.btnzoomin.TabIndex = 10; - this.btnzoomin.Text = "+"; - this.btnzoomin.UseVisualStyleBackColor = true; - this.btnzoomin.Click += new System.EventHandler(this.btnzoomin_Click); - // - // lblzoomlevel - // - this.lblzoomlevel.Font = new System.Drawing.Font("Microsoft Sans Serif", 36F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.lblzoomlevel.Location = new System.Drawing.Point(151, 33); - this.lblzoomlevel.Name = "lblzoomlevel"; - this.lblzoomlevel.Size = new System.Drawing.Size(156, 56); - this.lblzoomlevel.TabIndex = 1; - this.lblzoomlevel.Text = "1X"; - this.lblzoomlevel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // Label7 - // - this.Label7.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.Label7.Location = new System.Drawing.Point(6, 3); - this.Label7.Name = "Label7"; - this.Label7.Size = new System.Drawing.Size(444, 23); - this.Label7.TabIndex = 0; - this.Label7.Text = "Magnifier Settings"; - this.Label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // // pnlfloodfillsettings // this.pnlfloodfillsettings.Controls.Add(this.Label12); @@ -2933,7 +2933,7 @@ namespace ShiftOS.WinForms.Applications this.pnltools.Dock = System.Windows.Forms.DockStyle.Left; this.pnltools.Location = new System.Drawing.Point(0, 0); this.pnltools.Name = "pnltools"; - this.pnltools.Size = new System.Drawing.Size(120, 598); + this.pnltools.Size = new System.Drawing.Size(120, 574); this.pnltools.TabIndex = 0; // // pnltoolpositioner @@ -2946,18 +2946,12 @@ namespace ShiftOS.WinForms.Applications this.pnltoolpositioner.Controls.Add(this.btnsquare); this.pnltoolpositioner.Controls.Add(this.btnlinetool); this.pnltoolpositioner.Controls.Add(this.btnpaintbrush); - this.pnltoolpositioner.Controls.Add(this.btntexttool); this.pnltoolpositioner.Controls.Add(this.btneracer); - this.pnltoolpositioner.Controls.Add(this.btnnew); - this.pnltoolpositioner.Controls.Add(this.btnmagnify); - this.pnltoolpositioner.Controls.Add(this.btnopen); - this.pnltoolpositioner.Controls.Add(this.btnsave); - this.pnltoolpositioner.Controls.Add(this.btnundo); - this.pnltoolpositioner.Controls.Add(this.btnredo); + this.pnltoolpositioner.Controls.Add(this.btntexttool); this.pnltoolpositioner.Dock = System.Windows.Forms.DockStyle.Fill; this.pnltoolpositioner.Location = new System.Drawing.Point(0, 0); this.pnltoolpositioner.Name = "pnltoolpositioner"; - this.pnltoolpositioner.Size = new System.Drawing.Size(119, 498); + this.pnltoolpositioner.Size = new System.Drawing.Size(119, 474); this.pnltoolpositioner.TabIndex = 2; // // btnpixelsetter @@ -3090,7 +3084,7 @@ namespace ShiftOS.WinForms.Applications this.btntexttool.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; this.btntexttool.FlatAppearance.BorderSize = 0; this.btntexttool.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btntexttool.Location = new System.Drawing.Point(6, 230); + this.btntexttool.Location = new System.Drawing.Point(62, 230); this.btntexttool.Margin = new System.Windows.Forms.Padding(6, 6, 0, 0); this.btntexttool.Name = "btntexttool"; this.btntexttool.Size = new System.Drawing.Size(50, 50); @@ -3106,7 +3100,7 @@ namespace ShiftOS.WinForms.Applications this.btneracer.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; this.btneracer.FlatAppearance.BorderSize = 0; this.btneracer.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btneracer.Location = new System.Drawing.Point(62, 230); + this.btneracer.Location = new System.Drawing.Point(6, 230); this.btneracer.Margin = new System.Windows.Forms.Padding(6, 6, 0, 0); this.btneracer.Name = "btneracer"; this.btneracer.Size = new System.Drawing.Size(50, 50); @@ -3116,109 +3110,13 @@ namespace ShiftOS.WinForms.Applications this.btneracer.UseVisualStyleBackColor = true; this.btneracer.Click += new System.EventHandler(this.btneracer_Click); // - // btnnew - // - this.btnnew.BackgroundImage = global::ShiftOS.WinForms.Properties.Resources.ArtPadnew; - this.btnnew.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.btnnew.FlatAppearance.BorderSize = 0; - this.btnnew.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btnnew.Location = new System.Drawing.Point(6, 286); - this.btnnew.Margin = new System.Windows.Forms.Padding(6, 6, 0, 0); - this.btnnew.Name = "btnnew"; - this.btnnew.Size = new System.Drawing.Size(50, 50); - this.btnnew.TabIndex = 6; - this.btnnew.Tag = "nobuttonskin"; - this.btnnew.Text = " "; - this.btnnew.UseVisualStyleBackColor = true; - this.btnnew.Click += new System.EventHandler(this.btnnew_Click); - // - // btnmagnify - // - this.btnmagnify.BackgroundImage = global::ShiftOS.WinForms.Properties.Resources.ArtPadmagnify; - this.btnmagnify.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.btnmagnify.FlatAppearance.BorderSize = 0; - this.btnmagnify.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btnmagnify.Location = new System.Drawing.Point(62, 286); - this.btnmagnify.Margin = new System.Windows.Forms.Padding(6, 6, 0, 0); - this.btnmagnify.Name = "btnmagnify"; - this.btnmagnify.Size = new System.Drawing.Size(50, 50); - this.btnmagnify.TabIndex = 3; - this.btnmagnify.Tag = "nobuttonskin"; - this.btnmagnify.Text = " "; - this.btnmagnify.UseVisualStyleBackColor = true; - this.btnmagnify.Click += new System.EventHandler(this.btnmagnify_Click); - // - // btnopen - // - this.btnopen.BackgroundImage = global::ShiftOS.WinForms.Properties.Resources.ArtPadopen; - this.btnopen.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.btnopen.FlatAppearance.BorderSize = 0; - this.btnopen.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btnopen.Location = new System.Drawing.Point(6, 342); - this.btnopen.Margin = new System.Windows.Forms.Padding(6, 6, 0, 0); - this.btnopen.Name = "btnopen"; - this.btnopen.Size = new System.Drawing.Size(50, 50); - this.btnopen.TabIndex = 10; - this.btnopen.Tag = "nobuttonskin"; - this.btnopen.Text = " "; - this.btnopen.UseVisualStyleBackColor = true; - this.btnopen.Click += new System.EventHandler(this.btnopen_Click); - // - // btnsave - // - this.btnsave.BackgroundImage = global::ShiftOS.WinForms.Properties.Resources.ArtPadsave; - this.btnsave.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.btnsave.FlatAppearance.BorderSize = 0; - this.btnsave.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btnsave.Location = new System.Drawing.Point(62, 342); - this.btnsave.Margin = new System.Windows.Forms.Padding(6, 6, 0, 0); - this.btnsave.Name = "btnsave"; - this.btnsave.Size = new System.Drawing.Size(50, 50); - this.btnsave.TabIndex = 5; - this.btnsave.Tag = "nobuttonskin"; - this.btnsave.Text = " "; - this.btnsave.UseVisualStyleBackColor = true; - this.btnsave.Click += new System.EventHandler(this.btnsave_Click); - // - // btnundo - // - this.btnundo.BackgroundImage = global::ShiftOS.WinForms.Properties.Resources.ArtPadundo; - this.btnundo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.btnundo.FlatAppearance.BorderSize = 0; - this.btnundo.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btnundo.Location = new System.Drawing.Point(6, 398); - this.btnundo.Margin = new System.Windows.Forms.Padding(6, 6, 0, 0); - this.btnundo.Name = "btnundo"; - this.btnundo.Size = new System.Drawing.Size(50, 50); - this.btnundo.TabIndex = 8; - this.btnundo.Tag = "nobuttonskin"; - this.btnundo.Text = " "; - this.btnundo.UseVisualStyleBackColor = true; - this.btnundo.Click += new System.EventHandler(this.btnundo_Click); - // - // btnredo - // - this.btnredo.BackgroundImage = global::ShiftOS.WinForms.Properties.Resources.ArtPadredo; - this.btnredo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.btnredo.FlatAppearance.BorderSize = 0; - this.btnredo.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.btnredo.Location = new System.Drawing.Point(62, 398); - this.btnredo.Margin = new System.Windows.Forms.Padding(6, 6, 0, 0); - this.btnredo.Name = "btnredo"; - this.btnredo.Size = new System.Drawing.Size(50, 50); - this.btnredo.TabIndex = 9; - this.btnredo.Tag = "nobuttonskin"; - this.btnredo.Text = " "; - this.btnredo.UseVisualStyleBackColor = true; - this.btnredo.Click += new System.EventHandler(this.btnredo_Click); - // // line1 // this.line1.BackColor = System.Drawing.Color.Black; this.line1.Dock = System.Windows.Forms.DockStyle.Right; this.line1.Location = new System.Drawing.Point(119, 0); this.line1.Name = "line1"; - this.line1.Size = new System.Drawing.Size(1, 498); + this.line1.Size = new System.Drawing.Size(1, 474); this.line1.TabIndex = 1; // // pnltoolpreview @@ -3229,7 +3127,7 @@ namespace ShiftOS.WinForms.Applications this.pnltoolpreview.Controls.Add(this.line4); this.pnltoolpreview.Controls.Add(this.line2); this.pnltoolpreview.Dock = System.Windows.Forms.DockStyle.Bottom; - this.pnltoolpreview.Location = new System.Drawing.Point(0, 498); + this.pnltoolpreview.Location = new System.Drawing.Point(0, 474); this.pnltoolpreview.Name = "pnltoolpreview"; this.pnltoolpreview.Size = new System.Drawing.Size(120, 100); this.pnltoolpreview.TabIndex = 0; @@ -3305,11 +3203,140 @@ namespace ShiftOS.WinForms.Applications // this.tmrsetupui.Tick += new System.EventHandler(this.tmrsetupui_Tick); // + // msTools + // + this.msTools.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.fileToolStripMenuItem, + this.editToolStripMenuItem, + this.viewToolStripMenuItem}); + this.msTools.Location = new System.Drawing.Point(0, 0); + this.msTools.Name = "msTools"; + this.msTools.Size = new System.Drawing.Size(802, 24); + this.msTools.TabIndex = 3; + this.msTools.Text = "menuStrip1"; + // + // fileToolStripMenuItem + // + this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.gENNEWToolStripMenuItem, + this.gENLOADToolStripMenuItem, + this.gENSAVEToolStripMenuItem, + this.gENEXITToolStripMenuItem}); + this.fileToolStripMenuItem.Name = "fileToolStripMenuItem"; + this.fileToolStripMenuItem.Size = new System.Drawing.Size(35, 20); + this.fileToolStripMenuItem.Text = "File"; + // + // gENNEWToolStripMenuItem + // + this.gENNEWToolStripMenuItem.Name = "gENNEWToolStripMenuItem"; + this.gENNEWToolStripMenuItem.Size = new System.Drawing.Size(140, 22); + this.gENNEWToolStripMenuItem.Text = "{GEN_NEW}"; + this.gENNEWToolStripMenuItem.Click += new System.EventHandler(this.btnnew_Click); + // + // gENLOADToolStripMenuItem + // + this.gENLOADToolStripMenuItem.Name = "gENLOADToolStripMenuItem"; + this.gENLOADToolStripMenuItem.Size = new System.Drawing.Size(140, 22); + this.gENLOADToolStripMenuItem.Text = "{GEN_LOAD}"; + this.gENLOADToolStripMenuItem.Click += new System.EventHandler(this.btnopen_Click); + // + // gENSAVEToolStripMenuItem + // + this.gENSAVEToolStripMenuItem.Name = "gENSAVEToolStripMenuItem"; + this.gENSAVEToolStripMenuItem.Size = new System.Drawing.Size(140, 22); + this.gENSAVEToolStripMenuItem.Text = "{GEN_SAVE}"; + this.gENSAVEToolStripMenuItem.Click += new System.EventHandler(this.btnsave_Click); + // + // gENEXITToolStripMenuItem + // + this.gENEXITToolStripMenuItem.Name = "gENEXITToolStripMenuItem"; + this.gENEXITToolStripMenuItem.Size = new System.Drawing.Size(140, 22); + this.gENEXITToolStripMenuItem.Text = "{GEN_EXIT}"; + // + // editToolStripMenuItem + // + this.editToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.undoToolStripMenuItem, + this.redoToolStripMenuItem}); + this.editToolStripMenuItem.Name = "editToolStripMenuItem"; + this.editToolStripMenuItem.Size = new System.Drawing.Size(37, 20); + this.editToolStripMenuItem.Text = "Edit"; + // + // undoToolStripMenuItem + // + this.undoToolStripMenuItem.Name = "undoToolStripMenuItem"; + this.undoToolStripMenuItem.Size = new System.Drawing.Size(100, 22); + this.undoToolStripMenuItem.Text = "Undo"; + this.undoToolStripMenuItem.Click += new System.EventHandler(this.btnundo_Click); + // + // redoToolStripMenuItem + // + this.redoToolStripMenuItem.Name = "redoToolStripMenuItem"; + this.redoToolStripMenuItem.Size = new System.Drawing.Size(100, 22); + this.redoToolStripMenuItem.Text = "Redo"; + this.redoToolStripMenuItem.Click += new System.EventHandler(this.btnredo_Click); + // + // viewToolStripMenuItem + // + this.viewToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.zoomToolStripMenuItem}); + this.viewToolStripMenuItem.Name = "viewToolStripMenuItem"; + this.viewToolStripMenuItem.Size = new System.Drawing.Size(42, 20); + this.viewToolStripMenuItem.Text = "View"; + // + // zoomToolStripMenuItem + // + this.zoomToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripMenuItem2, + this.toolStripMenuItem3, + this.toolStripMenuItem4, + this.toolStripMenuItem5, + this.moreControlsToolStripMenuItem}); + this.zoomToolStripMenuItem.Name = "zoomToolStripMenuItem"; + this.zoomToolStripMenuItem.Size = new System.Drawing.Size(101, 22); + this.zoomToolStripMenuItem.Text = "Zoom"; + // + // toolStripMenuItem2 + // + this.toolStripMenuItem2.Name = "toolStripMenuItem2"; + this.toolStripMenuItem2.Size = new System.Drawing.Size(138, 22); + this.toolStripMenuItem2.Text = "25%"; + this.toolStripMenuItem2.Click += new System.EventHandler(this.toolStripMenuItem2_Click); + // + // toolStripMenuItem3 + // + this.toolStripMenuItem3.Name = "toolStripMenuItem3"; + this.toolStripMenuItem3.Size = new System.Drawing.Size(138, 22); + this.toolStripMenuItem3.Text = "50%"; + this.toolStripMenuItem3.Click += new System.EventHandler(this.toolStripMenuItem3_Click); + // + // toolStripMenuItem4 + // + this.toolStripMenuItem4.Name = "toolStripMenuItem4"; + this.toolStripMenuItem4.Size = new System.Drawing.Size(138, 22); + this.toolStripMenuItem4.Text = "100%"; + this.toolStripMenuItem4.Click += new System.EventHandler(this.toolStripMenuItem4_Click); + // + // toolStripMenuItem5 + // + this.toolStripMenuItem5.Name = "toolStripMenuItem5"; + this.toolStripMenuItem5.Size = new System.Drawing.Size(138, 22); + this.toolStripMenuItem5.Text = "200%"; + this.toolStripMenuItem5.Click += new System.EventHandler(this.toolStripMenuItem5_Click); + // + // moreControlsToolStripMenuItem + // + this.moreControlsToolStripMenuItem.Name = "moreControlsToolStripMenuItem"; + this.moreControlsToolStripMenuItem.Size = new System.Drawing.Size(138, 22); + this.moreControlsToolStripMenuItem.Text = "More controls"; + this.moreControlsToolStripMenuItem.Click += new System.EventHandler(this.btnmagnify_Click); + // // Artpad // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.Controls.Add(this.pgcontents); + this.Controls.Add(this.msTools); this.MinimumSize = new System.Drawing.Size(502, 398); this.Name = "Artpad"; this.Size = new System.Drawing.Size(802, 598); @@ -3327,6 +3354,7 @@ namespace ShiftOS.WinForms.Applications this.flowcolours.ResumeLayout(false); this.pnltoolproperties.ResumeLayout(false); this.pnltoolproperties.PerformLayout(); + this.pnlmagnifiersettings.ResumeLayout(false); this.pnleracertoolsettings.ResumeLayout(false); this.pnleracertoolsettings.PerformLayout(); this.pnlpixelplacersettings.ResumeLayout(false); @@ -3340,7 +3368,6 @@ namespace ShiftOS.WinForms.Applications this.pnltexttoolsettings.PerformLayout(); this.pnlpixelsettersettings.ResumeLayout(false); this.pnlpixelsettersettings.PerformLayout(); - this.pnlmagnifiersettings.ResumeLayout(false); this.pnlfloodfillsettings.ResumeLayout(false); this.pnlsquaretoolsettings.ResumeLayout(false); this.pnlsquaretoolsettings.PerformLayout(); @@ -3349,7 +3376,10 @@ namespace ShiftOS.WinForms.Applications this.pnltoolpositioner.ResumeLayout(false); this.pnltoolpreview.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.picpreview)).EndInit(); + this.msTools.ResumeLayout(false); + this.msTools.PerformLayout(); this.ResumeLayout(false); + this.PerformLayout(); } internal System.Windows.Forms.Panel pgcontents; @@ -3369,7 +3399,6 @@ namespace ShiftOS.WinForms.Applications internal System.Windows.Forms.Button btnpixelsettersetpixel; internal System.Windows.Forms.TextBox txtpixelsetterycoordinate; internal System.Windows.Forms.TextBox txtpixelsetterxcoordinate; - internal System.Windows.Forms.Button btnmagnify; internal System.Windows.Forms.Panel colourpallet32; internal System.Windows.Forms.Panel colourpallet31; internal System.Windows.Forms.Panel colourpallet30; @@ -3415,7 +3444,6 @@ namespace ShiftOS.WinForms.Applications internal System.Windows.Forms.Label lblpixelplacerhelp; internal System.Windows.Forms.Label Label6; internal System.Windows.Forms.Label Label5; - internal System.Windows.Forms.Button btnnew; internal System.Windows.Forms.FlowLayoutPanel flowcolours; internal System.Windows.Forms.Button btnpencil; internal System.Windows.Forms.Panel pnlpencilsettings; @@ -3454,10 +3482,6 @@ namespace ShiftOS.WinForms.Applications internal System.Windows.Forms.Label lbltoolselected; internal System.Windows.Forms.Panel line4; internal System.Windows.Forms.Panel line2; - internal System.Windows.Forms.Button btnopen; - internal System.Windows.Forms.Button btnsave; - internal System.Windows.Forms.Button btnundo; - internal System.Windows.Forms.Button btnredo; internal System.Windows.Forms.Button btneracer; internal System.Windows.Forms.Button btnlinetool; internal System.Windows.Forms.Panel pnllinetoolsettings; @@ -3503,7 +3527,6 @@ namespace ShiftOS.WinForms.Applications internal System.Windows.Forms.TextBox txtcolorpalletwidth; internal System.Windows.Forms.Label Label43; internal System.Windows.Forms.Panel pnlinitialcanvassettings; - internal System.Windows.Forms.Button btncancel; internal System.Windows.Forms.Button btncreate; internal System.Windows.Forms.Label Label11; internal System.Windows.Forms.Label lbltotalpixels; @@ -3616,5 +3639,21 @@ namespace ShiftOS.WinForms.Applications internal System.Windows.Forms.Timer pullside; private System.Windows.Forms.Timer tmrsetupui; private System.Windows.Forms.Label label44; + private System.Windows.Forms.MenuStrip msTools; + private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem gENNEWToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem gENLOADToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem gENSAVEToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem gENEXITToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem editToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem undoToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem redoToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem viewToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem zoomToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem2; + private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem3; + private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem4; + private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem5; + private System.Windows.Forms.ToolStripMenuItem moreControlsToolStripMenuItem; } }
\ No newline at end of file diff --git a/ShiftOS.WinForms/Applications/Artpad.cs b/ShiftOS.WinForms/Applications/Artpad.cs index 12914b4..e4d16bd 100644 --- a/ShiftOS.WinForms/Applications/Artpad.cs +++ b/ShiftOS.WinForms/Applications/Artpad.cs @@ -57,11 +57,7 @@ namespace ShiftOS.WinForms.Applications { try { - Stopwatch sw = new Stopwatch(); - sw.Start(); InitializeComponent(); - sw.Stop(); - Console.WriteLine("ArtPad construction timespan:" + sw.Elapsed.ToString()); } catch (Exception ex) { @@ -97,8 +93,8 @@ namespace ShiftOS.WinForms.Applications Color canvascolor = Color.White; Bitmap previewcanvasbitmap; - int magnificationlevel = 1; - Rectangle magnifyRect; + float magnificationlevel = 1; + RectangleF magnifyRect; Graphics graphicsbitmap; public Color drawingcolour = Color.Black; string selectedtool = "Pixel Setter"; @@ -107,7 +103,7 @@ namespace ShiftOS.WinForms.Applications System.Drawing.Drawing2D.GraphicsPath mousePath = new System.Drawing.Drawing2D.GraphicsPath(); int pencilwidth = 1; undo undo = new undo(); - Point thisPoint; + PointF thisPoint; int eracerwidth = 15; string eracertype = "square"; @@ -169,6 +165,17 @@ namespace ShiftOS.WinForms.Applications //PHILCODE: I just reduced this function's amount of Windows Forms calls by 66%. public void setuptoolbox() { + gENSAVEToolStripMenuItem.Visible = Shiftorium.UpgradeInstalled("artpad_save"); + gENLOADToolStripMenuItem.Visible = Shiftorium.UpgradeInstalled("artpad_open"); + gENNEWToolStripMenuItem.Visible = Shiftorium.UpgradeInstalled("artpad_new"); + + undoToolStripMenuItem.Visible = Shiftorium.UpgradeInstalled("artpad_undo"); + redoToolStripMenuItem.Visible = Shiftorium.UpgradeInstalled("artpad_redo"); + + editToolStripMenuItem.Visible = (undoToolStripMenuItem.Visible || redoToolStripMenuItem.Visible); + + + btnpixelplacer.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_pixel_placer") == true); btnpencil.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_pencil") == true); btnfloodfill.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_fill_tool") == true); @@ -178,11 +185,6 @@ namespace ShiftOS.WinForms.Applications btnpaintbrush.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_paintbrush") == true); btntexttool.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_text_tool") == true); btneracer.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_eraser") == true); - btnnew.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_new") == true); - btnopen.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_load") == true); - btnsave.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_save") == true); - btnundo.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_undo") == true); - btnredo.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_redo") == true); btnpixelplacermovementmode.Visible = (ShiftoriumFrontend.UpgradeInstalled("artpad_pp_movement_mode") == true); } @@ -371,8 +373,8 @@ namespace ShiftOS.WinForms.Applications undo.redoStack.Clear(); - thisPoint.X = (int)(e.Location.X - (magnificationlevel / 2)) / magnificationlevel; - thisPoint.Y = (int)(e.Location.Y - (magnificationlevel / 2)) / magnificationlevel; + thisPoint.X = (e.Location.X - (magnificationlevel / 2)) / magnificationlevel; + thisPoint.Y = (e.Location.Y - (magnificationlevel / 2)) / magnificationlevel; if (selectedtool == "Pixel Placer") { @@ -382,7 +384,7 @@ namespace ShiftOS.WinForms.Applications { if (thisPoint.Y < canvasbitmap.Height && thisPoint.Y > -1) { - canvasbitmap.SetPixel(thisPoint.X, thisPoint.Y, drawingcolour); + canvasbitmap.SetPixel((int)thisPoint.X, (int)thisPoint.Y, drawingcolour); //set the pixel on the canvas picdrawingdisplay.Invalidate(); //refresh the picture from the canvas @@ -408,7 +410,7 @@ namespace ShiftOS.WinForms.Applications { if (thisPoint.Y < canvasbitmap.Height && thisPoint.Y > -1) { - SafeFloodFill(canvasbitmap, thisPoint.X, thisPoint.Y, drawingcolour); + SafeFloodFill(canvasbitmap, (int)thisPoint.X, (int)thisPoint.Y, drawingcolour); graphicsbitmap = Graphics.FromImage(canvasbitmap); picdrawingdisplay.Invalidate(); } @@ -494,10 +496,10 @@ namespace ShiftOS.WinForms.Applications // ERROR: Handles clauses are not supported in C# private void picdrawingdisplay_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e) { - Point lastpoint; + PointF lastpoint; - thisPoint.X = (int)(e.Location.X - (magnificationlevel / 2)) / magnificationlevel; - thisPoint.Y = (int)(e.Location.Y - (magnificationlevel / 2)) / magnificationlevel; + thisPoint.X = (e.Location.X - (magnificationlevel / 2)) / magnificationlevel; + thisPoint.Y = (e.Location.Y - (magnificationlevel / 2)) / magnificationlevel; if (e.Button == MouseButtons.Left) @@ -512,7 +514,8 @@ namespace ShiftOS.WinForms.Applications { if (thisPoint.Y < canvasbitmap.Height && thisPoint.Y > -1) { - canvasbitmap.SetPixel(thisPoint.X, thisPoint.Y, drawingcolour); + //NO, NO, NO... Please don't tell me you're using SetPixel()... Whatever... + canvasbitmap.SetPixel((int)thisPoint.X, (int)thisPoint.Y, drawingcolour); //set the pixel on the canvas picdrawingdisplay.Invalidate(); //refresh the picture from the canvas @@ -585,8 +588,8 @@ namespace ShiftOS.WinForms.Applications // ERROR: Handles clauses are not supported in C# private void picdrawingdisplay_MouseUp(object sender, MouseEventArgs e) { - thisPoint.X = (int)(e.Location.X - (magnificationlevel / 2)) / magnificationlevel; - thisPoint.Y = (int)(e.Location.Y - (magnificationlevel / 2)) / magnificationlevel; + thisPoint.X = (e.Location.X - (magnificationlevel / 2)) / magnificationlevel; + thisPoint.Y = (e.Location.Y - (magnificationlevel / 2)) / magnificationlevel; if (selectedtool == "Pencil") { @@ -687,7 +690,7 @@ namespace ShiftOS.WinForms.Applications // ERROR: Handles clauses are not supported in C# private void btnzoomout_Click(object sender, EventArgs e) { - if (magnificationlevel > 1) + if (magnificationlevel > 0) { magnificationlevel /= 2; pnldrawingbackground.AutoScrollPosition = new Point(0, 0); @@ -702,16 +705,16 @@ namespace ShiftOS.WinForms.Applications private void setmagnification() { - magnifyRect.Width = (int)canvaswidth / magnificationlevel; - magnifyRect.Height = (int)canvasheight / magnificationlevel; - picdrawingdisplay.Size = new Size(canvaswidth * magnificationlevel, canvasheight * magnificationlevel); + magnifyRect.Width = canvaswidth / magnificationlevel; + magnifyRect.Height = canvasheight / magnificationlevel; + picdrawingdisplay.Size = new Size((int)(canvaswidth * magnificationlevel), (int)(canvasheight * magnificationlevel)); if (picdrawingdisplay.Height > 468 && picdrawingdisplay.Width > 676) { picdrawingdisplay.Location = new Point(0, 0); } else { - picdrawingdisplay.Location = new Point((pnldrawingbackground.Width - canvaswidth * magnificationlevel) / 2, (pnldrawingbackground.Height - canvasheight * magnificationlevel) / 2); + picdrawingdisplay.CenterParent(); } picdrawingdisplay.Invalidate(); lblzoomlevel.Text = magnificationlevel + "X"; @@ -783,7 +786,7 @@ namespace ShiftOS.WinForms.Applications // ERROR: Handles clauses are not supported in C# private void txtnewcanvaswidth_TextChanged(object sender, EventArgs e) { - if (txtnewcanvaswidth.Text == "" | txtnewcanvasheight.Text == "") + if (txtnewcanvaswidth.Text == "" || txtnewcanvasheight.Text == "") { if (txtnewcanvasheight.Text == "") { @@ -801,7 +804,7 @@ namespace ShiftOS.WinForms.Applications lbltotalpixels.Text = (Convert.ToInt32(txtnewcanvaswidth.Text) * Convert.ToInt32(txtnewcanvasheight.Text)).ToString(); if (ShiftoriumFrontend.UpgradeInstalled("artpad_limitless_pixels") == true) { - lbltotalpixels.ForeColor = Color.Black; + lbltotalpixels.ForeColor = SkinEngine.LoadedSkin.ControlTextColor; } else { @@ -811,7 +814,7 @@ namespace ShiftOS.WinForms.Applications } else { - lbltotalpixels.ForeColor = Color.Black; + lbltotalpixels.ForeColor = SkinEngine.LoadedSkin.ControlTextColor; } } } @@ -1559,6 +1562,33 @@ namespace ShiftOS.WinForms.Applications public void OnUpgrade() { } + + private void toolStripMenuItem2_Click(object sender, EventArgs e) + { + magnificationlevel = 0.25f; + setmagnification(); + } + + private void toolStripMenuItem3_Click(object sender, EventArgs e) + { + magnificationlevel = 0.5f; + setmagnification(); + + } + + private void toolStripMenuItem4_Click(object sender, EventArgs e) + { + magnificationlevel = 1; + setmagnification(); + + } + + private void toolStripMenuItem5_Click(object sender, EventArgs e) + { + magnificationlevel = 2f; + setmagnification(); + + } } public class undo diff --git a/ShiftOS.WinForms/Applications/Artpad.resx b/ShiftOS.WinForms/Applications/Artpad.resx index 4175077..e08d578 100644 --- a/ShiftOS.WinForms/Applications/Artpad.resx +++ b/ShiftOS.WinForms/Applications/Artpad.resx @@ -135,4 +135,7 @@ <metadata name="tmrsetupui.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>685, 17</value> </metadata> + <metadata name="msTools.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>796, 17</value> + </metadata> </root>
\ No newline at end of file diff --git a/ShiftOS.WinForms/Applications/AudioPlayer.cs b/ShiftOS.WinForms/Applications/AudioPlayer.cs index 49cf3a9..23fbf22 100644 --- a/ShiftOS.WinForms/Applications/AudioPlayer.cs +++ b/ShiftOS.WinForms/Applications/AudioPlayer.cs @@ -37,7 +37,7 @@ using System.Threading; namespace ShiftOS.WinForms.Applications { - [AppscapeEntry("{TITLE_AUDIOPLAYER}", "{DESC_AUDIOPLAYER}", 3047, 1000, "file_skimmer", "{AL_ENTERTAINMENT}")] + [AppscapeEntry("audio_player", "{TITLE_AUDIOPLAYER}", "{DESC_AUDIOPLAYER}", 3047, 1000, "file_skimmer", "{AL_ENTERTAINMENT}")] [Launcher("{TITLE_AUDIOPLAYER}", false, null, "{AL_ENTERTAINMENT}")] [WinOpen("{WO_AUDIOPLAYER}")] [DefaultTitle("{TITLE_AUDIOPLAYER}")] diff --git a/ShiftOS.WinForms/Applications/ButtonMaster.Designer.cs b/ShiftOS.WinForms/Applications/ButtonMaster.Designer.cs new file mode 100644 index 0000000..0ba9b96 --- /dev/null +++ b/ShiftOS.WinForms/Applications/ButtonMaster.Designer.cs @@ -0,0 +1,181 @@ +namespace ShiftOS.WinForms.Applications +{ + partial class ButtonMaster + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ButtonMaster)); + this.startpnl = new System.Windows.Forms.Panel(); + this.quitbtn = new System.Windows.Forms.Button(); + this.playbtn = new System.Windows.Forms.Button(); + this.difficultysel = new System.Windows.Forms.ListBox(); + this.label3 = new System.Windows.Forms.Label(); + this.desclabel = new System.Windows.Forms.Label(); + this.label2 = new System.Windows.Forms.Label(); + this.label1 = new System.Windows.Forms.Label(); + this.scorecounter = new System.Windows.Forms.Label(); + this.startpnl.SuspendLayout(); + this.SuspendLayout(); + // + // startpnl + // + this.startpnl.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.startpnl.Controls.Add(this.quitbtn); + this.startpnl.Controls.Add(this.playbtn); + this.startpnl.Controls.Add(this.difficultysel); + this.startpnl.Controls.Add(this.label3); + this.startpnl.Controls.Add(this.desclabel); + this.startpnl.Controls.Add(this.label2); + this.startpnl.Controls.Add(this.label1); + this.startpnl.Location = new System.Drawing.Point(27, 31); + this.startpnl.Name = "startpnl"; + this.startpnl.Size = new System.Drawing.Size(580, 409); + this.startpnl.TabIndex = 0; + // + // quitbtn + // + this.quitbtn.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.quitbtn.Location = new System.Drawing.Point(291, 303); + this.quitbtn.Name = "quitbtn"; + this.quitbtn.Size = new System.Drawing.Size(58, 23); + this.quitbtn.TabIndex = 7; + this.quitbtn.Text = "Quit"; + this.quitbtn.UseVisualStyleBackColor = true; + this.quitbtn.Click += new System.EventHandler(this.quitbtn_Click); + // + // playbtn + // + this.playbtn.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.playbtn.Location = new System.Drawing.Point(229, 303); + this.playbtn.Name = "playbtn"; + this.playbtn.Size = new System.Drawing.Size(56, 23); + this.playbtn.TabIndex = 6; + this.playbtn.Text = "Play"; + this.playbtn.UseVisualStyleBackColor = true; + this.playbtn.Click += new System.EventHandler(this.playbtn_Click); + // + // difficultysel + // + this.difficultysel.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.difficultysel.FormattingEnabled = true; + this.difficultysel.Location = new System.Drawing.Point(152, 202); + this.difficultysel.Name = "difficultysel"; + this.difficultysel.Size = new System.Drawing.Size(276, 95); + this.difficultysel.TabIndex = 5; + // + // label3 + // + this.label3.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.label3.AutoSize = true; + this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label3.Location = new System.Drawing.Point(243, 179); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(79, 20); + this.label3.TabIndex = 4; + this.label3.Tag = "header2"; + this.label3.Text = "Difficulty"; + // + // desclabel + // + this.desclabel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.desclabel.Location = new System.Drawing.Point(3, 67); + this.desclabel.Name = "desclabel"; + this.desclabel.Size = new System.Drawing.Size(577, 112); + this.desclabel.TabIndex = 2; + this.desclabel.Tag = ""; + this.desclabel.Text = resources.GetString("desclabel.Text"); + this.desclabel.TextAlign = System.Drawing.ContentAlignment.TopCenter; + // + // label2 + // + this.label2.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(235, 37); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(105, 13); + this.label2.TabIndex = 1; + this.label2.Text = "by Appscape Games"; + // + // label1 + // + this.label1.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label1.Location = new System.Drawing.Point(211, 12); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(152, 25); + this.label1.TabIndex = 0; + this.label1.Tag = "header1"; + this.label1.Text = "ButtonMaster"; + // + // scorecounter + // + this.scorecounter.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.scorecounter.BackColor = System.Drawing.Color.Transparent; + this.scorecounter.Font = new System.Drawing.Font("Courier New", 15.75F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.scorecounter.ForeColor = System.Drawing.Color.Red; + this.scorecounter.Location = new System.Drawing.Point(548, 454); + this.scorecounter.Name = "scorecounter"; + this.scorecounter.Size = new System.Drawing.Size(92, 26); + this.scorecounter.TabIndex = 1; + this.scorecounter.Tag = "keepfont keepfg keepbg"; + this.scorecounter.Text = "score"; + this.scorecounter.TextAlign = System.Drawing.ContentAlignment.BottomRight; + this.scorecounter.Visible = false; + // + // ButtonMaster + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BackgroundImage = global::ShiftOS.WinForms.Properties.Resources.BlueBlueVerticalGradient; + this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.Controls.Add(this.scorecounter); + this.Controls.Add(this.startpnl); + this.Name = "ButtonMaster"; + this.Size = new System.Drawing.Size(640, 480); + this.startpnl.ResumeLayout(false); + this.startpnl.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Panel startpnl; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label desclabel; + private System.Windows.Forms.ListBox difficultysel; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.Button playbtn; + private System.Windows.Forms.Button quitbtn; + private System.Windows.Forms.Label scorecounter; + } +} diff --git a/ShiftOS.WinForms/Applications/ButtonMaster.cs b/ShiftOS.WinForms/Applications/ButtonMaster.cs new file mode 100644 index 0000000..722bb14 --- /dev/null +++ b/ShiftOS.WinForms/Applications/ButtonMaster.cs @@ -0,0 +1,176 @@ +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; + +namespace ShiftOS.WinForms.Applications +{ + // Behold... The ShiftOS program that doesn't use threading. + [WinOpen("buttonmaster")] + [Launcher("Button Master", false, "", "Games")] + [AppscapeEntry("buttonmaster", "ButtonMaster", "Can you click all the buttons in 60 seconds?", 300, 10000)] + public partial class ButtonMaster : UserControl, IShiftOSWindow + { + public ushort Buttons; + public double Codepoints, Loss; + private ulong RoundedCodepoints { get { return (ulong) Math.Round(Codepoints); } } + public Timer clock = new Timer(); + private ButtonObject[] ButtonObjects; + private static ButtonMasterDifficulty[] difficulties = new ButtonMasterDifficulty[] + { + new ButtonMasterDifficulty("Easy", 24, 500), + new ButtonMasterDifficulty("Medium", 48, 1000), + new ButtonMasterDifficulty("Hard", 100, 2000), + new ButtonMasterDifficulty("Super Hard", 500, 10000) + }; + public ButtonMaster() + { + InitializeComponent(); + difficultysel.Items.AddRange(difficulties); + difficultysel.SelectedIndex = 0; + clock.Interval = 20; + clock.Tick += gameloop; + } + + public void OnLoad() + { + } + + public void OnSkinLoad() + { + + } + + public bool OnUnload() + { + return true; + } + + public void OnUpgrade() + { + + } + + private void quitbtn_Click(object sender, EventArgs e) + { + AppearanceManager.Close(this); + } + + private void playbtn_Click(object sender, EventArgs e) + { + var difficulty = difficultysel.SelectedItem as ButtonMasterDifficulty; + Buttons = difficulty.Buttons; + Codepoints = difficulty.Codepoints; + Loss = difficulty.Codepoints / 3000.0; + startpnl.Hide(); + scorecounter.Text = difficulty.Codepoints.ToString(); + scorecounter.Show(); + ButtonObjects = new ButtonObject[Buttons]; + for (ushort i = 0; i < Buttons; i++) + ButtonObjects[i] = new ButtonObject(this); + Controls.AddRange(ButtonObjects.Select(b => b.ctl).ToArray()); + clock.Start(); + } + + private void StopGame(string text) + { + desclabel.Text = text; + startpnl.Show(); + clock.Stop(); + scorecounter.Hide(); + foreach (var b in ButtonObjects) + { + clock.Tick -= b.move; + Controls.Remove(b.ctl); + } + } + + private void gameloop(object sender, EventArgs e) + { + if (Codepoints <= 0) + { + Codepoints = 0; + string text = String.Format("You lost. There were {0} buttons to go.", Buttons); + if (difficultysel.SelectedIndex > 0) + text += " Try an easier difficulty?"; + StopGame(text); + } + else if (Buttons <= 0) + { + SaveSystem.CurrentSave.Codepoints += RoundedCodepoints; + string text = String.Format("You won! {0} Codepoints have been transferred to your system.", RoundedCodepoints); + StopGame(text); + } + else + { + Codepoints -= Loss; + scorecounter.Text = RoundedCodepoints.ToString(); + } + } + } + public class ButtonMasterDifficulty + { + public string Name { get; private set; } + public ushort Buttons { get; private set; } + public uint Codepoints { get; private set; } + public string Display { get; private set; } + public override string ToString() + { + return Display; + } + public ButtonMasterDifficulty(string in_Name, ushort in_Buttons, uint in_Codepoints) + { + Name = in_Name; + Buttons = in_Buttons; + Codepoints = in_Codepoints; + Display = String.Format("{0} ({1} Buttons, {2} Codepoints)", Name, Buttons, Codepoints); + } + } + + public class ButtonObject + { + public Button ctl; + public sbyte xspeed, yspeed; + public ButtonMaster parent; + private static Random rnd = new Random(); + public void move(object sender, EventArgs e) + { + ctl.Top += yspeed; + if (ctl.Top < 0 || ctl.Bottom > parent.Height) + yspeed = (sbyte)(Math.Abs(yspeed) * -(ctl.Top / Math.Abs(ctl.Top))); // Change the sign of yspeed to be the opposite of that of ctl.Top + ctl.Left += xspeed; + if (ctl.Left < 0 || ctl.Right > parent.Width) + xspeed = (sbyte)(Math.Abs(xspeed) * -(ctl.Left / Math.Abs(ctl.Left))); + } + public void click(object sender, EventArgs e) + { + parent.Buttons--; + ctl.Hide(); + parent.clock.Tick -= move; + } + public ButtonObject(ButtonMaster in_parent) + { + xspeed = (sbyte) rnd.Next(10, 20); + yspeed = (sbyte) rnd.Next(10, 20); + parent = in_parent; + parent.clock.Tick += move; + ctl = new Button(); + ctl.Click += click; + ctl.Top = rnd.Next(parent.Height); + ctl.Left = rnd.Next(parent.Width); + ctl.Width = 75; + ctl.Height = 23; + ctl.Text = "Click"; + // Time to invoke a private method using reflection. What could possibly go wrong? + // This stops the player from just holding down space to beat the level. + typeof(Button).GetMethod("SetStyle", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).Invoke(ctl, new object[] { ControlStyles.Selectable, false }); + } + + } +} diff --git a/ShiftOS.WinForms/Applications/ButtonMaster.resx b/ShiftOS.WinForms/Applications/ButtonMaster.resx new file mode 100644 index 0000000..6742cee --- /dev/null +++ b/ShiftOS.WinForms/Applications/ButtonMaster.resx @@ -0,0 +1,130 @@ +<?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="desclabel.Text" xml:space="preserve"> + <value>In the game of ButtonMaster, dozens of buttons bounce +around the window. Your task is to click all of them in +60 seconds. The quicker you pull it off, the more points +you earn. + +In this special ShiftOS version, any points you earn are +added to your Codepoints balance at the end of the game. +So, what are you waiting for?</value> + </data> +</root>
\ No newline at end of file diff --git a/ShiftOS.WinForms/Applications/Chat.Designer.cs b/ShiftOS.WinForms/Applications/Chat.Designer.cs index 7bfa4dd..622bf1a 100644 --- a/ShiftOS.WinForms/Applications/Chat.Designer.cs +++ b/ShiftOS.WinForms/Applications/Chat.Designer.cs @@ -65,9 +65,12 @@ namespace ShiftOS.WinForms.Applications this.toolStrip1 = new System.Windows.Forms.ToolStrip(); this.tschatid = new System.Windows.Forms.ToolStripLabel(); this.tsuserdata = new System.Windows.Forms.ToolStripLabel(); + this.lbtyping = new System.Windows.Forms.ToolStripLabel(); this.tsbottombar = new System.Windows.Forms.ToolStrip(); this.txtuserinput = new System.Windows.Forms.ToolStripTextBox(); this.btnsend = new System.Windows.Forms.ToolStripButton(); + this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); + this.btnsendfile = new System.Windows.Forms.ToolStripButton(); this.panel1.SuspendLayout(); this.pnlstart.SuspendLayout(); this.flowLayoutPanel1.SuspendLayout(); @@ -179,7 +182,10 @@ namespace ShiftOS.WinForms.Applications // this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.tschatid, - this.tsuserdata}); + this.tsuserdata, + this.lbtyping, + this.toolStripSeparator1, + this.btnsendfile}); this.toolStrip1.Location = new System.Drawing.Point(0, 0); this.toolStrip1.Name = "toolStrip1"; this.toolStrip1.Size = new System.Drawing.Size(633, 25); @@ -198,6 +204,12 @@ namespace ShiftOS.WinForms.Applications this.tsuserdata.Size = new System.Drawing.Size(86, 22); this.tsuserdata.Text = "toolStripLabel1"; // + // lbtyping + // + this.lbtyping.Name = "lbtyping"; + this.lbtyping.Size = new System.Drawing.Size(86, 22); + this.lbtyping.Text = "toolStripLabel1"; + // // tsbottombar // this.tsbottombar.Dock = System.Windows.Forms.DockStyle.Bottom; @@ -227,6 +239,21 @@ namespace ShiftOS.WinForms.Applications this.btnsend.Text = "Send"; this.btnsend.Click += new System.EventHandler(this.btnsend_Click); // + // toolStripSeparator1 + // + this.toolStripSeparator1.Name = "toolStripSeparator1"; + this.toolStripSeparator1.Size = new System.Drawing.Size(6, 25); + // + // btnsendfile + // + this.btnsendfile.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.btnsendfile.Image = ((System.Drawing.Image)(resources.GetObject("btnsendfile.Image"))); + this.btnsendfile.ImageTransparentColor = System.Drawing.Color.Magenta; + this.btnsendfile.Name = "btnsendfile"; + this.btnsendfile.Size = new System.Drawing.Size(65, 22); + this.btnsendfile.Text = "Send a file"; + this.btnsendfile.Click += new System.EventHandler(this.btnsendfile_Click); + // // Chat // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -265,5 +292,8 @@ namespace ShiftOS.WinForms.Applications private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1; private System.Windows.Forms.TextBox txtchatid; private System.Windows.Forms.Button btnjoin; + private System.Windows.Forms.ToolStripLabel lbtyping; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator1; + private System.Windows.Forms.ToolStripButton btnsendfile; } } diff --git a/ShiftOS.WinForms/Applications/Chat.cs b/ShiftOS.WinForms/Applications/Chat.cs index 14a8a80..5be7b0c 100644 --- a/ShiftOS.WinForms/Applications/Chat.cs +++ b/ShiftOS.WinForms/Applications/Chat.cs @@ -41,7 +41,7 @@ namespace ShiftOS.WinForms.Applications [WinOpen("{WO_SIMPLESRC}")] [Launcher("{TITLE_SIMPLESRC}", false, null, "{AL_NETWORKING}")] [DefaultTitle("{TITLE_SIMPLESRC}")] - [AppscapeEntry("{TITLE_SIMPLESRC}", "{DESC_SIMPLESRC}", 300, 145, "file_skimmer", "{AL_NETWORKING}")] + [AppscapeEntry("simplesrc_client", "{TITLE_SIMPLESRC}", "{DESC_SIMPLESRC}", 300, 145, "file_skimmer", "{AL_NETWORKING}")] public partial class Chat : UserControl, IShiftOSWindow { public Chat() @@ -49,6 +49,41 @@ namespace ShiftOS.WinForms.Applications InitializeComponent(); } + public event Action<ShiftOS.Objects.ShiftFS.File> FileSent; + + public string Typing + { + get + { + return lbtyping.Text; + } + set + { + this.Invoke(new Action(() => + { + if (string.IsNullOrWhiteSpace(value)) + { + lbtyping.Visible = false; + } + else + { + lbtyping.Text = value + " is typing..."; + lbtyping.Visible = true; + } + })); + } + } + + public void ShowChat() + { + this.Invoke(new Action(() => + { + pnlstart.Hide(); + rtbchat.Show(); + rtbchat.BringToFront(); + })); + } + public void OnLoad() { AllInstances.Add(this); @@ -86,7 +121,7 @@ namespace ShiftOS.WinForms.Applications private void txtuserinput_KeyDown(object sender, KeyEventArgs e) { - if(e.KeyCode == Keys.Enter) + if (e.KeyCode == Keys.Enter) { e.SuppressKeyPress = true; @@ -108,7 +143,7 @@ namespace ShiftOS.WinForms.Applications public static void SendMessage(string user, string destination, string msg) { - foreach(var chat in AllInstances) + foreach (var chat in AllInstances) { chat.PostMessage(user, destination, msg); } @@ -138,62 +173,14 @@ namespace ShiftOS.WinForms.Applications txtuserinput.Text = ""; } - [Story("story_thefennfamily")] - public static void Story_TheFennFamily() + private void btnsendfile_Click(object sender, EventArgs e) { - bool complete = false; - Infobox.Show("SimpleSRC", "A direct message has been sent to you on SimpleSRC from user \"maureenfenn@trisys\".", () => + FileSkimmerBackend.GetFile(new[] { "" }, FileOpenerStyle.Open, (file) => { - string ch = "maureenfenn@trisys"; - var c = new Chat(); - c.ChatID = ch; - AppearanceManager.SetupWindow(c); - string you = $"{SaveSystem.CurrentUser.Username}@{SaveSystem.CurrentSave.SystemName}"; - - var t = new Thread(() => - { - SendMessage(you, ch, "User has joined the chat."); - Thread.Sleep(2000); - SendMessage(ch, ch, "Hello, " + you + ". My name is Maureen. Maureen Fenn."); - Thread.Sleep(2500); - SendMessage(ch, ch, "I am the author of the various Tri applications you may see on Appscape."); - Thread.Sleep(2000); - SendMessage(ch, ch, "I need your help with something..."); - Thread.Sleep(2500); - SendMessage(ch, ch, "Firstly, a little backstory. There was a time in ShiftOS when none of us were connected."); - Thread.Sleep(2500); - SendMessage(ch, ch, "There wasn't a Digital Society, we didn't have chat applications or anything..."); - Thread.Sleep(2000); - SendMessage(ch, ch, "All we had was the Shiftnet."); - Thread.Sleep(2500); - SendMessage(ch, ch, "However, in 2016, something happened called the \"connected revolution\". It was like, the invention of the Internet - it was huge for the world of ShiftOS."); - Thread.Sleep(2500); - SendMessage(ch, ch, "Before this, the only way you could earn Codepoints was through playing games in ShiftOS."); - Thread.Sleep(2500); - SendMessage(ch, ch, "I was the one who coded those games, and I would put them on a Shiftnet website that you can still access today, shiftnet/main/shiftgames."); - Thread.Sleep(2500); - SendMessage(ch, ch, "But when the Connected Revolution took place, things got difficult. My son, Nalyr Fenn, was born, and people stopped using my software and instead moved on to hacking eachother and stealing peoples' Codepoints."); - Thread.Sleep(2500); - SendMessage(ch, ch, "When Nalyr's sentience levels reached near human - i.e, he grew up, we decided to start TriOffice. It was a huge success, thanks to Aiden Nirh, the guy who runs Appscape."); - Thread.Sleep(2500); - SendMessage(ch, ch, "However... a few months ago he cut contact with us and we stopped receiving Codepoints from TriOffice."); - Thread.Sleep(2500); - SendMessage(ch, ch, "I'm running low - I can't afford to keep my system running much longer. You have to help!"); - Thread.Sleep(2500); - SendMessage(ch, ch, "Perhaps, you could breach Aiden's server and look for clues as to why he's against us? I'll reward you with the last Codepoints I have."); - Thread.Sleep(2500); - SendMessage(you, ch, "Alright, I'm in - but I don't know where to begin..."); - Thread.Sleep(2500); - SendMessage(ch, ch, "A little birdie tells me you know about the RTS exploits going around... Try using that on Aiden's server. You can find his systemname on Appscape under \"Contact Us.\" He has a mailserver on Appscape - and also has RTS on the same server."); - Thread.Sleep(2500); - SendMessage(ch, ch, "Good luck... My life depends on you!"); - complete = true; - }); - t.IsBackground = true; - t.Start(); + var finf = ShiftOS.Objects.ShiftFS.Utils.GetFileInfo(file); + PostMessage($"{SaveSystem.CurrentUser.Username}@{SaveSystem.CurrentSave.SystemName}", ChatID, "<user sent a file: " + finf.Name + ">"); + FileSent?.Invoke(finf); }); - while (!complete) - Thread.Sleep(10); } } } diff --git a/ShiftOS.WinForms/Applications/Chat.resx b/ShiftOS.WinForms/Applications/Chat.resx index e4a35ad..1787168 100644 --- a/ShiftOS.WinForms/Applications/Chat.resx +++ b/ShiftOS.WinForms/Applications/Chat.resx @@ -120,16 +120,25 @@ <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>17, 17</value> </metadata> + <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> + <data name="btnsendfile.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== +</value> + </data> <metadata name="tsbottombar.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>122, 17</value> </metadata> - <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> - <value>17, 17</value> - </metadata> - <metadata name="tsbottombar.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> - <value>122, 17</value> - </metadata> - <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <data name="btnsend.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 diff --git a/ShiftOS.WinForms/Applications/Clock.Designer.cs b/ShiftOS.WinForms/Applications/Clock.Designer.cs new file mode 100644 index 0000000..0590c88 --- /dev/null +++ b/ShiftOS.WinForms/Applications/Clock.Designer.cs @@ -0,0 +1,73 @@ +namespace ShiftOS.WinForms.Applications +{ + partial class Clock + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + this.lbheader = new System.Windows.Forms.Label(); + this.lbcurrenttime = new System.Windows.Forms.Label(); + this.SuspendLayout(); + // + // lbheader + // + this.lbheader.AutoSize = true; + this.lbheader.Location = new System.Drawing.Point(234, 183); + this.lbheader.Name = "lbheader"; + this.lbheader.Size = new System.Drawing.Size(66, 13); + this.lbheader.TabIndex = 0; + this.lbheader.Tag = "header2"; + this.lbheader.Text = "Current time:"; + // + // lbcurrenttime + // + this.lbcurrenttime.AutoSize = true; + this.lbcurrenttime.Location = new System.Drawing.Point(294, 140); + this.lbcurrenttime.Name = "lbcurrenttime"; + this.lbcurrenttime.Size = new System.Drawing.Size(135, 13); + this.lbcurrenttime.TabIndex = 1; + this.lbcurrenttime.Tag = "header1"; + this.lbcurrenttime.Text = "000001 seconds since helll"; + // + // Clock + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.lbcurrenttime); + this.Controls.Add(this.lbheader); + this.Name = "Clock"; + this.Size = new System.Drawing.Size(527, 260); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Label lbheader; + private System.Windows.Forms.Label lbcurrenttime; + } +} diff --git a/ShiftOS.WinForms/Applications/Clock.cs b/ShiftOS.WinForms/Applications/Clock.cs new file mode 100644 index 0000000..b4f6793 --- /dev/null +++ b/ShiftOS.WinForms/Applications/Clock.cs @@ -0,0 +1,55 @@ +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; +using ShiftOS.WinForms.Tools; + +namespace ShiftOS.WinForms.Applications +{ + [RequiresUpgrade("clock")] + [WinOpen("clock")] + [Launcher("Clock", false, null, "Accessories")] + [DefaultTitle("Clock")] + public partial class Clock : UserControl, IShiftOSWindow + { + public Clock() + { + InitializeComponent(); + clocktimer = new Timer(); + clocktimer.Interval = 100; + clocktimer.Tick += (o, a) => + { + lbheader.CenterParent(); + lbheader.Top = 15; + lbcurrenttime.Text = Terminal.GetTime(); + lbcurrenttime.CenterParent(); + }; + } + + private Timer clocktimer = null; + + public void OnLoad() + { + clocktimer.Start(); + } + + public void OnSkinLoad() + { + } + + public bool OnUnload() + { + return true; + } + + public void OnUpgrade() + { + } + } +} diff --git a/ShiftOS.WinForms/Applications/Clock.resx b/ShiftOS.WinForms/Applications/Clock.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/ShiftOS.WinForms/Applications/Clock.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.WinForms/Applications/FileSkimmer.Designer.cs b/ShiftOS.WinForms/Applications/FileSkimmer.Designer.cs index 965e4eb..91891ba 100644 --- a/ShiftOS.WinForms/Applications/FileSkimmer.Designer.cs +++ b/ShiftOS.WinForms/Applications/FileSkimmer.Designer.cs @@ -52,6 +52,7 @@ namespace ShiftOS.WinForms.Applications /// </summary> private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FileSkimmer)); this.lvitems = new System.Windows.Forms.ListView(); this.panel1 = new System.Windows.Forms.Panel(); this.pinnedItems = new System.Windows.Forms.TreeView(); @@ -63,8 +64,25 @@ namespace ShiftOS.WinForms.Applications this.copyToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.moveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.pinToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.pnlconnect = new System.Windows.Forms.Panel(); + this.flcbuttons = new System.Windows.Forms.FlowLayoutPanel(); + this.btncancel = new System.Windows.Forms.Button(); + this.btnok = new System.Windows.Forms.Button(); + this.pnlcreds = new System.Windows.Forms.Panel(); + this.txtcpass = new System.Windows.Forms.TextBox(); + this.label3 = new System.Windows.Forms.Label(); + this.txtcuser = new System.Windows.Forms.TextBox(); + this.label2 = new System.Windows.Forms.Label(); + this.txtcsys = new System.Windows.Forms.TextBox(); + this.label1 = new System.Windows.Forms.Label(); + this.lbcdesc = new System.Windows.Forms.Label(); + this.lbctitle = new System.Windows.Forms.Label(); + this.disconnectToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.panel1.SuspendLayout(); this.menuStrip1.SuspendLayout(); + this.pnlconnect.SuspendLayout(); + this.flcbuttons.SuspendLayout(); + this.pnlcreds.SuspendLayout(); this.SuspendLayout(); // // lvitems @@ -114,6 +132,7 @@ namespace ShiftOS.WinForms.Applications this.newFolderToolStripMenuItem, this.deleteToolStripMenuItem, this.connectToRemoteServerToolStripMenuItem, + this.disconnectToolStripMenuItem, this.copyToolStripMenuItem, this.moveToolStripMenuItem, this.pinToolStripMenuItem}); @@ -140,9 +159,9 @@ namespace ShiftOS.WinForms.Applications // connectToRemoteServerToolStripMenuItem // this.connectToRemoteServerToolStripMenuItem.Name = "connectToRemoteServerToolStripMenuItem"; - this.connectToRemoteServerToolStripMenuItem.Size = new System.Drawing.Size(153, 20); - this.connectToRemoteServerToolStripMenuItem.Text = "Connect to remote server"; - this.connectToRemoteServerToolStripMenuItem.Visible = false; + this.connectToRemoteServerToolStripMenuItem.Size = new System.Drawing.Size(129, 20); + this.connectToRemoteServerToolStripMenuItem.Text = "Start Remote Session"; + this.connectToRemoteServerToolStripMenuItem.Click += new System.EventHandler(this.connectToRemoteServerToolStripMenuItem_Click); // // copyToolStripMenuItem // @@ -165,10 +184,152 @@ namespace ShiftOS.WinForms.Applications this.pinToolStripMenuItem.Text = "Pin"; this.pinToolStripMenuItem.Click += new System.EventHandler(this.pinToolStripMenuItem_Click); // + // pnlconnect + // + this.pnlconnect.Controls.Add(this.flcbuttons); + this.pnlconnect.Controls.Add(this.pnlcreds); + this.pnlconnect.Controls.Add(this.lbcdesc); + this.pnlconnect.Controls.Add(this.lbctitle); + this.pnlconnect.Location = new System.Drawing.Point(100, 27); + this.pnlconnect.Name = "pnlconnect"; + this.pnlconnect.Size = new System.Drawing.Size(419, 306); + this.pnlconnect.TabIndex = 4; + this.pnlconnect.Visible = false; + // + // flcbuttons + // + this.flcbuttons.AutoSize = true; + this.flcbuttons.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.flcbuttons.Controls.Add(this.btncancel); + this.flcbuttons.Controls.Add(this.btnok); + this.flcbuttons.Location = new System.Drawing.Point(116, 256); + this.flcbuttons.Name = "flcbuttons"; + this.flcbuttons.Size = new System.Drawing.Size(94, 29); + this.flcbuttons.TabIndex = 3; + // + // btncancel + // + this.btncancel.AutoSize = true; + this.btncancel.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.btncancel.Location = new System.Drawing.Point(3, 3); + this.btncancel.Name = "btncancel"; + this.btncancel.Size = new System.Drawing.Size(50, 23); + this.btncancel.TabIndex = 0; + this.btncancel.Text = "Cancel"; + this.btncancel.UseVisualStyleBackColor = true; + this.btncancel.Click += new System.EventHandler(this.btncancel_Click); + // + // btnok + // + this.btnok.AutoSize = true; + this.btnok.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.btnok.Location = new System.Drawing.Point(59, 3); + this.btnok.Name = "btnok"; + this.btnok.Size = new System.Drawing.Size(32, 23); + this.btnok.TabIndex = 1; + this.btnok.Text = "OK"; + this.btnok.UseVisualStyleBackColor = true; + this.btnok.Click += new System.EventHandler(this.btnok_Click); + // + // pnlcreds + // + this.pnlcreds.Controls.Add(this.txtcpass); + this.pnlcreds.Controls.Add(this.label3); + this.pnlcreds.Controls.Add(this.txtcuser); + this.pnlcreds.Controls.Add(this.label2); + this.pnlcreds.Controls.Add(this.txtcsys); + this.pnlcreds.Controls.Add(this.label1); + this.pnlcreds.Location = new System.Drawing.Point(25, 129); + this.pnlcreds.Name = "pnlcreds"; + this.pnlcreds.Size = new System.Drawing.Size(300, 104); + this.pnlcreds.TabIndex = 2; + // + // txtcpass + // + this.txtcpass.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.txtcpass.Location = new System.Drawing.Point(91, 62); + this.txtcpass.Name = "txtcpass"; + this.txtcpass.Size = new System.Drawing.Size(196, 20); + this.txtcpass.TabIndex = 5; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(12, 65); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(56, 13); + this.label3.TabIndex = 4; + this.label3.Text = "Password:"; + // + // txtcuser + // + this.txtcuser.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.txtcuser.Location = new System.Drawing.Point(91, 36); + this.txtcuser.Name = "txtcuser"; + this.txtcuser.Size = new System.Drawing.Size(196, 20); + this.txtcuser.TabIndex = 3; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(12, 39); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(58, 13); + this.label2.TabIndex = 2; + this.label2.Text = "Username:"; + // + // txtcsys + // + this.txtcsys.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.txtcsys.Location = new System.Drawing.Point(91, 10); + this.txtcsys.Name = "txtcsys"; + this.txtcsys.Size = new System.Drawing.Size(196, 20); + this.txtcsys.TabIndex = 1; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(12, 13); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(73, 13); + this.label1.TabIndex = 0; + this.label1.Text = "System name:"; + // + // lbcdesc + // + this.lbcdesc.Location = new System.Drawing.Point(46, 51); + this.lbcdesc.Name = "lbcdesc"; + this.lbcdesc.Size = new System.Drawing.Size(357, 54); + this.lbcdesc.TabIndex = 1; + this.lbcdesc.Text = resources.GetString("lbcdesc.Text"); + this.lbcdesc.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // lbctitle + // + this.lbctitle.AutoSize = true; + this.lbctitle.Location = new System.Drawing.Point(13, 18); + this.lbctitle.Name = "lbctitle"; + this.lbctitle.Size = new System.Drawing.Size(133, 13); + this.lbctitle.TabIndex = 0; + this.lbctitle.Tag = "header3"; + this.lbctitle.Text = "Connect to Remote Server"; + // + // disconnectToolStripMenuItem + // + this.disconnectToolStripMenuItem.Name = "disconnectToolStripMenuItem"; + this.disconnectToolStripMenuItem.Size = new System.Drawing.Size(78, 20); + this.disconnectToolStripMenuItem.Text = "Disconnect"; + this.disconnectToolStripMenuItem.Visible = false; + this.disconnectToolStripMenuItem.Click += new System.EventHandler(this.disconnectToolStripMenuItem_Click); + // // FileSkimmer // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.pnlconnect); this.Controls.Add(this.panel1); this.Controls.Add(this.menuStrip1); this.Name = "FileSkimmer"; @@ -177,6 +338,12 @@ namespace ShiftOS.WinForms.Applications this.panel1.ResumeLayout(false); this.menuStrip1.ResumeLayout(false); this.menuStrip1.PerformLayout(); + this.pnlconnect.ResumeLayout(false); + this.pnlconnect.PerformLayout(); + this.flcbuttons.ResumeLayout(false); + this.flcbuttons.PerformLayout(); + this.pnlcreds.ResumeLayout(false); + this.pnlcreds.PerformLayout(); this.ResumeLayout(false); this.PerformLayout(); @@ -195,5 +362,19 @@ namespace ShiftOS.WinForms.Applications private System.Windows.Forms.ToolStripMenuItem moveToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem pinToolStripMenuItem; private System.Windows.Forms.TreeView pinnedItems; + private System.Windows.Forms.Panel pnlconnect; + private System.Windows.Forms.FlowLayoutPanel flcbuttons; + private System.Windows.Forms.Button btncancel; + private System.Windows.Forms.Button btnok; + private System.Windows.Forms.Panel pnlcreds; + private System.Windows.Forms.TextBox txtcpass; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.TextBox txtcuser; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.TextBox txtcsys; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Label lbcdesc; + private System.Windows.Forms.Label lbctitle; + private System.Windows.Forms.ToolStripMenuItem disconnectToolStripMenuItem; } }
\ No newline at end of file diff --git a/ShiftOS.WinForms/Applications/FileSkimmer.cs b/ShiftOS.WinForms/Applications/FileSkimmer.cs index 51d7bd8..3e17420 100644 --- a/ShiftOS.WinForms/Applications/FileSkimmer.cs +++ b/ShiftOS.WinForms/Applications/FileSkimmer.cs @@ -36,6 +36,7 @@ using System.Windows.Forms; using static ShiftOS.Objects.ShiftFS.Utils; using ShiftOS.Engine; using Newtonsoft.Json; +using ShiftOS.WinForms.Tools; namespace ShiftOS.WinForms.Applications { @@ -46,6 +47,24 @@ namespace ShiftOS.WinForms.Applications [DefaultIcon("iconFileSkimmer")] public partial class FileSkimmer : UserControl, IShiftOSWindow { + + public static Objects.ClientSave CurrentRemoteUser = new Objects.ClientSave(); + public static ShiftOSEnvironment OpenConnection = new ShiftOSEnvironment(); + + private static event Action OnDisconnect; + + public static void DisconnectRemote() + { + Desktop.InvokeOnWorkerThread(() => + { + OnDisconnect?.Invoke(); + CurrentRemoteUser = new Objects.ClientSave(); + if (!string.IsNullOrWhiteSpace(OpenConnection.SystemName)) + Infobox.Show("Connections terminated.", "All outbound File Skimmer connections have been terminated."); + OpenConnection = new ShiftOSEnvironment(); + }); + } + public FileSkimmer() { InitializeComponent(); @@ -53,6 +72,15 @@ namespace ShiftOS.WinForms.Applications { ChangeDirectory(Paths.GetPath("root")); }; + OnDisconnect += FileSkimmer_OnDisconnect; + } + + private void FileSkimmer_OnDisconnect() + { + connectToRemoteServerToolStripMenuItem.Text = "Start Remote Session"; + disconnectToolStripMenuItem.Visible = false; + currentdir = "__system"; + ResetList(); } private void lvitems_DoubleClick(object sender, EventArgs e) @@ -300,6 +328,7 @@ namespace ShiftOS.WinForms.Applications public bool OnUnload() { + OnDisconnect -= FileSkimmer_OnDisconnect; return true; } @@ -497,5 +526,79 @@ namespace ShiftOS.WinForms.Applications } catch { } } + + private void connectToRemoteServerToolStripMenuItem_Click(object sender, EventArgs e) + { + ShowConnectionBox(); + } + + public void ShowConnectionBox() + { + pnlconnect.Show(); + pnlconnect.BringToFront(); + pnlconnect.CenterParent(); + + //header + lbctitle.CenterParent(); + lbctitle.Top = 5; + + //description + lbcdesc.CenterParent(); + lbcdesc.Top = lbctitle.Top + lbctitle.Height + 5; + + //credentials + pnlcreds.CenterParent(); + pnlcreds.Top = lbcdesc.Top + lbcdesc.Height + 5; + txtcsys.Text = OpenConnection.SystemName; + txtcuser.Text = CurrentRemoteUser.Username; + txtcpass.Text = CurrentRemoteUser.Password; + + //controls + flcbuttons.CenterParent(); + flcbuttons.Top = pnlcreds.Top + pnlcreds.Height + 5; + } + + private void btncancel_Click(object sender, EventArgs e) + { + pnlconnect.Hide(); + } + + private void btnok_Click(object sender, EventArgs e) + { + var sys = VirtualEnvironments.Get(txtcsys.Text); + + if(sys != null) + { + //user auth + var user = sys.Users.FirstOrDefault(x => x.Username == txtcuser.Text && x.Password == txtcpass.Text); + if(user != null) + { + OpenConnection = sys; + CurrentRemoteUser = user; + if (Mounts.Count == 3) + Mounts.RemoveAt(2); + Mounts.Add(sys.Filesystem); + ChangeDirectory("2:"); + pnlconnect.Hide(); + connectToRemoteServerToolStripMenuItem.Text = "Reauthenticate"; + disconnectToolStripMenuItem.Visible = true; + return; + } + Infobox.Show("Access denied.", "Authentication failed for the specified user. Connection aborted."); + return; + } + var t = new System.Threading.Thread(() => + { + System.Threading.Thread.Sleep(5000); + Infobox.Show("Connection timeout.", "Cannot connect to the specified system name..."); + }); + t.IsBackground = true; + t.Start(); + } + + private void disconnectToolStripMenuItem_Click(object sender, EventArgs e) + { + DisconnectRemote(); + } } } diff --git a/ShiftOS.WinForms/Applications/FileSkimmer.resx b/ShiftOS.WinForms/Applications/FileSkimmer.resx index d5494e3..d53e957 100644 --- a/ShiftOS.WinForms/Applications/FileSkimmer.resx +++ b/ShiftOS.WinForms/Applications/FileSkimmer.resx @@ -120,4 +120,7 @@ <metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>17, 17</value> </metadata> + <data name="lbcdesc.Text" xml:space="preserve"> + <value>Remote servers allow you to store and retrieve documents and files on computers from all over the Digital Society. Simply enter a system name and the relevant user credentials to log in and we'll mount the remote filesystem as if it were a drive on your computer.</value> + </data> </root>
\ No newline at end of file diff --git a/ShiftOS.WinForms/Applications/NameChanger.cs b/ShiftOS.WinForms/Applications/NameChanger.cs index 25e1475..4695c8a 100644 --- a/ShiftOS.WinForms/Applications/NameChanger.cs +++ b/ShiftOS.WinForms/Applications/NameChanger.cs @@ -40,7 +40,7 @@ namespace ShiftOS.WinForms.Applications { [MultiplayerOnly] [Launcher("{TITLE_NAMECHANGER}", false, null, "{AL_CUSTOMIZATION}")] - [AppscapeEntry("{TITLE_NAMECHANGER}", "{DESC_NAMECHANGER}", 342, 500, "skinning;file_skimmer;wm_titlebar", "{AL_CUSTOMIZATION}")] + [AppscapeEntry("name_changer", "{TITLE_NAMECHANGER}", "{DESC_NAMECHANGER}", 342, 500, "skinning;file_skimmer;wm_titlebar", "{AL_CUSTOMIZATION}")] [WinOpen("{WO_NAMECHANGER}")] [DefaultTitle("{TITLE_NAMECHANGER}")] [DefaultIcon("iconNameChanger")] diff --git a/ShiftOS.WinForms/Applications/Pong.cs b/ShiftOS.WinForms/Applications/Pong.cs index 5b60fbd..2f309f3 100644 --- a/ShiftOS.WinForms/Applications/Pong.cs +++ b/ShiftOS.WinForms/Applications/Pong.cs @@ -304,7 +304,7 @@ namespace ShiftOS.WinForms.Applications doAi = true; } - private bool drawAiBall = true; + private bool drawAiBall = false; private void pnlcanvas_Paint(object sender, PaintEventArgs e) { @@ -402,6 +402,7 @@ namespace ShiftOS.WinForms.Applications public void OnLoad() { + pnlgamestart.CenterParent(); doAi = false; doBallCalc = false; pnlgamestart.Show(); diff --git a/ShiftOS.WinForms/Applications/ShiftLetters.cs b/ShiftOS.WinForms/Applications/ShiftLetters.cs index a09830a..1fa58b4 100644 --- a/ShiftOS.WinForms/Applications/ShiftLetters.cs +++ b/ShiftOS.WinForms/Applications/ShiftLetters.cs @@ -33,12 +33,13 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; +using ShiftOS.WinForms.Tools; namespace ShiftOS.WinForms.Applications { [MultiplayerOnly] [Launcher("{TITLE_SHIFTLETTERS}", false, null, "{AL_GAMES}")] - [AppscapeEntry("{TITLE_SHIFTLETTERS}", "{DESC_SHIFTLETTERS}", 300, 150, null, "{AL_GAMES}")] + [AppscapeEntry("shiftletters", "{TITLE_SHIFTLETTERS}", "{DESC_SHIFTLETTERS}", 300, 150, null, "{AL_GAMES}")] [WinOpen("{WO_SHIFTLETTERS}")] [DefaultIcon("iconShiftLetters")] public partial class ShiftLetters : UserControl, IShiftOSWindow @@ -180,8 +181,18 @@ namespace ShiftOS.WinForms.Applications if (Shiftorium.UpgradeInstalled("sl_operating_systems_wordlist")) comboBox1.Items.Add("Operating Systems"); btnrestart.Visible = true; lblword.Left = (this.Width - lblword.Width) / 2; + comboBox1.SelectedIndex = 0; + tmrcenter.Tick += (o, a) => + { + this.tbguess.CenterParent(); + this.tbguess.Parent.CenterParent(); + }; + tmrcenter.Interval = 50; + tmrcenter.Start(); } + Timer tmrcenter = new Timer(); + public void OnUpgrade() { @@ -189,6 +200,7 @@ namespace ShiftOS.WinForms.Applications public bool OnUnload() { + tmrcenter.Stop(); return true; } diff --git a/ShiftOS.WinForms/Applications/ShiftSweeper.cs b/ShiftOS.WinForms/Applications/ShiftSweeper.cs index 9884c60..8d9bd31 100644 --- a/ShiftOS.WinForms/Applications/ShiftSweeper.cs +++ b/ShiftOS.WinForms/Applications/ShiftSweeper.cs @@ -35,7 +35,7 @@ using ShiftOS.Engine; namespace ShiftOS.WinForms.Applications { [Launcher("{TITLE_SHIFTSWEEPER}", true, "al_shiftsweeper", "{AL_GAMES}")] - [AppscapeEntry("{TITLE_SHIFTSWEEPER}", "{DESC_SHIFTSWEEPER}", 1600, 800, "shiftletters", "{AL_GAMES}")] + [AppscapeEntry("shiftsweeper", "{TITLE_SHIFTSWEEPER}", "{DESC_SHIFTSWEEPER}", 1600, 800, "shiftletters", "{AL_GAMES}")] [MultiplayerOnly] [WinOpen("{WO_SHIFTSWEEPER}")] [DefaultIcon("iconShiftSweeper")] diff --git a/ShiftOS.WinForms/Applications/TriSheet.cs b/ShiftOS.WinForms/Applications/TriSheet.cs index 48c60ed..2eaf6df 100644 --- a/ShiftOS.WinForms/Applications/TriSheet.cs +++ b/ShiftOS.WinForms/Applications/TriSheet.cs @@ -15,7 +15,7 @@ using ShiftOS.Objects.ShiftFS; namespace ShiftOS.WinForms.Applications { [WinOpen("trisheet")] - [AppscapeEntry("TriSheet", "Part of the trilogy of office applications for enhancement of your system. TriSheet is easliy the best spreadsheet program out there for ShiftOS.", 1024, 750, "file_skimmer;textpad", "Office")] + [AppscapeEntry("trisheet", "TriSheet", "Part of the trilogy of office applications for enhancement of your system. TriSheet is easliy the best spreadsheet program out there for ShiftOS.", 1024, 750, "file_skimmer;textpad", "Office")] [DefaultTitle("TriSheet")] [Launcher("TriSheet", false, null, "Office")] public partial class TriSheet : UserControl, IShiftOSWindow @@ -36,11 +36,10 @@ namespace ShiftOS.WinForms.Applications public void ResetFonts() { +#if YALL_GOT_ANY_MORE_OF_THEM_NONEXISTENT_CONTROLS fonts.Items.Clear(); - foreach (var font in FontFamily.Families) - { - fonts.Items.Add(font.Name); - } + fonts.Items.AddRange(FontFamily.Families.Select(f => f.Name)); +#endif UpdateUI(); } diff --git a/ShiftOS.WinForms/Applications/TriWrite.cs b/ShiftOS.WinForms/Applications/TriWrite.cs index 7712891..f565328 100644 --- a/ShiftOS.WinForms/Applications/TriWrite.cs +++ b/ShiftOS.WinForms/Applications/TriWrite.cs @@ -13,7 +13,7 @@ using ShiftOS.Engine; namespace ShiftOS.WinForms.Applications { [WinOpen("triwrite")] - [AppscapeEntry("TriWrite", "Part of the trilogy of office applications for enhancement of your system. TriWrite is easliy the best text editor out there for ShiftOS.", 1024, 750, "file_skimmer;textpad", "Office")] + [AppscapeEntry("triwrite", "TriWrite", "Part of the trilogy of office applications for enhancement of your system. TriWrite is easliy the best text editor out there for ShiftOS.", 1024, 750, "file_skimmer;textpad", "Office")] [DefaultTitle("TriWrite")] [Launcher("TriWrite", false, null, "Office")] public partial class TriWrite : UserControl, IShiftOSWindow diff --git a/ShiftOS.WinForms/Applications/VideoPlayer.cs b/ShiftOS.WinForms/Applications/VideoPlayer.cs index 29c318f..341df7e 100644 --- a/ShiftOS.WinForms/Applications/VideoPlayer.cs +++ b/ShiftOS.WinForms/Applications/VideoPlayer.cs @@ -12,7 +12,7 @@ using System.IO; namespace ShiftOS.WinForms.Applications { - [AppscapeEntry("Video Player", "Play .mp4 files or .wmv files as videos inside ShiftOS! Perfect for a shifted movie night.", 1524, 1000, "file_skimmer", "Entertainment")] + [AppscapeEntry("video_player", "Video Player", "Play .mp4 files or .wmv files as videos inside ShiftOS! Perfect for a shifted movie night.", 1524, 1000, "file_skimmer", "Entertainment")] [DefaultTitle("Video Player")] [Launcher("Video Player", false, null, "Entertainment")] [WinOpen("video_player")] diff --git a/ShiftOS.WinForms/Applications/WebBrowser.cs b/ShiftOS.WinForms/Applications/WebBrowser.cs index 751e7e2..4d04aab 100644 --- a/ShiftOS.WinForms/Applications/WebBrowser.cs +++ b/ShiftOS.WinForms/Applications/WebBrowser.cs @@ -12,7 +12,7 @@ using ShiftOS.Engine; namespace ShiftOS.WinForms.Applications { [WinOpen("web_browser")] - [AppscapeEntry("Web Browser", "We're going surfing on the Internet! This application allows you to break the bounds of the Digital Society and connect to the outer Internet inside ShiftOS.", + [AppscapeEntry("web_browser", "Web Browser", "We're going surfing on the Internet! This application allows you to break the bounds of the Digital Society and connect to the outer Internet inside ShiftOS.", 4096, 10000, "color_depth_24_bits", "Networking")] [Launcher("Web Browser", false, null, "Networking")] [DefaultTitle("Web Browser")] |
