From bf6997c71b733998b57b713ef3a72a2e46b2733f Mon Sep 17 00:00:00 2001 From: Ray Date: Sun, 23 Jun 2024 17:51:44 +0100 Subject: [PATCH] Upgraded to RyzStudio8 package Upgraded to .NET 8 --- .gitignore | 5 +- MainForm.Designer.cs | 719 +++++++++--------- MainForm.cs | 647 +++++++--------- MainForm.resx | 93 ++- MemoBoxForm.cs | 248 ++++++ MemoBoxForm.resx | 129 ++++ OptionsForm.cs | 395 +++++----- OptionsForm.resx | 83 +- Program.cs | 2 - RandomFileRunner.csproj | 13 +- References/RyzStudio.8.1.0.719.nupkg | Bin 0 -> 15340 bytes .../RyzStudio.Windows.Forms.8.1.0.719.nupkg | Bin 0 -> 61484 bytes References/RyzStudio3.dll | Bin 94720 -> 0 bytes build.bat | 4 +- skye.sln | 4 +- 15 files changed, 1433 insertions(+), 909 deletions(-) create mode 100644 MemoBoxForm.cs create mode 100644 MemoBoxForm.resx create mode 100644 References/RyzStudio.8.1.0.719.nupkg create mode 100644 References/RyzStudio.Windows.Forms.8.1.0.719.nupkg delete mode 100644 References/RyzStudio3.dll diff --git a/.gitignore b/.gitignore index f2b4073..81d4c76 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,7 @@ /bin /obj /*.user -/Properties/PublishProfiles/*.user \ No newline at end of file +/*/.vs +/*/bin +/*/obj +/*/*.user \ No newline at end of file diff --git a/MainForm.Designer.cs b/MainForm.Designer.cs index 2173a08..0e4c15d 100644 --- a/MainForm.Designer.cs +++ b/MainForm.Designer.cs @@ -29,424 +29,458 @@ namespace RandomFileRunner /// private void InitializeComponent() { - this.components = new System.ComponentModel.Container(); + components = new System.ComponentModel.Container(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); - this.pictureBox1 = new System.Windows.Forms.PictureBox(); - this.toolTip1 = new System.Windows.Forms.ToolTip(this.components); - this.button2 = new RyzStudio.Windows.ThemedForms.TButton(); - this.label9 = new System.Windows.Forms.Label(); - this.label2 = new System.Windows.Forms.Label(); - this.menuStrip1 = new System.Windows.Forms.MenuStrip(); - this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.newToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.openToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.toolStripMenuItem13 = new System.Windows.Forms.ToolStripSeparator(); - this.saveAsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.toolStripMenuItem15 = new System.Windows.Forms.ToolStripSeparator(); - this.exitToolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem(); - this.toolsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.optionsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.helpToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); - this.viewHelpToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); - this.toolStripMenuItem16 = new System.Windows.Forms.ToolStripSeparator(); - this.aboutToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); - this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components); - this.addDirectoryToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.addFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog(); - this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog(); - this.label1 = new System.Windows.Forms.Label(); - this.button1 = new RyzStudio.Windows.ThemedForms.TButton(); - this.tHorizontalSeparator2 = new RyzStudio.Windows.Forms.THorizontalSeparator(); - this.textBox1 = new RyzStudio.Windows.ThemedForms.TClearableTextBox(); - this.tHorizontalSeparator1 = new RyzStudio.Windows.Forms.THorizontalSeparator(); - this.button4 = new RyzStudio.Windows.ThemedForms.TButton(); - this.button3 = new RyzStudio.Windows.ThemedForms.TMenuButton(); - this.memoBox1 = new RyzStudio.Windows.ThemedForms.TMemoBox(); - this.button5 = new RyzStudio.Windows.ThemedForms.TButton(); - this.openFileDialog2 = new System.Windows.Forms.OpenFileDialog(); - this.saveFileDialog1 = new System.Windows.Forms.SaveFileDialog(); - ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); - this.menuStrip1.SuspendLayout(); - this.contextMenuStrip1.SuspendLayout(); - this.SuspendLayout(); + pictureBox1 = new System.Windows.Forms.PictureBox(); + toolTip1 = new System.Windows.Forms.ToolTip(components); + button2 = new RyzStudio.Windows.ThemedForms.ThButton(); + label9 = new System.Windows.Forms.Label(); + menuStrip1 = new System.Windows.Forms.MenuStrip(); + fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + newToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + openToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + toolStripMenuItem13 = new System.Windows.Forms.ToolStripSeparator(); + saveAsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + toolStripMenuItem15 = new System.Windows.Forms.ToolStripSeparator(); + exitToolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem(); + toolsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + optionsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + helpToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); + viewHelpToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); + toolStripMenuItem16 = new System.Windows.Forms.ToolStripSeparator(); + aboutToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); + label1 = new System.Windows.Forms.Label(); + button1 = new RyzStudio.Windows.ThemedForms.ThButton(); + tHorizontalSeparator2 = new RyzStudio.Windows.Forms.THorizontalSeparator(); + textBox1 = new RyzStudio.Windows.ThemedForms.ButtonTextBox.ThClearableTextBox(); + tHorizontalSeparator1 = new RyzStudio.Windows.Forms.THorizontalSeparator(); + button5 = new RyzStudio.Windows.ThemedForms.ThButton(); + openFileDialog2 = new System.Windows.Forms.OpenFileDialog(); + saveFileDialog1 = new System.Windows.Forms.SaveFileDialog(); + progressBar2 = new RyzStudio.Windows.ThemedForms.ThProgressBar(); + progressBar1 = new RyzStudio.Windows.ThemedForms.ThProgressBar(); + label3 = new System.Windows.Forms.Label(); + label4 = new System.Windows.Forms.Label(); + tHorizontalSeparator3 = new RyzStudio.Windows.Forms.THorizontalSeparator(); + label2 = new System.Windows.Forms.Label(); + textBox2 = new RyzStudio.Windows.ThemedForms.ThButtonTextBox(); + button4 = new RyzStudio.Windows.ThemedForms.ThButton(); + ((System.ComponentModel.ISupportInitialize)pictureBox1).BeginInit(); + menuStrip1.SuspendLayout(); + SuspendLayout(); // // pictureBox1 // - this.pictureBox1.ErrorImage = null; - this.pictureBox1.InitialImage = null; - this.pictureBox1.Location = new System.Drawing.Point(81, 79); - this.pictureBox1.Name = "pictureBox1"; - this.pictureBox1.Size = new System.Drawing.Size(33, 33); - this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; - this.pictureBox1.TabIndex = 15; - this.pictureBox1.TabStop = false; + pictureBox1.ErrorImage = null; + pictureBox1.InitialImage = null; + pictureBox1.Location = new System.Drawing.Point(289, 121); + pictureBox1.Name = "pictureBox1"; + pictureBox1.Size = new System.Drawing.Size(33, 33); + pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; + pictureBox1.TabIndex = 15; + pictureBox1.TabStop = false; // // button2 // - this.button2.ActiveImage = null; - this.button2.BackColor = System.Drawing.Color.Transparent; - this.button2.HoverImage = null; - this.button2.IdleImage = null; - this.button2.LabelText = "&Search"; - this.button2.Location = new System.Drawing.Point(127, 79); - this.button2.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10); - this.button2.Name = "button2"; - this.button2.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); - this.button2.Size = new System.Drawing.Size(149, 33); - this.button2.TabIndex = 1; - this.button2.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button2_MouseClick); + button2.AcceptButton = null; + button2.ActiveImage = null; + button2.BackColor = System.Drawing.Color.Transparent; + button2.EnableMenuOnClick = false; + button2.EnableReactiveVisual = true; + button2.HoverImage = null; + button2.IdleImage = null; + button2.LabelText = "&Search"; + button2.Location = new System.Drawing.Point(127, 121); + button2.Margin = new System.Windows.Forms.Padding(10, 0, 10, 10); + button2.Name = "button2"; + button2.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); + button2.Size = new System.Drawing.Size(149, 33); + button2.TabIndex = 1; + button2.TabStop = false; + button2.MouseClick += button2_MouseClick; // // label9 // - this.label9.Location = new System.Drawing.Point(13, 36); - this.label9.Name = "label9"; - this.label9.Size = new System.Drawing.Size(101, 33); - this.label9.TabIndex = 27; - this.label9.Text = "Search Filter"; - this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // label2 - // - this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.label2.Location = new System.Drawing.Point(289, 81); - this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(156, 31); - this.label2.TabIndex = 30; - this.label2.Text = "0"; - this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + label9.Location = new System.Drawing.Point(13, 78); + label9.Name = "label9"; + label9.Size = new System.Drawing.Size(101, 33); + label9.TabIndex = 27; + label9.Text = "Search Pattern"; + label9.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // menuStrip1 // - this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.fileToolStripMenuItem, - this.toolsToolStripMenuItem, - this.helpToolStripMenuItem1}); - this.menuStrip1.Location = new System.Drawing.Point(0, 0); - this.menuStrip1.Name = "menuStrip1"; - this.menuStrip1.Size = new System.Drawing.Size(464, 24); - this.menuStrip1.TabIndex = 32; + menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { fileToolStripMenuItem, toolsToolStripMenuItem, helpToolStripMenuItem1 }); + menuStrip1.Location = new System.Drawing.Point(0, 0); + menuStrip1.Name = "menuStrip1"; + menuStrip1.Size = new System.Drawing.Size(464, 24); + menuStrip1.TabIndex = 32; // // fileToolStripMenuItem // - this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.newToolStripMenuItem, - this.openToolStripMenuItem, - this.toolStripMenuItem13, - this.saveAsToolStripMenuItem, - this.toolStripMenuItem15, - this.exitToolStripMenuItem2}); - this.fileToolStripMenuItem.Name = "fileToolStripMenuItem"; - this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20); - this.fileToolStripMenuItem.Text = "&File"; + fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { newToolStripMenuItem, openToolStripMenuItem, toolStripMenuItem13, saveAsToolStripMenuItem, toolStripMenuItem15, exitToolStripMenuItem2 }); + fileToolStripMenuItem.Name = "fileToolStripMenuItem"; + fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20); + fileToolStripMenuItem.Text = "&File"; // // newToolStripMenuItem // - this.newToolStripMenuItem.Name = "newToolStripMenuItem"; - this.newToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.N))); - this.newToolStripMenuItem.Size = new System.Drawing.Size(146, 22); - this.newToolStripMenuItem.Text = "&New"; - this.newToolStripMenuItem.Click += new System.EventHandler(this.newToolStripMenuItem_Click); + newToolStripMenuItem.Name = "newToolStripMenuItem"; + newToolStripMenuItem.ShortcutKeys = System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.N; + newToolStripMenuItem.Size = new System.Drawing.Size(146, 22); + newToolStripMenuItem.Text = "&New"; + newToolStripMenuItem.Click += newToolStripMenuItem_Click; // // openToolStripMenuItem // - this.openToolStripMenuItem.Name = "openToolStripMenuItem"; - this.openToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O))); - this.openToolStripMenuItem.Size = new System.Drawing.Size(146, 22); - this.openToolStripMenuItem.Text = "&Open"; - this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click); + openToolStripMenuItem.Name = "openToolStripMenuItem"; + openToolStripMenuItem.ShortcutKeys = System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O; + openToolStripMenuItem.Size = new System.Drawing.Size(146, 22); + openToolStripMenuItem.Text = "&Open"; + openToolStripMenuItem.Click += openToolStripMenuItem_Click; // // toolStripMenuItem13 // - this.toolStripMenuItem13.Name = "toolStripMenuItem13"; - this.toolStripMenuItem13.Size = new System.Drawing.Size(143, 6); + toolStripMenuItem13.Name = "toolStripMenuItem13"; + toolStripMenuItem13.Size = new System.Drawing.Size(143, 6); // // saveAsToolStripMenuItem // - this.saveAsToolStripMenuItem.Name = "saveAsToolStripMenuItem"; - this.saveAsToolStripMenuItem.Size = new System.Drawing.Size(146, 22); - this.saveAsToolStripMenuItem.Text = "Save &As..."; - this.saveAsToolStripMenuItem.Click += new System.EventHandler(this.saveAsToolStripMenuItem_Click); + saveAsToolStripMenuItem.Name = "saveAsToolStripMenuItem"; + saveAsToolStripMenuItem.Size = new System.Drawing.Size(146, 22); + saveAsToolStripMenuItem.Text = "Save &As..."; + saveAsToolStripMenuItem.Click += saveAsToolStripMenuItem_Click; // // toolStripMenuItem15 // - this.toolStripMenuItem15.Name = "toolStripMenuItem15"; - this.toolStripMenuItem15.Size = new System.Drawing.Size(143, 6); + toolStripMenuItem15.Name = "toolStripMenuItem15"; + toolStripMenuItem15.Size = new System.Drawing.Size(143, 6); // // exitToolStripMenuItem2 // - this.exitToolStripMenuItem2.Name = "exitToolStripMenuItem2"; - this.exitToolStripMenuItem2.Size = new System.Drawing.Size(146, 22); - this.exitToolStripMenuItem2.Text = "E&xit"; - this.exitToolStripMenuItem2.Click += new System.EventHandler(this.exitToolStripMenuItem2_Click); + exitToolStripMenuItem2.Name = "exitToolStripMenuItem2"; + exitToolStripMenuItem2.Size = new System.Drawing.Size(146, 22); + exitToolStripMenuItem2.Text = "E&xit"; + exitToolStripMenuItem2.Click += exitToolStripMenuItem2_Click; // // toolsToolStripMenuItem // - this.toolsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.optionsToolStripMenuItem}); - this.toolsToolStripMenuItem.Name = "toolsToolStripMenuItem"; - this.toolsToolStripMenuItem.Size = new System.Drawing.Size(46, 20); - this.toolsToolStripMenuItem.Text = "&Tools"; + toolsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { optionsToolStripMenuItem }); + toolsToolStripMenuItem.Name = "toolsToolStripMenuItem"; + toolsToolStripMenuItem.Size = new System.Drawing.Size(46, 20); + toolsToolStripMenuItem.Text = "&Tools"; // // optionsToolStripMenuItem // - this.optionsToolStripMenuItem.Name = "optionsToolStripMenuItem"; - this.optionsToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.F12))); - this.optionsToolStripMenuItem.Size = new System.Drawing.Size(168, 22); - this.optionsToolStripMenuItem.Text = "&Options"; - this.optionsToolStripMenuItem.Click += new System.EventHandler(this.optionsToolStripMenuItem_Click); + optionsToolStripMenuItem.Name = "optionsToolStripMenuItem"; + optionsToolStripMenuItem.ShortcutKeys = System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.F12; + optionsToolStripMenuItem.Size = new System.Drawing.Size(168, 22); + optionsToolStripMenuItem.Text = "&Options"; + optionsToolStripMenuItem.Click += optionsToolStripMenuItem_Click; // // helpToolStripMenuItem1 // - this.helpToolStripMenuItem1.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.viewHelpToolStripMenuItem1, - this.toolStripMenuItem16, - this.aboutToolStripMenuItem1}); - this.helpToolStripMenuItem1.Name = "helpToolStripMenuItem1"; - this.helpToolStripMenuItem1.Size = new System.Drawing.Size(44, 20); - this.helpToolStripMenuItem1.Text = "&Help"; + helpToolStripMenuItem1.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { viewHelpToolStripMenuItem1, toolStripMenuItem16, aboutToolStripMenuItem1 }); + helpToolStripMenuItem1.Name = "helpToolStripMenuItem1"; + helpToolStripMenuItem1.Size = new System.Drawing.Size(44, 20); + helpToolStripMenuItem1.Text = "&Help"; // // viewHelpToolStripMenuItem1 // - this.viewHelpToolStripMenuItem1.Name = "viewHelpToolStripMenuItem1"; - this.viewHelpToolStripMenuItem1.ShortcutKeys = System.Windows.Forms.Keys.F1; - this.viewHelpToolStripMenuItem1.Size = new System.Drawing.Size(146, 22); - this.viewHelpToolStripMenuItem1.Text = "&View Help"; - this.viewHelpToolStripMenuItem1.Click += new System.EventHandler(this.viewHelpToolStripMenuItem1_Click); + viewHelpToolStripMenuItem1.Name = "viewHelpToolStripMenuItem1"; + viewHelpToolStripMenuItem1.ShortcutKeys = System.Windows.Forms.Keys.F1; + viewHelpToolStripMenuItem1.Size = new System.Drawing.Size(146, 22); + viewHelpToolStripMenuItem1.Text = "&View Help"; + viewHelpToolStripMenuItem1.Click += viewHelpToolStripMenuItem1_Click; // // toolStripMenuItem16 // - this.toolStripMenuItem16.Name = "toolStripMenuItem16"; - this.toolStripMenuItem16.Size = new System.Drawing.Size(143, 6); + toolStripMenuItem16.Name = "toolStripMenuItem16"; + toolStripMenuItem16.Size = new System.Drawing.Size(143, 6); // // aboutToolStripMenuItem1 // - this.aboutToolStripMenuItem1.Name = "aboutToolStripMenuItem1"; - this.aboutToolStripMenuItem1.Size = new System.Drawing.Size(146, 22); - this.aboutToolStripMenuItem1.Text = "&About"; - this.aboutToolStripMenuItem1.Click += new System.EventHandler(this.aboutToolStripMenuItem1_Click); - // - // contextMenuStrip1 - // - this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.addDirectoryToolStripMenuItem, - this.addFileToolStripMenuItem}); - this.contextMenuStrip1.Name = "contextMenuStrip1"; - this.contextMenuStrip1.Size = new System.Drawing.Size(148, 48); - // - // addDirectoryToolStripMenuItem - // - this.addDirectoryToolStripMenuItem.Name = "addDirectoryToolStripMenuItem"; - this.addDirectoryToolStripMenuItem.Size = new System.Drawing.Size(147, 22); - this.addDirectoryToolStripMenuItem.Text = "&Add Directory"; - this.addDirectoryToolStripMenuItem.Click += new System.EventHandler(this.addDirectoryToolStripMenuItem_Click); - // - // addFileToolStripMenuItem - // - this.addFileToolStripMenuItem.Name = "addFileToolStripMenuItem"; - this.addFileToolStripMenuItem.Size = new System.Drawing.Size(147, 22); - this.addFileToolStripMenuItem.Text = "Add &File"; - this.addFileToolStripMenuItem.Click += new System.EventHandler(this.addFileToolStripMenuItem_Click); - // - // folderBrowserDialog1 - // - this.folderBrowserDialog1.ShowNewFolderButton = false; - // - // openFileDialog1 - // - this.openFileDialog1.Filter = "All files (*.*)|*.*"; + aboutToolStripMenuItem1.Name = "aboutToolStripMenuItem1"; + aboutToolStripMenuItem1.Size = new System.Drawing.Size(146, 22); + aboutToolStripMenuItem1.Text = "&About"; + aboutToolStripMenuItem1.Click += aboutToolStripMenuItem1_Click; // // label1 // - this.label1.Location = new System.Drawing.Point(13, 154); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(101, 33); - this.label1.TabIndex = 40; - this.label1.Text = "Search Paths"; - this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + label1.Location = new System.Drawing.Point(13, 36); + label1.Name = "label1"; + label1.Size = new System.Drawing.Size(101, 33); + label1.TabIndex = 40; + label1.Text = "Search Path"; + label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // button1 // - this.button1.ActiveImage = null; - this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.button1.BackColor = System.Drawing.Color.Transparent; - this.button1.HoverImage = null; - this.button1.IdleImage = null; - this.button1.LabelText = "&Close"; - this.button1.Location = new System.Drawing.Point(296, 705); - this.button1.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10); - this.button1.Name = "button1"; - this.button1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); - this.button1.Size = new System.Drawing.Size(149, 37); - this.button1.TabIndex = 6; - this.button1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button1_MouseClick); + button1.AcceptButton = null; + button1.ActiveImage = null; + button1.Anchor = System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right; + button1.BackColor = System.Drawing.Color.Transparent; + button1.EnableMenuOnClick = false; + button1.EnableReactiveVisual = true; + button1.HoverImage = null; + button1.IdleImage = null; + button1.LabelText = "&Close"; + button1.Location = new System.Drawing.Point(296, 545); + button1.Margin = new System.Windows.Forms.Padding(10, 0, 10, 10); + button1.Name = "button1"; + button1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); + button1.Size = new System.Drawing.Size(149, 37); + button1.TabIndex = 6; + button1.TabStop = false; + button1.MouseClick += button1_MouseClick; // // tHorizontalSeparator2 // - this.tHorizontalSeparator2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.tHorizontalSeparator2.AutoScrollMargin = new System.Drawing.Size(0, 0); - this.tHorizontalSeparator2.AutoScrollMinSize = new System.Drawing.Size(0, 0); - this.tHorizontalSeparator2.BackColor = System.Drawing.Color.Transparent; - this.tHorizontalSeparator2.Location = new System.Drawing.Point(8, 673); - this.tHorizontalSeparator2.Margin = new System.Windows.Forms.Padding(5, 0, 5, 10); - this.tHorizontalSeparator2.MaximumSize = new System.Drawing.Size(5760, 22); - this.tHorizontalSeparator2.MinimumSize = new System.Drawing.Size(0, 22); - this.tHorizontalSeparator2.Name = "tHorizontalSeparator2"; - this.tHorizontalSeparator2.Padding = new System.Windows.Forms.Padding(0, 10, 0, 10); - this.tHorizontalSeparator2.Size = new System.Drawing.Size(448, 22); - this.tHorizontalSeparator2.TabIndex = 42; - this.tHorizontalSeparator2.TabStop = false; + tHorizontalSeparator2.Anchor = System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right; + tHorizontalSeparator2.AutoScrollMargin = new System.Drawing.Size(0, 0); + tHorizontalSeparator2.AutoScrollMinSize = new System.Drawing.Size(0, 0); + tHorizontalSeparator2.BackColor = System.Drawing.Color.Transparent; + tHorizontalSeparator2.Location = new System.Drawing.Point(8, 513); + tHorizontalSeparator2.Margin = new System.Windows.Forms.Padding(0, 10, 0, 0); + tHorizontalSeparator2.MaximumSize = new System.Drawing.Size(5760, 22); + tHorizontalSeparator2.MinimumSize = new System.Drawing.Size(0, 22); + tHorizontalSeparator2.Name = "tHorizontalSeparator2"; + tHorizontalSeparator2.Size = new System.Drawing.Size(448, 22); + tHorizontalSeparator2.TabIndex = 42; + tHorizontalSeparator2.TabStop = false; // // textBox1 // - this.textBox1.AcceptButton = null; - this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.textBox1.BackColor = System.Drawing.Color.Transparent; - this.textBox1.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point); - this.textBox1.HighlightImage = null; - this.textBox1.Location = new System.Drawing.Point(127, 36); - this.textBox1.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10); - this.textBox1.Name = "textBox1"; - this.textBox1.NormalImage = null; - this.textBox1.Padding = new System.Windows.Forms.Padding(10, 9, 9, 9); - this.textBox1.Size = new System.Drawing.Size(318, 34); - this.textBox1.TabIndex = 0; - this.textBox1.UseSystemPasswordChar = false; + textBox1.AcceptButton = null; + textBox1.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right; + textBox1.BackColor = System.Drawing.Color.Transparent; + textBox1.ClearedValue = ""; + textBox1.EnableReactiveVisual = true; + textBox1.Font = new System.Drawing.Font("Segoe UI", 9F); + textBox1.HighlightImage = (System.Drawing.Image)resources.GetObject("textBox1.HighlightImage"); + textBox1.Location = new System.Drawing.Point(127, 78); + textBox1.Margin = new System.Windows.Forms.Padding(10, 10, 10, 0); + textBox1.Name = "textBox1"; + textBox1.NormalImage = (System.Drawing.Image)resources.GetObject("textBox1.NormalImage"); + textBox1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); + textBox1.Size = new System.Drawing.Size(318, 32); + textBox1.TabIndex = 0; + textBox1.TabStop = false; + textBox1.UseSystemPasswordChar = false; // // tHorizontalSeparator1 // - this.tHorizontalSeparator1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.tHorizontalSeparator1.AutoScrollMargin = new System.Drawing.Size(0, 0); - this.tHorizontalSeparator1.AutoScrollMinSize = new System.Drawing.Size(0, 0); - this.tHorizontalSeparator1.BackColor = System.Drawing.Color.Transparent; - this.tHorizontalSeparator1.Location = new System.Drawing.Point(8, 122); - this.tHorizontalSeparator1.Margin = new System.Windows.Forms.Padding(5, 0, 5, 10); - this.tHorizontalSeparator1.MaximumSize = new System.Drawing.Size(5760, 22); - this.tHorizontalSeparator1.MinimumSize = new System.Drawing.Size(0, 22); - this.tHorizontalSeparator1.Name = "tHorizontalSeparator1"; - this.tHorizontalSeparator1.Padding = new System.Windows.Forms.Padding(0, 10, 0, 10); - this.tHorizontalSeparator1.Size = new System.Drawing.Size(448, 22); - this.tHorizontalSeparator1.TabIndex = 45; - this.tHorizontalSeparator1.TabStop = false; - // - // button4 - // - this.button4.ActiveImage = null; - this.button4.BackColor = System.Drawing.Color.Transparent; - this.button4.HoverImage = null; - this.button4.IdleImage = null; - this.button4.LabelText = "&Clear"; - this.button4.Location = new System.Drawing.Point(296, 154); - this.button4.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10); - this.button4.Name = "button4"; - this.button4.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); - this.button4.Size = new System.Drawing.Size(149, 33); - this.button4.TabIndex = 3; - this.button4.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button4_MouseClick); - // - // button3 - // - this.button3.ActiveImage = null; - this.button3.BackColor = System.Drawing.Color.Transparent; - this.button3.ContextMenuStrip = this.contextMenuStrip1; - this.button3.HoverImage = null; - this.button3.IdleImage = null; - this.button3.LabelText = "&Add"; - this.button3.Location = new System.Drawing.Point(127, 154); - this.button3.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10); - this.button3.Name = "button3"; - this.button3.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); - this.button3.Size = new System.Drawing.Size(149, 33); - this.button3.TabIndex = 2; - // - // memoBox1 - // - this.memoBox1.AllowDrop = true; - this.memoBox1.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.memoBox1.BackColor = System.Drawing.Color.Transparent; - this.memoBox1.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point); - this.memoBox1.Location = new System.Drawing.Point(13, 203); - this.memoBox1.Margin = new System.Windows.Forms.Padding(10, 6, 10, 6); - this.memoBox1.Name = "memoBox1"; - this.memoBox1.Padding = new System.Windows.Forms.Padding(10, 10, 3, 9); - this.memoBox1.ReadOnly = false; - this.memoBox1.Size = new System.Drawing.Size(432, 464); - this.memoBox1.TabIndex = 4; - this.memoBox1.DragDrop += new System.Windows.Forms.DragEventHandler(this.memoBox1_DragDrop); - this.memoBox1.DragOver += new System.Windows.Forms.DragEventHandler(this.memoBox1_DragOver); + tHorizontalSeparator1.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right; + tHorizontalSeparator1.AutoScrollMargin = new System.Drawing.Size(0, 0); + tHorizontalSeparator1.AutoScrollMinSize = new System.Drawing.Size(0, 0); + tHorizontalSeparator1.BackColor = System.Drawing.Color.Transparent; + tHorizontalSeparator1.Location = new System.Drawing.Point(8, 164); + tHorizontalSeparator1.Margin = new System.Windows.Forms.Padding(0, 10, 0, 0); + tHorizontalSeparator1.MaximumSize = new System.Drawing.Size(5760, 22); + tHorizontalSeparator1.MinimumSize = new System.Drawing.Size(0, 22); + tHorizontalSeparator1.Name = "tHorizontalSeparator1"; + tHorizontalSeparator1.Size = new System.Drawing.Size(448, 22); + tHorizontalSeparator1.TabIndex = 45; + tHorizontalSeparator1.TabStop = false; // // button5 // - this.button5.ActiveImage = null; - this.button5.BackColor = System.Drawing.Color.Transparent; - this.button5.HoverImage = null; - this.button5.IdleImage = null; - this.button5.LabelText = "&Run Next"; - this.button5.Location = new System.Drawing.Point(127, 705); - this.button5.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10); - this.button5.Name = "button5"; - this.button5.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); - this.button5.Size = new System.Drawing.Size(149, 37); - this.button5.TabIndex = 5; - this.button5.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button5_MouseClick); + button5.AcceptButton = null; + button5.ActiveImage = null; + button5.BackColor = System.Drawing.Color.Transparent; + button5.EnableMenuOnClick = false; + button5.EnableReactiveVisual = true; + button5.HoverImage = null; + button5.IdleImage = null; + button5.LabelText = "&Run Next"; + button5.Location = new System.Drawing.Point(127, 309); + button5.Margin = new System.Windows.Forms.Padding(10, 0, 10, 10); + button5.Name = "button5"; + button5.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); + button5.Size = new System.Drawing.Size(149, 33); + button5.TabIndex = 5; + button5.TabStop = false; + button5.MouseClick += button5_MouseClick; // // openFileDialog2 // - this.openFileDialog2.DefaultExt = "jsonfig"; - this.openFileDialog2.Filter = "Session files (*.jsonfig)|*.jsonfig"; + openFileDialog2.DefaultExt = "jsonfig"; + openFileDialog2.Filter = "Session files (*.jsonfig)|*.jsonfig"; // // saveFileDialog1 // - this.saveFileDialog1.DefaultExt = "jsonfig"; - this.saveFileDialog1.Filter = "Session files (*.jsonfig)|*.jsonfig"; + saveFileDialog1.DefaultExt = "jsonfig"; + saveFileDialog1.Filter = "Session files (*.jsonfig)|*.jsonfig"; + // + // progressBar2 + // + progressBar2.AcceptButton = null; + progressBar2.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right; + progressBar2.BackColor = System.Drawing.Color.Transparent; + progressBar2.BarColour = System.Drawing.Color.FromArgb(79, 193, 203); + progressBar2.BarTextColour = System.Drawing.Color.Black; + progressBar2.EnableReactiveVisual = false; + progressBar2.Font = new System.Drawing.Font("Segoe UI", 9F); + progressBar2.Location = new System.Drawing.Point(127, 215); + progressBar2.Margin = new System.Windows.Forms.Padding(10, 6, 10, 6); + progressBar2.Maximum = 100; + progressBar2.Minimum = 0; + progressBar2.Name = "progressBar2"; + progressBar2.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); + progressBar2.ProgressText = "50/100"; + progressBar2.ShowProgressText = true; + progressBar2.Size = new System.Drawing.Size(318, 20); + progressBar2.TabIndex = 46; + progressBar2.TabStop = false; + progressBar2.Value = 50; + // + // progressBar1 + // + progressBar1.AcceptButton = null; + progressBar1.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right; + progressBar1.BackColor = System.Drawing.Color.Transparent; + progressBar1.BarColour = System.Drawing.Color.FromArgb(79, 202, 130); + progressBar1.BarTextColour = System.Drawing.Color.Black; + progressBar1.EnableReactiveVisual = false; + progressBar1.Font = new System.Drawing.Font("Segoe UI", 9F); + progressBar1.Location = new System.Drawing.Point(127, 192); + progressBar1.Margin = new System.Windows.Forms.Padding(10, 6, 10, 6); + progressBar1.Maximum = 100; + progressBar1.Minimum = 0; + progressBar1.Name = "progressBar1"; + progressBar1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); + progressBar1.ProgressText = "50/100"; + progressBar1.ShowProgressText = true; + progressBar1.Size = new System.Drawing.Size(318, 20); + progressBar1.TabIndex = 47; + progressBar1.TabStop = false; + progressBar1.Value = 50; + // + // label3 + // + label3.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right; + label3.AutoEllipsis = true; + label3.Location = new System.Drawing.Point(127, 256); + label3.Margin = new System.Windows.Forms.Padding(0); + label3.Name = "label3"; + label3.Size = new System.Drawing.Size(318, 15); + label3.TabIndex = 49; + label3.Text = "label3"; + // + // label4 + // + label4.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right; + label4.Location = new System.Drawing.Point(127, 241); + label4.Margin = new System.Windows.Forms.Padding(0); + label4.Name = "label4"; + label4.Size = new System.Drawing.Size(318, 15); + label4.TabIndex = 48; + label4.Text = "label4"; + // + // tHorizontalSeparator3 + // + tHorizontalSeparator3.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right; + tHorizontalSeparator3.AutoScrollMargin = new System.Drawing.Size(0, 0); + tHorizontalSeparator3.AutoScrollMinSize = new System.Drawing.Size(0, 0); + tHorizontalSeparator3.BackColor = System.Drawing.Color.Transparent; + tHorizontalSeparator3.Location = new System.Drawing.Point(8, 281); + tHorizontalSeparator3.Margin = new System.Windows.Forms.Padding(0, 10, 0, 0); + tHorizontalSeparator3.MaximumSize = new System.Drawing.Size(5760, 22); + tHorizontalSeparator3.MinimumSize = new System.Drawing.Size(0, 22); + tHorizontalSeparator3.Name = "tHorizontalSeparator3"; + tHorizontalSeparator3.Size = new System.Drawing.Size(448, 22); + tHorizontalSeparator3.TabIndex = 50; + tHorizontalSeparator3.TabStop = false; + // + // label2 + // + label2.Location = new System.Drawing.Point(13, 192); + label2.Name = "label2"; + label2.Size = new System.Drawing.Size(101, 33); + label2.TabIndex = 51; + label2.Text = "Search Engine"; + label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // textBox2 + // + textBox2.AcceptButton = null; + textBox2.Anchor = System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right; + textBox2.BackColor = System.Drawing.Color.Transparent; + textBox2.EnableReactiveVisual = true; + textBox2.Font = new System.Drawing.Font("Segoe UI", 9F); + textBox2.HighlightImage = null; + textBox2.Location = new System.Drawing.Point(127, 36); + textBox2.Margin = new System.Windows.Forms.Padding(10, 10, 10, 0); + textBox2.Name = "textBox2"; + textBox2.NormalImage = null; + textBox2.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); + textBox2.Size = new System.Drawing.Size(318, 32); + textBox2.TabIndex = 52; + textBox2.TabStop = false; + textBox2.UseSystemPasswordChar = false; + textBox2.OnButtonClick += textBox2_OnButtonClick; + // + // button4 + // + button4.AcceptButton = null; + button4.ActiveImage = null; + button4.BackColor = System.Drawing.Color.Transparent; + button4.EnableMenuOnClick = false; + button4.EnableReactiveVisual = true; + button4.HoverImage = null; + button4.IdleImage = null; + button4.LabelText = "Save File &List"; + button4.Location = new System.Drawing.Point(296, 309); + button4.Margin = new System.Windows.Forms.Padding(10, 0, 10, 10); + button4.Name = "button4"; + button4.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); + button4.Size = new System.Drawing.Size(149, 33); + button4.TabIndex = 53; + button4.TabStop = false; + button4.MouseClick += button4_MouseClick; // // MainForm // - this.AllowDrop = true; - this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(250)))), ((int)(((byte)(250)))), ((int)(((byte)(250))))); - this.ClientSize = new System.Drawing.Size(464, 761); - this.Controls.Add(this.button5); - this.Controls.Add(this.memoBox1); - this.Controls.Add(this.button3); - this.Controls.Add(this.button4); - this.Controls.Add(this.tHorizontalSeparator1); - this.Controls.Add(this.textBox1); - this.Controls.Add(this.button2); - this.Controls.Add(this.tHorizontalSeparator2); - this.Controls.Add(this.button1); - this.Controls.Add(this.label1); - this.Controls.Add(this.menuStrip1); - this.Controls.Add(this.label2); - this.Controls.Add(this.label9); - this.Controls.Add(this.pictureBox1); - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.Name = "MainForm"; - this.Text = "Random File Runner"; - ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); - this.menuStrip1.ResumeLayout(false); - this.menuStrip1.PerformLayout(); - this.contextMenuStrip1.ResumeLayout(false); - this.ResumeLayout(false); - this.PerformLayout(); - + AllowDrop = true; + AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + BackColor = System.Drawing.Color.FromArgb(250, 250, 250); + ClientSize = new System.Drawing.Size(464, 601); + Controls.Add(button4); + Controls.Add(textBox2); + Controls.Add(label2); + Controls.Add(tHorizontalSeparator3); + Controls.Add(label3); + Controls.Add(label4); + Controls.Add(progressBar2); + Controls.Add(progressBar1); + Controls.Add(button5); + Controls.Add(tHorizontalSeparator1); + Controls.Add(textBox1); + Controls.Add(button2); + Controls.Add(tHorizontalSeparator2); + Controls.Add(button1); + Controls.Add(label1); + Controls.Add(menuStrip1); + Controls.Add(label9); + Controls.Add(pictureBox1); + Icon = (System.Drawing.Icon)resources.GetObject("$this.Icon"); + MinimumSize = new System.Drawing.Size(480, 480); + Name = "MainForm"; + Text = "Random File Runner"; + ((System.ComponentModel.ISupportInitialize)pictureBox1).EndInit(); + menuStrip1.ResumeLayout(false); + menuStrip1.PerformLayout(); + ResumeLayout(false); + PerformLayout(); } #endregion - private RyzStudio.Windows.ThemedForms.TButton button1; + private RyzStudio.Windows.ThemedForms.ThButton button1; private System.Windows.Forms.PictureBox pictureBox1; - private RyzStudio.Windows.ThemedForms.TButton button2; + private RyzStudio.Windows.ThemedForms.ThButton button2; private System.Windows.Forms.ToolTip toolTip1; private System.Windows.Forms.Label label9; - private RyzStudio.Windows.ThemedForms.TButton button4; - private System.Windows.Forms.Label label2; private System.Windows.Forms.MenuStrip menuStrip1; private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem newToolStripMenuItem; @@ -461,20 +495,21 @@ namespace RandomFileRunner private System.Windows.Forms.ToolStripMenuItem viewHelpToolStripMenuItem1; private System.Windows.Forms.ToolStripSeparator toolStripMenuItem16; private System.Windows.Forms.ToolStripMenuItem aboutToolStripMenuItem1; - private RyzStudio.Windows.ThemedForms.TMemoBox memoBox1; - private System.Windows.Forms.ContextMenuStrip contextMenuStrip1; - private System.Windows.Forms.ToolStripMenuItem addDirectoryToolStripMenuItem; - private System.Windows.Forms.ToolStripMenuItem addFileToolStripMenuItem; - private System.Windows.Forms.FolderBrowserDialog folderBrowserDialog1; - private System.Windows.Forms.OpenFileDialog openFileDialog1; private RyzStudio.Windows.Forms.THorizontalSeparator tHorizontalSeparator1; private System.Windows.Forms.Label label1; private RyzStudio.Windows.Forms.THorizontalSeparator tHorizontalSeparator2; - private RyzStudio.Windows.ThemedForms.TClearableTextBox textBox1; - private RyzStudio.Windows.ThemedForms.TMenuButton button3; - private RyzStudio.Windows.ThemedForms.TButton button5; + private RyzStudio.Windows.ThemedForms.ButtonTextBox.ThClearableTextBox textBox1; + private RyzStudio.Windows.ThemedForms.ThButton button5; private System.Windows.Forms.OpenFileDialog openFileDialog2; private System.Windows.Forms.SaveFileDialog saveFileDialog1; + private RyzStudio.Windows.ThemedForms.ThProgressBar progressBar2; + private RyzStudio.Windows.ThemedForms.ThProgressBar progressBar1; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.Label label4; + private RyzStudio.Windows.Forms.THorizontalSeparator tHorizontalSeparator3; + private System.Windows.Forms.Label label2; + private RyzStudio.Windows.ThemedForms.ThButtonTextBox textBox2; + private RyzStudio.Windows.ThemedForms.ThButton button4; } } diff --git a/MainForm.cs b/MainForm.cs index f14fe13..c767755 100644 --- a/MainForm.cs +++ b/MainForm.cs @@ -1,65 +1,67 @@ -using RyzStudio.IO; -using RyzStudio.Windows.Forms; -using System; +using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.IO; -using System.Runtime.InteropServices; +using System.Linq; using System.Text.Json; using System.Threading; using System.Threading.Tasks; using System.Windows.Forms; +using RyzStudio.IO; +using RyzStudio.Runtime.InteropServices; +using RyzStudio.Windows.Forms; +using Application = System.Windows.Forms.Application; namespace RandomFileRunner { public partial class MainForm : Form { - [DllImport("user32.dll")] - protected static extern bool RegisterHotKey(IntPtr hWnd, int id, int fsModifiers, int vk); + private readonly Random _randy; + private readonly FileSearcher _fileSearcher; + private CancellationTokenSource _cancellationToken = new CancellationTokenSource(); - [DllImport("user32.dll")] - protected static extern bool UnregisterHotKey(IntPtr hWnd, int id); + private bool _isBusy = false; - //protected const int MOD_NONE = 0x0000; - //protected const int MOD_ALT = 0x1; - //protected const int MOD_CONTROL = 0x2; - //protected const int MOD_SHIFT = 0x4; - //protected const int MOD_WIN = 0x8; - protected const int WM_HOTKEY = 0x312; - protected const int WM_QUERYENDSESSION = 0x0011; - - - protected readonly Random randy = new Random(); - protected CancellationTokenSource cancellationToken = new CancellationTokenSource(); - - protected OptionsForm optionsForm = null; - protected bool isBusy = false; - protected bool requestCancel = false; - - protected List foundFiles = null; - protected Process currentProcess = null; + private List _searchPaths = new List(); + private List _foundFiles = new List(); + private Process _currentProcess = null; public MainForm() { InitializeComponent(); - textBox1.Text = "*.*"; - memoBox1.TextBox.WordWrap = false; + textBox2.SetIcon("search"); + textBox2.TextBox.ReadOnly = true; + + _randy = new Random(); + _fileSearcher = new FileSearcher(); + _fileSearcher.OnDirectoryFound += fileSearcher_OnDirectoryFound; + _fileSearcher.OnFileFound += fileSearcher_OnFileFound; + _fileSearcher.OnSearchCompleted += fileSearcher_OnSearchCompleted; + } + + protected override void OnLoad(EventArgs e) + { + base.OnLoad(e); + + this.ClearSession(); } protected async override void OnShown(EventArgs e) { base.OnShown(e); - string[] commandLineArgs = Environment.GetCommandLineArgs(); + var args = RyzStudio.Windows.Forms.Application.GetCommandLine(); - string jsonfigFilename = null; - if (string.IsNullOrWhiteSpace(jsonfigFilename)) jsonfigFilename = ParseOpenFile_FromCMD(commandLineArgs); - if (string.IsNullOrWhiteSpace(jsonfigFilename)) jsonfigFilename = Path.ChangeExtension(Application.ExecutablePath, "jsonfig"); + string jsonfigFilename = args.Where(x => (x.Key.Equals("o") || x.Key.Equals("open"))).Select(x => x.Value).FirstOrDefault(); + if (string.IsNullOrWhiteSpace(jsonfigFilename)) + { + jsonfigFilename = Path.ChangeExtension(Application.ExecutablePath, "jsonfig"); + } - if (!string.IsNullOrWhiteSpace(jsonfigFilename) && File.Exists(jsonfigFilename)) + if (!string.IsNullOrWhiteSpace(jsonfigFilename) && System.IO.File.Exists(jsonfigFilename)) { await LoadSessionFile(jsonfigFilename); } @@ -75,15 +77,18 @@ namespace RandomFileRunner return; } - if (this.CurrentSession.ClosePrevOnNext) CloseCurrentProcess(currentProcess); + if (this.CurrentSession.ClosePrevOnNext) + { + CloseCurrentProcess(_currentProcess); + } if (this.CurrentSession.NextHotKey != null) { if (this.CurrentSession.NextHotKey.KeyCode != Keys.None) { -//#if !DEBUG - UnregisterHotKey((IntPtr)Handle, 1); -//#endif + //#if !DEBUG + User32.UnregisterHotKey((IntPtr)Handle, 1); + //#endif } } } @@ -92,8 +97,11 @@ namespace RandomFileRunner { switch (m.Msg) { - case WM_HOTKEY: - if (m.WParam.ToInt32() == 1) button5_MouseClick(null, null); + case User32.WM_HOTKEY: + if (m.WParam.ToInt32() == 1) + { + button5_MouseClick(null, null); + } break; //case WM_QUERYENDSESSION: @@ -102,7 +110,8 @@ namespace RandomFileRunner // Application.Exit(); // break; - default: break; + default: + break; } base.WndProc(ref m); @@ -111,40 +120,34 @@ namespace RandomFileRunner public bool IsBusy { - get => isBusy; + get => _isBusy; set { - isBusy = value; + _isBusy = value; - ThreadControl.SetValue(pictureBox1, (isBusy ? UIcon.GetImage("loading_block") : null)); - ThreadControl.SetEnable(textBox1, !isBusy); - //ThreadControl.SetEnable(button2, !isBusy); - button2.LabelText = (isBusy? "&Cancel" : "&Search"); - ThreadControl.SetEnable(button3, !isBusy); - ThreadControl.SetEnable(button4, !isBusy); - ThreadControl.SetEnable(memoBox1, !isBusy); - ThreadControl.SetEnable(button5, !isBusy); - //ThreadControl.SetEnable(button1, !isBusy); + UIControl.SetValue(pictureBox1, (_isBusy ? UIResource.loading_block : null)); + UIControl.SetEnable(textBox1, !_isBusy); + button2.LabelText = (_isBusy ? "&Cancel" : "&Search"); + UIControl.SetEnable(button5, !_isBusy); + UIControl.SetEnable(button4, !_isBusy); } } public AppSession CurrentSession { get; set; } = new AppSession(); - - protected bool SearchDirecory_OnFound(string file, ulong searchCount, int searchQueue) + public List SearchPaths { - if (!string.IsNullOrWhiteSpace(file)) + get => _searchPaths; + set { - foundFiles.Add(file); + _searchPaths = value; + + textBox2.Text = string.Join(", ", _searchPaths.ToArray()); } - - //ThreadControl.SetText(label2, foundFiles.Count.ToString()); - ThreadControl.SetText(label2, foundFiles.Count.ToString("#,#", System.Globalization.CultureInfo.CurrentCulture) + Environment.NewLine + searchQueue.ToString("#,#", System.Globalization.CultureInfo.CurrentCulture)); - - return true; } + #region Main Menu /// /// New @@ -155,9 +158,15 @@ namespace RandomFileRunner { await Task.Run(() => { - if (this.IsBusy) return; + if (this.IsBusy) + { + return; + } - if (this.CurrentSession.ClosePrevOnNext) CloseCurrentProcess(currentProcess); + if (this.CurrentSession.ClosePrevOnNext) + { + CloseCurrentProcess(_currentProcess); + } ClearSession(); }); @@ -170,7 +179,10 @@ namespace RandomFileRunner /// private async void openToolStripMenuItem_Click(object sender, EventArgs e) { - if (this.IsBusy) return; + if (this.IsBusy) + { + return; + } if (openFileDialog2.ShowDialog() == DialogResult.OK) { @@ -185,7 +197,14 @@ namespace RandomFileRunner /// private async void saveAsToolStripMenuItem_Click(object sender, EventArgs e) { - if (this.IsBusy) return; + if (this.IsBusy) + { + return; + } + + saveFileDialog1.Title = "Save session"; + saveFileDialog1.Filter = "Session files (*.jsonfig)|*.jsonfig"; + saveFileDialog1.DefaultExt = "jsonfig"; if (saveFileDialog1.ShowDialog() == DialogResult.OK) { @@ -210,9 +229,12 @@ namespace RandomFileRunner /// private void optionsToolStripMenuItem_Click(object sender, EventArgs e) { - if (this.IsBusy) return; + if (this.IsBusy) + { + return; + } - if (optionsForm == null) optionsForm = new OptionsForm(this.CurrentSession); + var optionsForm = new OptionsForm(this.CurrentSession); if (optionsForm.ShowDialog() == DialogResult.OK) { this.CurrentSession = optionsForm.Session; @@ -228,18 +250,7 @@ namespace RandomFileRunner /// private void viewHelpToolStripMenuItem1_Click(object sender, EventArgs e) { - try - { - System.Diagnostics.Process.Start(new ProcessStartInfo() - { - FileName = AppResource.AppHelpURL, - UseShellExecute = true - }); - } - catch - { - // do nothing - } + RyzStudio.Diagnostics.Process.Execute(AppResource.AppHelpURL); } /// @@ -252,6 +263,65 @@ namespace RandomFileRunner MessageBox.Show(Application.ProductName + " v" + Application.ProductVersion, "About", MessageBoxButtons.OK, MessageBoxIcon.Information); } + #endregion + + #region Search Engine + + private async Task fileSearcher_OnFileFound(FileSearcher sender, string searchPath, string fileName) + { + await Task.Run(() => + { + _foundFiles.Add(fileName); + + UIControl.SetText(label3, Path.GetFileName(fileName)); + + progressBar2.Maximum = (sender.FileCount + sender.NoAccessFileCount); + progressBar2.Value = sender.FileCount; + }); + } + + private async Task fileSearcher_OnDirectoryFound(FileSearcher sender, string searchPath, string directoryName) + { + await Task.Run(() => + { + UIControl.SetText(label4, Path.GetFileName(directoryName)); + + progressBar1.Maximum = sender.DirectoryCount; + progressBar1.Value = sender.BufferLevel; + }); + } + + private async Task fileSearcher_OnSearchCompleted(FileSearcher sender, TimeSpan elapsedTime) + { + await Task.Run(() => + { + UIControl.SetText(label4, $"Done in {Math.Floor(elapsedTime.TotalMinutes)}m {elapsedTime.Seconds}s"); + UIControl.SetText(label3, ((_foundFiles.Count <= 0) ? "0" : _foundFiles.Count.ToString("#,#", System.Globalization.CultureInfo.CurrentCulture)) + " File" + ((_foundFiles.Count == 1) ? "" : "s") + " Found"); + + progressBar1.Value = sender.BufferLevel; + progressBar2.Value = sender.FileCount; + }); + } + + #endregion + + + private void textBox2_OnButtonClick(object sender, EventArgs e) + { + if (this.IsBusy) + { + return; + } + + var form = new MemoBoxForm(); + + form.Lines = SearchPaths; + + if (form.ShowDialog() == DialogResult.OK) + { + SearchPaths = form.Lines; + } + } /// /// Search @@ -260,138 +330,61 @@ namespace RandomFileRunner /// private async void button2_MouseClick(object sender, MouseEventArgs e) { - await Task.Run(async () => + if (this.IsBusy) { - if (this.IsBusy) - { - requestCancel = true; - button2.LabelText = "&Cancelling..."; - cancellationToken.Cancel(); + button2.LabelText = "&Cancelling..."; + _cancellationToken.Cancel(); - return; - } - - this.IsBusy = true; - requestCancel = false; - - foundFiles = new List(); - cancellationToken = new CancellationTokenSource(); - currentProcess = null; - - if (!string.IsNullOrWhiteSpace(memoBox1.Text)) - { - string[] itemList = memoBox1.Text?.Trim().Split('\n'); - for (int i = 0; i < itemList.Length; i++) - { - if (string.IsNullOrWhiteSpace(itemList[i])) continue; - if (requestCancel) break; - - string item = itemList[i]?.Trim(); - - if (File.Exists(item)) - { - if (AccessibleDirectory.IsFileAccessible(item)) - { - foundFiles.Add(item); - ThreadControl.SetText(label2, foundFiles.Count.ToString()); - - continue; - } - } - - if (Directory.Exists(item)) - { - await AccessibleDirectory.GetFilesAsync(item, textBox1.Text, this.CurrentSession.SearchTopDirectoryOnly, SearchDirecory_OnFound, cancellationToken.Token); - - ThreadControl.SetText(label2, foundFiles.Count.ToString()); - - continue; - } - } - } - - ThreadControl.SetText(label2, ((foundFiles.Count <= 0) ? "0" :foundFiles.Count.ToString("#,#", System.Globalization.CultureInfo.CurrentCulture)) + " File" + ((foundFiles.Count == 1) ? "" : "s") + " Found"); - - this.IsBusy = false; - requestCancel = false; - }); - } - - /// - /// Add directory - /// - /// - /// - private void addDirectoryToolStripMenuItem_Click(object sender, EventArgs e) - { - if (this.IsBusy) return; - - if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) - { - AddSearchItem(folderBrowserDialog1.SelectedPath); - } - } - - /// - /// Add file - /// - /// - /// - private void addFileToolStripMenuItem_Click(object sender, EventArgs e) - { - if (this.IsBusy) return; - - if (openFileDialog1.ShowDialog() == DialogResult.OK) - { - AddSearchItem(openFileDialog1.FileName); - } - } - - /// - /// Clear - /// - /// - /// - private void button4_MouseClick(object sender, MouseEventArgs e) - { - if (this.IsBusy) return; - - memoBox1.Text = string.Empty; - } - - private void memoBox1_DragOver(object sender, DragEventArgs e) - { - if (e.Data.GetDataPresent(DataFormats.FileDrop)) - { - if (this.IsBusy) - { - e.Effect = DragDropEffects.None; - } - else - { - e.Effect = DragDropEffects.Copy; - } - } - else - { - e.Effect = DragDropEffects.None; - } - } - - private void memoBox1_DragDrop(object sender, DragEventArgs e) - { - if (this.IsBusy) return; - - string[] fileList = e.Data.GetData(DataFormats.FileDrop) as string[]; - if (fileList == null) - { return; } - foreach (string item in fileList) + this.IsBusy = true; + + progressBar1.ShowProgressText = true; + progressBar2.ShowProgressText = true; + + _foundFiles = new List(); + _cancellationToken = new CancellationTokenSource(); + _currentProcess = null; + + _fileSearcher.FileSearchPattern = textBox1.Text; + _fileSearcher.SearchPath = new List(); + + await Task.Run(() => { - AddSearchItem(item); + foreach (var item in SearchPaths) + { + if (_cancellationToken.IsCancellationRequested) + { + break; + } + + if (System.IO.File.Exists(item)) + { + _foundFiles.Add(item); + + continue; + } + + if (System.IO.Directory.Exists(item)) + { + _fileSearcher.SearchPath.Add(item); + + continue; + } + } + + UIControl.SetText(label3, ((_foundFiles.Count <= 0) ? "0" : _foundFiles.Count.ToString("#,#", System.Globalization.CultureInfo.CurrentCulture)) + " File" + ((_foundFiles.Count == 1) ? "" : "s") + " Found"); + }); + + if (_fileSearcher.SearchPath.Count > 0) + { + await _fileSearcher.Search(_cancellationToken.Token); } + + this.IsBusy = false; + + _cancellationToken = new CancellationTokenSource(); } /// @@ -401,24 +394,37 @@ namespace RandomFileRunner /// private async void button5_MouseClick(object sender, MouseEventArgs e) { + if (this.IsBusy) + { + return; + } + + if (_foundFiles.Count <= 0) + { + return; + } + await Task.Run(() => { - if (this.IsBusy) return; - if (foundFiles.Count <= 0) return; - //this.IsBusy = true; - if (this.CurrentSession == null) this.CurrentSession = new AppSession(); + if (this.CurrentSession == null) + { + this.CurrentSession = new AppSession(); + } - if (this.CurrentSession.ClosePrevOnNext) CloseCurrentProcess(currentProcess); + if (this.CurrentSession.ClosePrevOnNext) + { + CloseCurrentProcess(_currentProcess); + } string filename = null; // retry 8 times for (int i = 0; i < this.CurrentSession.RetryOnError; i++) { - filename = foundFiles[randy.Next(0, (foundFiles.Count - 1))]; - if (File.Exists(filename)) + filename = _foundFiles[_randy.Next(0, (_foundFiles.Count - 1))]; + if (System.IO.File.Exists(filename)) { continue; } @@ -428,23 +434,47 @@ namespace RandomFileRunner if (!string.IsNullOrWhiteSpace(filename)) { - ProcessStartInfo psi = new ProcessStartInfo(filename); - psi.UseShellExecute = true; - - try - { - currentProcess = Process.Start(psi); - } - catch (Exception) - { - // do nothing - } + RyzStudio.Diagnostics.Process.Execute(filename); } //this.IsBusy = false; }); } + /// + /// Save File List + /// + /// + /// + private async void button4_MouseClick(object sender, MouseEventArgs e) + { + if (this.IsBusy) + { + return; + } + + if (_foundFiles.Count <= 0) + { + return; + } + + saveFileDialog1.Title = "Save File List"; + saveFileDialog1.Filter = "Text files (*.txt)|*.txt"; + saveFileDialog1.DefaultExt = "txt"; + + if (saveFileDialog1.ShowDialog() == DialogResult.OK) + { + try + { + await System.IO.File.WriteAllTextAsync(saveFileDialog1.FileName, string.Join(Environment.NewLine, _foundFiles.ToArray())); + } + catch (Exception exc) + { + MessageBox.Show(exc.Message, "Save File List"); + } + } + } + /// /// Close /// @@ -456,24 +486,16 @@ namespace RandomFileRunner } - protected void AddSearchItem(string line) - { - memoBox1.Text = memoBox1.Text.Trim(); - - // above line-break - if (!string.IsNullOrWhiteSpace(memoBox1.Text)) memoBox1.Text += Environment.NewLine; - - memoBox1.Text += line + Environment.NewLine; - } - private void CloseCurrentProcess(Process p) { - if (p == null) return; + if (p == null) + { + return; + } try { p.CloseMainWindow(); - //p.Close(); } catch (Exception) { @@ -483,166 +505,83 @@ namespace RandomFileRunner private void InvalidateHotKey() { -//#if !DEBUG - if (this.InvokeRequired) + //#if !DEBUG + UIControl.Invoke(this, (x) => { - this.Invoke(new MethodInvoker(() => - { - UnregisterHotKey((IntPtr)Handle, 1); - })); - } - else - { - UnregisterHotKey((IntPtr)Handle, 1); - } -//#endif + User32.UnregisterHotKey((IntPtr)Handle, 1); + }); + //#endif if (this.CurrentSession.NextHotKey != null) { if (this.CurrentSession.NextHotKey.KeyCode != Keys.None) { -//#if !DEBUG - if (this.InvokeRequired) + //#if !DEBUG + UIControl.Invoke(this, (x) => { - this.Invoke(new MethodInvoker(() => - { - RegisterHotKey((IntPtr)Handle, 1, this.CurrentSession.NextHotKey.ModifierCode, this.CurrentSession.NextHotKey.Key); - })); - } - else - { - RegisterHotKey((IntPtr)Handle, 1, this.CurrentSession.NextHotKey.ModifierCode, this.CurrentSession.NextHotKey.Key); - } -//#endif + User32.RegisterHotKey((IntPtr)Handle, 1, this.CurrentSession.NextHotKey.ModifierCode, this.CurrentSession.NextHotKey.Key); + }); + //#endif } } } private void ClearSession() { - foundFiles = new List(); - currentProcess = null; + _foundFiles = new List(); + _currentProcess = null; + textBox1.Text = "*.*"; - ThreadControl.SetText(label2, "0"); - memoBox1.Text = string.Empty; + + progressBar1.Clear(0, 0, 0); + progressBar2.Clear(0, 0, 0); + + UIControl.SetText(label4, ""); + UIControl.SetText(label3, ""); } protected async Task LoadSessionFile(string filename) { await Task.Run(() => { - if (string.IsNullOrWhiteSpace(filename)) return; - if (!File.Exists(filename)) return; - - string sourceCode = null; - - try - { - sourceCode = File.ReadAllText(filename); - } - catch (Exception exc) - { - MessageBox.Show(exc.Message, "Load session"); - return; - } - - if (string.IsNullOrWhiteSpace(sourceCode)) - { - return; - } - - // load options - var options = new JsonSerializerOptions(); - //options.Converters.Add(new JsonPointConverter()); - //options.Converters.Add(new JsonSizeConverter()); - - try - { - this.CurrentSession = JsonSerializer.Deserialize(sourceCode, options); - } - catch (Exception exc) - { - MessageBox.Show("Unable to read session", "Load session"); - return; - } - - if (this.CurrentSession == null) this.CurrentSession = new AppSession(); + this.CurrentSession = RyzStudio.Text.Json.JsonSerialiser.DeserialiseFile(filename) ?? new AppSession(); ClearSession(); textBox1.Text = (string.IsNullOrWhiteSpace(this.CurrentSession.SearchFilePattern) ? "*" : this.CurrentSession.SearchFilePattern?.Trim()); - if (this.CurrentSession.SearchItems != null) - { - foreach (string item in this.CurrentSession.SearchItems) - { - AddSearchItem(item); - } - } + SearchPaths = this.CurrentSession?.SearchItems ?? new List(); // hotkey InvalidateHotKey(); }); } - protected string ParseOpenFile_FromCMD(string[] args) - { - if (args.Length <= 1) - { - return null; - } - - int i = 1; - while (true) - { - if (i > (args.Length - 1)) - { - break; - } - - switch (args[i].Trim().ToLower()) - { - case "-o": - case "-open": - if ((i + 1) > (args.Length - 1)) break; - - string openFilename = args[(i + 1)]; - if (string.IsNullOrWhiteSpace(openFilename)) break; - if (!File.Exists(openFilename)) break; - - return openFilename; - - i++; - break; - } - - i++; - } - - return null; - } - protected async Task SaveSessionFile(string filename) { + if (string.IsNullOrWhiteSpace(filename)) + { + return; + } + + if (this.CurrentSession == null) + { + this.CurrentSession = new AppSession(); + } + await Task.Run(() => { - if (string.IsNullOrWhiteSpace(filename)) return; - - if (this.CurrentSession == null) this.CurrentSession = new AppSession(); this.CurrentSession.SearchFilePattern = textBox1.Text; this.CurrentSession.SearchItems = new List(); - if (!string.IsNullOrWhiteSpace(memoBox1.Text)) + foreach (var item in SearchPaths) { - foreach (string item in memoBox1.Text?.Trim().Split('\n')) + if (string.IsNullOrWhiteSpace(item)) { - if (string.IsNullOrWhiteSpace(item)) - { - continue; - } - - this.CurrentSession.SearchItems.Add(item?.Trim()); + continue; } + + this.CurrentSession.SearchItems.Add(item.Trim()); } string sourceCode = null; @@ -659,7 +598,7 @@ namespace RandomFileRunner try { - File.WriteAllText(filename, sourceCode); + System.IO.File.WriteAllText(filename, sourceCode); } catch (Exception exc) { @@ -670,4 +609,4 @@ namespace RandomFileRunner } } -} +} \ No newline at end of file diff --git a/MainForm.resx b/MainForm.resx index 493f7a2..765abba 100644 --- a/MainForm.resx +++ b/MainForm.resx @@ -1,4 +1,64 @@ - + + + @@ -63,15 +123,27 @@ 716, 17 - - 831, 17 - - - 986, 17 - - - 1155, 17 - + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wQAADsEBuJFr7QAAAN5JREFUOE/tUzsKwkAUXLCyFMHjeIvdB4Gk8ALamU4rsbLaTWz0AOYGOYMewTqe + QLEQnZc8WRMSsBYHhrzPzJBin2pC60PPGLs3xl3Bp5DrHe9E1g2tHUH8QMjKmGReketyZkRWh9abfhTZ + YRimI4jWRPYSBMngkzzjHWtYyx6xK4X0Anz/7rcsxM4BdoxBTuTOqCdEaUyU6DrTuNqxxuXsEXsFDLfg + UdpOsIa10nr8A34p4CRtJ1jTGoC3PsPiBi78ETXplqzBwU3F5sHHgWWGJ3rHt+3tg+Uu84ek1AsYYd8q + EsfwCwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wQAADsEBuJFr7QAAANFJREFUOE/tkzEKAjEURANWliJ4HG+h9l5AO7fTSjyCxWpCIBB2b+AZ9AjW6wlc + LGSdWb9Elw1YiwOP/Pw/E1Ikqqksyzpa670x5goqgfWOM7HFhfAE5jvWNdYFkZq9sdg+laZp13vfBwOY + NjBfnHO9d9jjjB56mZG4UhgW4HXdbykkXl97iMYBnFFPrbUJGDVIOKOHXmYk/hSaW3CUbVT00CvboP8B + v3TASbZR0RM7YA5KsAT1J2phBUq8wpnEgvg5MMwxvGFte/uVzPLwkZR6AInAKK6aICfTAAAAAElFTkSu + QmCC + + 1155, 17 @@ -81,7 +153,6 @@ 52 - AAABAAQAMDAAAAEAIACoJQAARgAAACAgAAABACAAqBAAAO4lAAAYGAAAAQAgAIgJAACWNgAAEBAAAAEA diff --git a/MemoBoxForm.cs b/MemoBoxForm.cs new file mode 100644 index 0000000..9b94c33 --- /dev/null +++ b/MemoBoxForm.cs @@ -0,0 +1,248 @@ +using System; +using System.Collections.Generic; +using System.Windows.Forms; +using RyzStudio.Windows.ThemedForms; + +namespace RandomFileRunner +{ + public class MemoBoxForm : Form + { + private ThButton button1; + private ThMemoBox memoBox1; + private ThButton button3; + private ThButton button4; + private ContextMenuStrip contextMenuStrip1; + private System.ComponentModel.IContainer components; + private ToolStripMenuItem addDirectoryToolStripMenuItem; + private ToolStripMenuItem addFileToolStripMenuItem; + private FolderBrowserDialog folderBrowserDialog1; + private OpenFileDialog openFileDialog1; + private RyzStudio.Windows.Forms.THorizontalSeparator tHorizontalSeparator1; + + + public MemoBoxForm() : base() + { + InitializeComponent(); + + memoBox1.TextBox.WordWrap = false; + } + + private void InitializeComponent() + { + components = new System.ComponentModel.Container(); + button1 = new ThButton(); + tHorizontalSeparator1 = new RyzStudio.Windows.Forms.THorizontalSeparator(); + memoBox1 = new ThMemoBox(); + button3 = new ThButton(); + contextMenuStrip1 = new ContextMenuStrip(components); + addDirectoryToolStripMenuItem = new ToolStripMenuItem(); + addFileToolStripMenuItem = new ToolStripMenuItem(); + button4 = new ThButton(); + folderBrowserDialog1 = new FolderBrowserDialog(); + openFileDialog1 = new OpenFileDialog(); + contextMenuStrip1.SuspendLayout(); + SuspendLayout(); + // + // button1 + // + button1.AcceptButton = null; + button1.ActiveImage = null; + button1.Anchor = AnchorStyles.Bottom | AnchorStyles.Right; + button1.BackColor = System.Drawing.Color.Transparent; + button1.EnableMenuOnClick = false; + button1.EnableReactiveVisual = true; + button1.HoverImage = null; + button1.IdleImage = null; + button1.LabelText = "&Save"; + button1.Location = new System.Drawing.Point(241, 469); + button1.Margin = new Padding(10, 0, 10, 10); + button1.Name = "button1"; + button1.Padding = new Padding(4, 4, 3, 3); + button1.Size = new System.Drawing.Size(128, 32); + button1.TabIndex = 4; + button1.TabStop = false; + button1.MouseClick += button1_MouseClick; + // + // tHorizontalSeparator1 + // + tHorizontalSeparator1.Anchor = AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right; + tHorizontalSeparator1.AutoScrollMargin = new System.Drawing.Size(0, 0); + tHorizontalSeparator1.AutoScrollMinSize = new System.Drawing.Size(0, 0); + tHorizontalSeparator1.BackColor = System.Drawing.Color.Transparent; + tHorizontalSeparator1.Location = new System.Drawing.Point(10, 437); + tHorizontalSeparator1.Margin = new Padding(0, 10, 0, 0); + tHorizontalSeparator1.MaximumSize = new System.Drawing.Size(4920, 2); + tHorizontalSeparator1.MinimumSize = new System.Drawing.Size(0, 22); + tHorizontalSeparator1.Name = "tHorizontalSeparator1"; + tHorizontalSeparator1.Size = new System.Drawing.Size(364, 22); + tHorizontalSeparator1.TabIndex = 188; + tHorizontalSeparator1.TabStop = false; + // + // memoBox1 + // + memoBox1.AcceptButton = null; + memoBox1.AllowDrop = true; + memoBox1.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right; + memoBox1.BackColor = System.Drawing.Color.Transparent; + memoBox1.EnableReactiveVisual = true; + memoBox1.Font = new System.Drawing.Font("Segoe UI", 9F); + memoBox1.Location = new System.Drawing.Point(10, 70); + memoBox1.Margin = new Padding(10, 6, 10, 6); + memoBox1.Name = "memoBox1"; + memoBox1.Padding = new Padding(4, 4, 3, 3); + memoBox1.ReadOnly = false; + memoBox1.ScrollBars = ScrollBars.Vertical; + memoBox1.Size = new System.Drawing.Size(364, 361); + memoBox1.TabIndex = 191; + memoBox1.TabStop = false; + memoBox1.WordWrap = false; + // + // button3 + // + button3.AcceptButton = null; + button3.ActiveImage = null; + button3.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; + button3.BackColor = System.Drawing.Color.Transparent; + button3.ContextMenuStrip = contextMenuStrip1; + button3.EnableMenuOnClick = true; + button3.EnableReactiveVisual = true; + button3.HoverImage = null; + button3.IdleImage = null; + button3.LabelText = "&Add"; + button3.Location = new System.Drawing.Point(10, 21); + button3.Margin = new Padding(10, 0, 10, 10); + button3.Name = "button3"; + button3.Padding = new Padding(4, 4, 3, 3); + button3.Size = new System.Drawing.Size(177, 33); + button3.TabIndex = 189; + button3.TabStop = false; + // + // contextMenuStrip1 + // + contextMenuStrip1.Items.AddRange(new ToolStripItem[] { addDirectoryToolStripMenuItem, addFileToolStripMenuItem }); + contextMenuStrip1.Name = "contextMenuStrip1"; + contextMenuStrip1.Size = new System.Drawing.Size(148, 48); + // + // addDirectoryToolStripMenuItem + // + addDirectoryToolStripMenuItem.Name = "addDirectoryToolStripMenuItem"; + addDirectoryToolStripMenuItem.Size = new System.Drawing.Size(147, 22); + addDirectoryToolStripMenuItem.Text = "&Add Directory"; + addDirectoryToolStripMenuItem.Click += addDirectoryToolStripMenuItem_Click; + // + // addFileToolStripMenuItem + // + addFileToolStripMenuItem.Name = "addFileToolStripMenuItem"; + addFileToolStripMenuItem.Size = new System.Drawing.Size(147, 22); + addFileToolStripMenuItem.Text = "Add &File"; + addFileToolStripMenuItem.Click += addFileToolStripMenuItem_Click; + // + // button4 + // + button4.AcceptButton = null; + button4.ActiveImage = null; + button4.Anchor = AnchorStyles.Top | AnchorStyles.Right; + button4.BackColor = System.Drawing.Color.Transparent; + button4.EnableMenuOnClick = false; + button4.EnableReactiveVisual = true; + button4.HoverImage = null; + button4.IdleImage = null; + button4.LabelText = "&Clear"; + button4.Location = new System.Drawing.Point(197, 21); + button4.Margin = new Padding(10, 0, 10, 10); + button4.Name = "button4"; + button4.Padding = new Padding(4, 4, 3, 3); + button4.Size = new System.Drawing.Size(177, 33); + button4.TabIndex = 190; + button4.TabStop = false; + button4.MouseClick += button4_MouseClick; + // + // folderBrowserDialog1 + // + folderBrowserDialog1.ShowNewFolderButton = false; + // + // openFileDialog1 + // + openFileDialog1.Filter = "All files (*.*)|*.*"; + // + // MemoBoxForm + // + AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + AutoScaleMode = AutoScaleMode.Font; + ClientSize = new System.Drawing.Size(384, 521); + Controls.Add(memoBox1); + Controls.Add(button3); + Controls.Add(button4); + Controls.Add(tHorizontalSeparator1); + Controls.Add(button1); + MinimumSize = new System.Drawing.Size(400, 560); + Name = "MemoBoxForm"; + ShowIcon = false; + ShowInTaskbar = false; + Text = "Manage Search Paths"; + contextMenuStrip1.ResumeLayout(false); + ResumeLayout(false); + } + + protected override void OnShown(EventArgs e) + { + base.OnShown(e); + + this.DialogResult = System.Windows.Forms.DialogResult.None; + } + + + public List Lines + { + get => memoBox1.Lines; + set + { + memoBox1.TextBox.Lines = value.ToArray(); + } + } + + + private void button1_MouseClick(object sender, MouseEventArgs e) + { + this.DialogResult = DialogResult.OK; + this.Close(); + } + + /// + /// Add Directory. + /// + /// + /// + private void addDirectoryToolStripMenuItem_Click(object sender, EventArgs e) + { + if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) + { + memoBox1.TextBox.AddLine(folderBrowserDialog1.SelectedPath); + } + } + + /// + /// Add File. + /// + /// + /// + private void addFileToolStripMenuItem_Click(object sender, EventArgs e) + { + if (openFileDialog1.ShowDialog() == DialogResult.OK) + { + memoBox1.TextBox.AddLine(openFileDialog1.FileName); + } + } + + /// + /// Clear. + /// + /// + /// + private void button4_MouseClick(object sender, MouseEventArgs e) + { + memoBox1.Text = string.Empty; + } + + } +} \ No newline at end of file diff --git a/MemoBoxForm.resx b/MemoBoxForm.resx new file mode 100644 index 0000000..b56ae18 --- /dev/null +++ b/MemoBoxForm.resx @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 831, 17 + + + 986, 17 + + + 1155, 17 + + \ No newline at end of file diff --git a/OptionsForm.cs b/OptionsForm.cs index aa4bb05..4640e24 100644 --- a/OptionsForm.cs +++ b/OptionsForm.cs @@ -1,19 +1,21 @@ using RyzStudio.Windows.ThemedForms; +using RyzStudio.Windows.ThemedForms.ButtonTextBox; +using RyzStudio.Windows.ThemedForms.PickerBox; using System; using System.Windows.Forms; namespace RandomFileRunner { - public class OptionsForm : TDialogForm + public class OptionsForm : Form { - private TButton button1; - private TYesNoPickerBox pickerBox1; + private ThButton button1; + private ThYesNoPickerBox pickerBox1; private System.Windows.Forms.Label label6; private System.Windows.Forms.Label label8; private RyzStudio.Windows.Forms.THorizontalSeparator tHorizontalSeparator1; - private TNumericPickerBox pickerBox2; - private TKeyCodeTextBox textBox1; - private TYesNoPickerBox pickerBox3; + private ThNumericPickerBox pickerBox2; + private ThKeyCodeTextBox textBox1; + private ThYesNoPickerBox pickerBox3; private Label label1; private RyzStudio.Windows.Forms.THorizontalSeparator tHorizontalSeparator3; private Label label2; @@ -29,230 +31,244 @@ namespace RandomFileRunner private void InitializeComponent() { - RyzStudio.Windows.ThemedForms.TKeyCodeTextBox.Results results1 = new RyzStudio.Windows.ThemedForms.TKeyCodeTextBox.Results(); - this.button1 = new RyzStudio.Windows.ThemedForms.TButton(); - this.pickerBox1 = new RyzStudio.Windows.ThemedForms.TYesNoPickerBox(); - this.label6 = new System.Windows.Forms.Label(); - this.label8 = new System.Windows.Forms.Label(); - this.tHorizontalSeparator1 = new RyzStudio.Windows.Forms.THorizontalSeparator(); - this.tHorizontalSeparator2 = new RyzStudio.Windows.Forms.THorizontalSeparator(); - this.pickerBox2 = new RyzStudio.Windows.ThemedForms.TNumericPickerBox(); - this.textBox1 = new RyzStudio.Windows.ThemedForms.TKeyCodeTextBox(); - this.pickerBox3 = new RyzStudio.Windows.ThemedForms.TYesNoPickerBox(); - this.label1 = new System.Windows.Forms.Label(); - this.tHorizontalSeparator3 = new RyzStudio.Windows.Forms.THorizontalSeparator(); - this.label2 = new System.Windows.Forms.Label(); - this.SuspendLayout(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(OptionsForm)); + ThKeyCodeTextBox.Results results1 = new ThKeyCodeTextBox.Results(); + button1 = new ThButton(); + pickerBox1 = new ThYesNoPickerBox(); + label6 = new Label(); + label8 = new Label(); + tHorizontalSeparator1 = new RyzStudio.Windows.Forms.THorizontalSeparator(); + tHorizontalSeparator2 = new RyzStudio.Windows.Forms.THorizontalSeparator(); + pickerBox2 = new ThNumericPickerBox(); + textBox1 = new ThKeyCodeTextBox(); + pickerBox3 = new ThYesNoPickerBox(); + label1 = new Label(); + tHorizontalSeparator3 = new RyzStudio.Windows.Forms.THorizontalSeparator(); + label2 = new Label(); + SuspendLayout(); // // button1 // - this.button1.ActiveImage = null; - this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.button1.BackColor = System.Drawing.Color.Transparent; - this.button1.HoverImage = null; - this.button1.IdleImage = null; - this.button1.LabelText = "&Save"; - this.button1.Location = new System.Drawing.Point(241, 469); - this.button1.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10); - this.button1.Name = "button1"; - this.button1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3); - this.button1.Size = new System.Drawing.Size(128, 32); - this.button1.TabIndex = 4; - this.button1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button1_MouseClick); + button1.AcceptButton = null; + button1.ActiveImage = null; + button1.Anchor = AnchorStyles.Bottom | AnchorStyles.Right; + button1.BackColor = System.Drawing.Color.Transparent; + button1.EnableMenuOnClick = false; + button1.EnableReactiveVisual = true; + button1.HoverImage = null; + button1.IdleImage = null; + button1.LabelText = "&Save"; + button1.Location = new System.Drawing.Point(241, 469); + button1.Margin = new Padding(10, 0, 10, 10); + button1.Name = "button1"; + button1.Padding = new Padding(4, 4, 3, 3); + button1.Size = new System.Drawing.Size(128, 32); + button1.TabIndex = 4; + button1.TabStop = false; + button1.MouseClick += button1_MouseClick; // // pickerBox1 // - this.pickerBox1.AcceptButton = null; - this.pickerBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.pickerBox1.BackColor = System.Drawing.Color.Transparent; - this.pickerBox1.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point); - this.pickerBox1.Location = new System.Drawing.Point(285, 21); - this.pickerBox1.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4); - this.pickerBox1.Name = "pickerBox1"; - this.pickerBox1.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5); - this.pickerBox1.Size = new System.Drawing.Size(84, 35); - this.pickerBox1.TabIndex = 0; - this.pickerBox1.Value = true; + pickerBox1.AcceptButton = null; + pickerBox1.Anchor = AnchorStyles.Top | AnchorStyles.Right; + pickerBox1.BackColor = System.Drawing.Color.Transparent; + pickerBox1.EnableReactiveVisual = true; + pickerBox1.Font = new System.Drawing.Font("Segoe UI", 9F); + pickerBox1.Location = new System.Drawing.Point(285, 21); + pickerBox1.Margin = new Padding(10, 10, 10, 0); + pickerBox1.Name = "pickerBox1"; + pickerBox1.Padding = new Padding(4, 4, 3, 3); + pickerBox1.SelectedIndex = 1; + pickerBox1.Size = new System.Drawing.Size(84, 35); + pickerBox1.TabIndex = 0; + pickerBox1.TabStop = false; + pickerBox1.Value = true; // // label6 // - this.label6.AutoSize = true; - this.label6.BackColor = System.Drawing.Color.Transparent; - this.label6.ForeColor = System.Drawing.SystemColors.ControlText; - this.label6.Location = new System.Drawing.Point(10, 85); - this.label6.Margin = new System.Windows.Forms.Padding(0); - this.label6.Name = "label6"; - this.label6.Padding = new System.Windows.Forms.Padding(0, 9, 0, 10); - this.label6.Size = new System.Drawing.Size(81, 34); - this.label6.TabIndex = 182; - this.label6.Text = "Retry On Error"; - this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + label6.AutoSize = true; + label6.BackColor = System.Drawing.Color.Transparent; + label6.ForeColor = System.Drawing.SystemColors.ControlText; + label6.Location = new System.Drawing.Point(10, 85); + label6.Margin = new Padding(0); + label6.Name = "label6"; + label6.Padding = new Padding(0, 9, 0, 10); + label6.Size = new System.Drawing.Size(81, 34); + label6.TabIndex = 182; + label6.Text = "Retry On Error"; + label6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // label8 // - this.label8.AutoSize = true; - this.label8.BackColor = System.Drawing.Color.Transparent; - this.label8.ForeColor = System.Drawing.SystemColors.ControlText; - this.label8.Location = new System.Drawing.Point(10, 21); - this.label8.Margin = new System.Windows.Forms.Padding(0); - this.label8.Name = "label8"; - this.label8.Padding = new System.Windows.Forms.Padding(0, 9, 0, 10); - this.label8.Size = new System.Drawing.Size(143, 34); - this.label8.TabIndex = 186; - this.label8.Text = "Search Top Directory Only"; - this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + label8.AutoSize = true; + label8.BackColor = System.Drawing.Color.Transparent; + label8.ForeColor = System.Drawing.SystemColors.ControlText; + label8.Location = new System.Drawing.Point(10, 21); + label8.Margin = new Padding(0); + label8.Name = "label8"; + label8.Padding = new Padding(0, 9, 0, 10); + label8.Size = new System.Drawing.Size(143, 34); + label8.TabIndex = 186; + label8.Text = "Search Top Directory Only"; + label8.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // tHorizontalSeparator1 // - this.tHorizontalSeparator1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.tHorizontalSeparator1.AutoScrollMargin = new System.Drawing.Size(0, 0); - this.tHorizontalSeparator1.AutoScrollMinSize = new System.Drawing.Size(0, 0); - this.tHorizontalSeparator1.BackColor = System.Drawing.Color.Transparent; - this.tHorizontalSeparator1.Location = new System.Drawing.Point(10, 437); - this.tHorizontalSeparator1.Margin = new System.Windows.Forms.Padding(5, 0, 5, 10); - this.tHorizontalSeparator1.MaximumSize = new System.Drawing.Size(4920, 2); - this.tHorizontalSeparator1.MinimumSize = new System.Drawing.Size(0, 22); - this.tHorizontalSeparator1.Name = "tHorizontalSeparator1"; - this.tHorizontalSeparator1.Padding = new System.Windows.Forms.Padding(0, 10, 0, 10); - this.tHorizontalSeparator1.Size = new System.Drawing.Size(364, 22); - this.tHorizontalSeparator1.TabIndex = 188; - this.tHorizontalSeparator1.TabStop = false; + tHorizontalSeparator1.Anchor = AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right; + tHorizontalSeparator1.AutoScrollMargin = new System.Drawing.Size(0, 0); + tHorizontalSeparator1.AutoScrollMinSize = new System.Drawing.Size(0, 0); + tHorizontalSeparator1.BackColor = System.Drawing.Color.Transparent; + tHorizontalSeparator1.Location = new System.Drawing.Point(10, 437); + tHorizontalSeparator1.Margin = new Padding(0, 10, 0, 0); + tHorizontalSeparator1.MaximumSize = new System.Drawing.Size(4920, 2); + tHorizontalSeparator1.MinimumSize = new System.Drawing.Size(0, 22); + tHorizontalSeparator1.Name = "tHorizontalSeparator1"; + tHorizontalSeparator1.Size = new System.Drawing.Size(364, 22); + tHorizontalSeparator1.TabIndex = 188; + tHorizontalSeparator1.TabStop = false; // // tHorizontalSeparator2 // - this.tHorizontalSeparator2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.tHorizontalSeparator2.AutoScrollMargin = new System.Drawing.Size(0, 0); - this.tHorizontalSeparator2.AutoScrollMinSize = new System.Drawing.Size(0, 0); - this.tHorizontalSeparator2.BackColor = System.Drawing.Color.Transparent; - this.tHorizontalSeparator2.Location = new System.Drawing.Point(10, 59); - this.tHorizontalSeparator2.Margin = new System.Windows.Forms.Padding(5, 0, 5, 10); - this.tHorizontalSeparator2.MaximumSize = new System.Drawing.Size(4920, 2); - this.tHorizontalSeparator2.MinimumSize = new System.Drawing.Size(0, 22); - this.tHorizontalSeparator2.Name = "tHorizontalSeparator2"; - this.tHorizontalSeparator2.Padding = new System.Windows.Forms.Padding(0, 10, 0, 10); - this.tHorizontalSeparator2.Size = new System.Drawing.Size(364, 22); - this.tHorizontalSeparator2.TabIndex = 190; - this.tHorizontalSeparator2.TabStop = false; + tHorizontalSeparator2.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; + tHorizontalSeparator2.AutoScrollMargin = new System.Drawing.Size(0, 0); + tHorizontalSeparator2.AutoScrollMinSize = new System.Drawing.Size(0, 0); + tHorizontalSeparator2.BackColor = System.Drawing.Color.Transparent; + tHorizontalSeparator2.Location = new System.Drawing.Point(10, 59); + tHorizontalSeparator2.Margin = new Padding(0, 10, 0, 0); + tHorizontalSeparator2.MaximumSize = new System.Drawing.Size(4920, 2); + tHorizontalSeparator2.MinimumSize = new System.Drawing.Size(0, 22); + tHorizontalSeparator2.Name = "tHorizontalSeparator2"; + tHorizontalSeparator2.Size = new System.Drawing.Size(364, 22); + tHorizontalSeparator2.TabIndex = 190; + tHorizontalSeparator2.TabStop = false; // // pickerBox2 // - this.pickerBox2.AcceptButton = null; - this.pickerBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.pickerBox2.BackColor = System.Drawing.Color.Transparent; - this.pickerBox2.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point); - this.pickerBox2.Location = new System.Drawing.Point(285, 85); - this.pickerBox2.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4); - this.pickerBox2.Name = "pickerBox2"; - this.pickerBox2.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5); - this.pickerBox2.Size = new System.Drawing.Size(84, 35); - this.pickerBox2.TabIndex = 1; - this.pickerBox2.Value = 0; + pickerBox2.AcceptButton = null; + pickerBox2.Anchor = AnchorStyles.Top | AnchorStyles.Right; + pickerBox2.BackColor = System.Drawing.Color.Transparent; + pickerBox2.EnableReactiveVisual = true; + pickerBox2.Font = new System.Drawing.Font("Segoe UI", 9F); + pickerBox2.Location = new System.Drawing.Point(285, 85); + pickerBox2.Margin = new Padding(10, 10, 10, 0); + pickerBox2.MaxDropDownItems = 10; + pickerBox2.Maximum = 50; + pickerBox2.Minimum = 0; + pickerBox2.Name = "pickerBox2"; + pickerBox2.Padding = new Padding(4, 4, 3, 3); + pickerBox2.SelectedIndex = 0; + pickerBox2.Size = new System.Drawing.Size(84, 35); + pickerBox2.TabIndex = 1; + pickerBox2.TabStop = false; + pickerBox2.Value = 0; // // textBox1 // - this.textBox1.AcceptButton = null; - this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.textBox1.BackColor = System.Drawing.Color.Transparent; - this.textBox1.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point); - this.textBox1.HighlightImage = null; + textBox1.AcceptButton = null; + textBox1.Anchor = AnchorStyles.Top | AnchorStyles.Right; + textBox1.BackColor = System.Drawing.Color.Transparent; + textBox1.EnableReactiveVisual = true; + textBox1.Font = new System.Drawing.Font("Segoe UI", 9F); + textBox1.HighlightImage = (System.Drawing.Image)resources.GetObject("textBox1.HighlightImage"); results1.IsAlt = false; results1.IsCtrl = false; results1.IsShift = false; - results1.Key = System.Windows.Forms.Keys.None; - this.textBox1.KeyCodeResults = results1; - this.textBox1.Location = new System.Drawing.Point(241, 197); - this.textBox1.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10); - this.textBox1.Name = "textBox1"; - this.textBox1.NormalImage = null; - this.textBox1.Padding = new System.Windows.Forms.Padding(10, 9, 9, 9); - this.textBox1.Size = new System.Drawing.Size(128, 34); - this.textBox1.TabIndex = 3; - this.textBox1.UseSystemPasswordChar = false; + results1.Key = Keys.None; + textBox1.KeyCodeResults = results1; + textBox1.Location = new System.Drawing.Point(241, 197); + textBox1.Margin = new Padding(10, 10, 10, 0); + textBox1.Name = "textBox1"; + textBox1.NormalImage = (System.Drawing.Image)resources.GetObject("textBox1.NormalImage"); + textBox1.Padding = new Padding(4, 4, 3, 3); + textBox1.Size = new System.Drawing.Size(128, 32); + textBox1.TabIndex = 3; + textBox1.TabStop = false; + textBox1.UseSystemPasswordChar = false; // // pickerBox3 // - this.pickerBox3.AcceptButton = null; - this.pickerBox3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.pickerBox3.BackColor = System.Drawing.Color.Transparent; - this.pickerBox3.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point); - this.pickerBox3.Location = new System.Drawing.Point(285, 127); - this.pickerBox3.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4); - this.pickerBox3.Name = "pickerBox3"; - this.pickerBox3.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5); - this.pickerBox3.Size = new System.Drawing.Size(84, 35); - this.pickerBox3.TabIndex = 2; - this.pickerBox3.Value = true; + pickerBox3.AcceptButton = null; + pickerBox3.Anchor = AnchorStyles.Top | AnchorStyles.Right; + pickerBox3.BackColor = System.Drawing.Color.Transparent; + pickerBox3.EnableReactiveVisual = true; + pickerBox3.Font = new System.Drawing.Font("Segoe UI", 9F); + pickerBox3.Location = new System.Drawing.Point(285, 127); + pickerBox3.Margin = new Padding(10, 10, 10, 0); + pickerBox3.Name = "pickerBox3"; + pickerBox3.Padding = new Padding(4, 4, 3, 3); + pickerBox3.SelectedIndex = 1; + pickerBox3.Size = new System.Drawing.Size(84, 35); + pickerBox3.TabIndex = 2; + pickerBox3.TabStop = false; + pickerBox3.Value = true; // // label1 // - this.label1.AutoSize = true; - this.label1.BackColor = System.Drawing.Color.Transparent; - this.label1.ForeColor = System.Drawing.SystemColors.ControlText; - this.label1.Location = new System.Drawing.Point(10, 127); - this.label1.Margin = new System.Windows.Forms.Padding(0); - this.label1.Name = "label1"; - this.label1.Padding = new System.Windows.Forms.Padding(0, 9, 0, 10); - this.label1.Size = new System.Drawing.Size(169, 34); - this.label1.TabIndex = 196; - this.label1.Text = "Close Current Process On Next"; - this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + label1.AutoSize = true; + label1.BackColor = System.Drawing.Color.Transparent; + label1.ForeColor = System.Drawing.SystemColors.ControlText; + label1.Location = new System.Drawing.Point(10, 127); + label1.Margin = new Padding(0); + label1.Name = "label1"; + label1.Padding = new Padding(0, 9, 0, 10); + label1.Size = new System.Drawing.Size(169, 34); + label1.TabIndex = 196; + label1.Text = "Close Current Process On Next"; + label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // tHorizontalSeparator3 // - this.tHorizontalSeparator3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.tHorizontalSeparator3.AutoScrollMargin = new System.Drawing.Size(0, 0); - this.tHorizontalSeparator3.AutoScrollMinSize = new System.Drawing.Size(0, 0); - this.tHorizontalSeparator3.BackColor = System.Drawing.Color.Transparent; - this.tHorizontalSeparator3.Location = new System.Drawing.Point(10, 165); - this.tHorizontalSeparator3.Margin = new System.Windows.Forms.Padding(5, 0, 5, 10); - this.tHorizontalSeparator3.MaximumSize = new System.Drawing.Size(4920, 2); - this.tHorizontalSeparator3.MinimumSize = new System.Drawing.Size(0, 22); - this.tHorizontalSeparator3.Name = "tHorizontalSeparator3"; - this.tHorizontalSeparator3.Padding = new System.Windows.Forms.Padding(0, 10, 0, 10); - this.tHorizontalSeparator3.Size = new System.Drawing.Size(364, 22); - this.tHorizontalSeparator3.TabIndex = 197; - this.tHorizontalSeparator3.TabStop = false; + tHorizontalSeparator3.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; + tHorizontalSeparator3.AutoScrollMargin = new System.Drawing.Size(0, 0); + tHorizontalSeparator3.AutoScrollMinSize = new System.Drawing.Size(0, 0); + tHorizontalSeparator3.BackColor = System.Drawing.Color.Transparent; + tHorizontalSeparator3.Location = new System.Drawing.Point(10, 165); + tHorizontalSeparator3.Margin = new Padding(0, 10, 0, 0); + tHorizontalSeparator3.MaximumSize = new System.Drawing.Size(4920, 2); + tHorizontalSeparator3.MinimumSize = new System.Drawing.Size(0, 22); + tHorizontalSeparator3.Name = "tHorizontalSeparator3"; + tHorizontalSeparator3.Size = new System.Drawing.Size(364, 22); + tHorizontalSeparator3.TabIndex = 197; + tHorizontalSeparator3.TabStop = false; // // label2 // - this.label2.AutoSize = true; - this.label2.BackColor = System.Drawing.Color.Transparent; - this.label2.ForeColor = System.Drawing.SystemColors.ControlText; - this.label2.Location = new System.Drawing.Point(10, 197); - this.label2.Margin = new System.Windows.Forms.Padding(0); - this.label2.Name = "label2"; - this.label2.Padding = new System.Windows.Forms.Padding(0, 9, 0, 10); - this.label2.Size = new System.Drawing.Size(123, 34); - this.label2.TabIndex = 198; - this.label2.Text = "Next File Shortcut Key"; - this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + label2.AutoSize = true; + label2.BackColor = System.Drawing.Color.Transparent; + label2.ForeColor = System.Drawing.SystemColors.ControlText; + label2.Location = new System.Drawing.Point(10, 197); + label2.Margin = new Padding(0); + label2.Name = "label2"; + label2.Padding = new Padding(0, 9, 0, 10); + label2.Size = new System.Drawing.Size(123, 34); + label2.TabIndex = 198; + label2.Text = "Next File Shortcut Key"; + label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // OptionsForm // - this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(384, 521); - this.Controls.Add(this.label2); - this.Controls.Add(this.tHorizontalSeparator3); - this.Controls.Add(this.label1); - this.Controls.Add(this.pickerBox3); - this.Controls.Add(this.textBox1); - this.Controls.Add(this.pickerBox2); - this.Controls.Add(this.tHorizontalSeparator2); - this.Controls.Add(this.tHorizontalSeparator1); - this.Controls.Add(this.label8); - this.Controls.Add(this.pickerBox1); - this.Controls.Add(this.label6); - this.Controls.Add(this.button1); - this.MinimumSize = new System.Drawing.Size(400, 560); - this.Name = "OptionsForm"; - this.Text = "Options"; - this.ResumeLayout(false); - this.PerformLayout(); - + AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + AutoScaleMode = AutoScaleMode.Font; + ClientSize = new System.Drawing.Size(384, 521); + Controls.Add(label2); + Controls.Add(tHorizontalSeparator3); + Controls.Add(label1); + Controls.Add(pickerBox3); + Controls.Add(textBox1); + Controls.Add(pickerBox2); + Controls.Add(tHorizontalSeparator2); + Controls.Add(tHorizontalSeparator1); + Controls.Add(label8); + Controls.Add(pickerBox1); + Controls.Add(label6); + Controls.Add(button1); + MinimumSize = new System.Drawing.Size(400, 560); + Name = "OptionsForm"; + ShowIcon = false; + ShowInTaskbar = false; + Text = "Options"; + ResumeLayout(false); + PerformLayout(); } protected override void OnShown(EventArgs e) @@ -262,7 +278,8 @@ namespace RandomFileRunner this.DialogResult = System.Windows.Forms.DialogResult.None; pickerBox1.Value = this.Session.SearchTopDirectoryOnly; - pickerBox2.Clear(0, 20, this.Session.RetryOnError); + pickerBox2.Value = this.Session.RetryOnError; + //pickerBox2.Clear.Clear(0, 20, this.Session.RetryOnError); pickerBox3.Value = this.Session.ClosePrevOnNext; if (this.Session.NextHotKey != null) textBox1.UpdateKeyCode(this.Session.NextHotKey.IsCtrl, this.Session.NextHotKey.IsAlt, this.Session.NextHotKey.IsShift, this.Session.NextHotKey.KeyCode); } diff --git a/OptionsForm.resx b/OptionsForm.resx index f298a7b..0386da6 100644 --- a/OptionsForm.resx +++ b/OptionsForm.resx @@ -1,4 +1,64 @@ - + + + @@ -57,4 +117,25 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wQAADsEBuJFr7QAAAN5JREFUOE/tUzsKwkAUXLCyFMHjeIvdB4Gk8ALamU4rsbLaTWz0AOYGOYMewTqe + QLEQnZc8WRMSsBYHhrzPzJBin2pC60PPGLs3xl3Bp5DrHe9E1g2tHUH8QMjKmGReketyZkRWh9abfhTZ + YRimI4jWRPYSBMngkzzjHWtYyx6xK4X0Anz/7rcsxM4BdoxBTuTOqCdEaUyU6DrTuNqxxuXsEXsFDLfg + UdpOsIa10nr8A34p4CRtJ1jTGoC3PsPiBi78ETXplqzBwU3F5sHHgWWGJ3rHt+3tg+Uu84ek1AsYYd8q + EsfwCwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wQAADsEBuJFr7QAAANFJREFUOE/tkzEKAjEURANWliJ4HG+h9l5AO7fTSjyCxWpCIBB2b+AZ9AjW6wlc + LGSdWb9Elw1YiwOP/Pw/E1Ikqqksyzpa670x5goqgfWOM7HFhfAE5jvWNdYFkZq9sdg+laZp13vfBwOY + NjBfnHO9d9jjjB56mZG4UhgW4HXdbykkXl97iMYBnFFPrbUJGDVIOKOHXmYk/hSaW3CUbVT00CvboP8B + v3TASbZR0RM7YA5KsAT1J2phBUq8wpnEgvg5MMwxvGFte/uVzPLwkZR6AInAKK6aICfTAAAAAElFTkSu + QmCC + + \ No newline at end of file diff --git a/Program.cs b/Program.cs index 517cd8c..5b6afe8 100644 --- a/Program.cs +++ b/Program.cs @@ -12,8 +12,6 @@ namespace RandomFileRunner [STAThread] static void Main() { - UIcon.UIResource = typeof(UIResource); - Application.SetHighDpiMode(HighDpiMode.SystemAware); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); diff --git a/RandomFileRunner.csproj b/RandomFileRunner.csproj index 5c65dd7..0232102 100644 --- a/RandomFileRunner.csproj +++ b/RandomFileRunner.csproj @@ -2,7 +2,7 @@ WinExe - net5.0-windows + net8.0-windows8.0 true randomfilerunner Ray Lam @@ -11,7 +11,7 @@ Ray Lam favicon.ico true - 0.1.2.065 + 1.1.0.074 @@ -35,6 +35,7 @@ + @@ -50,9 +51,8 @@ - - References\RyzStudio3.dll - + + @@ -61,6 +61,9 @@ True AppResource.resx + + Form + True True diff --git a/References/RyzStudio.8.1.0.719.nupkg b/References/RyzStudio.8.1.0.719.nupkg new file mode 100644 index 0000000000000000000000000000000000000000..08669360d85ab45162086230d13154179096459a GIT binary patch literal 15340 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 literal 0 HcmV?d00001 diff --git a/References/RyzStudio.Windows.Forms.8.1.0.719.nupkg b/References/RyzStudio.Windows.Forms.8.1.0.719.nupkg new file mode 100644 index 0000000000000000000000000000000000000000..2b83ffb8a2e1c938a35c8178436efecd75b17d52 GIT binary patch literal 61484 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 literal 0 HcmV?d00001 diff --git a/References/RyzStudio3.dll b/References/RyzStudio3.dll deleted file mode 100644 index 20a3f94e922091ec292f88e42ababaa51e96e030..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 94720 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