using System; using System.Linq; using System.Windows.Forms; using FizzyLauncher.Models; using RyzStudio.Windows.Forms; using RyzStudio.Windows.ThemedForms; using RyzStudio.Windows.ThemedForms.ButtonTextBox; using RyzStudio.Windows.ThemedForms.PickerBox; namespace FizzyLauncher { public class OptionsForm : TDialog { private System.Windows.Forms.Label label1; private ThButton button1; private ThYesNoPickerBox yesNoPickerBox2; private System.Windows.Forms.Label label6; private ThYesNoPickerBox yesNoPickerBox3; private System.Windows.Forms.Label label7; private RyzStudio.Windows.Forms.THorizontalSeparator tHorizontalSeparator1; private ThKeyCodeTextBox textBox1; private ThNumericBox numericBox1; private Label label4; private FlowLayoutPanel flowLayoutPanel1; private TTogglePanel tTogglePanel1; private TTogglePanel tTogglePanel2; private ThYesNoPickerBox yesNoPickerBox1; private Label label2; private ThYesNoPickerBox yesNoPickerBox4; private Label label3; private AppOptions _appSession = null; public OptionsForm(AppOptions appSession) { InitializeComponent(); this.OkButton = button1; numericBox1.Minimum = 4; numericBox1.Maximum = 24; _appSession = appSession; if (_appSession != null) { numericBox1.Value = _appSession.TilesPerRow; yesNoPickerBox1.Value = _appSession.ShowBigIcons; textBox1.UpdateKeyCode(_appSession?.ShowToggleHotkey ?? new ThKeyCodeTextBox.Results()); yesNoPickerBox2.Value = _appSession.HideOnClose; yesNoPickerBox3.Value = _appSession.HideOnExecute; yesNoPickerBox4.Value = _appSession.AlwaysOnTop; } } private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(OptionsForm)); ThKeyCodeTextBox.Results results1 = new ThKeyCodeTextBox.Results(); label1 = new Label(); button1 = new ThButton(); yesNoPickerBox2 = new ThYesNoPickerBox(); label6 = new Label(); yesNoPickerBox3 = new ThYesNoPickerBox(); label7 = new Label(); tHorizontalSeparator1 = new THorizontalSeparator(); textBox1 = new ThKeyCodeTextBox(); numericBox1 = new ThNumericBox(); label4 = new Label(); flowLayoutPanel1 = new FlowLayoutPanel(); tTogglePanel1 = new TTogglePanel(); yesNoPickerBox1 = new ThYesNoPickerBox(); label2 = new Label(); tTogglePanel2 = new TTogglePanel(); yesNoPickerBox4 = new ThYesNoPickerBox(); label3 = new Label(); flowLayoutPanel1.SuspendLayout(); tTogglePanel1.SuspendLayout(); tTogglePanel2.SuspendLayout(); SuspendLayout(); // // label1 // label1.AutoSize = true; label1.BackColor = System.Drawing.Color.Transparent; label1.ForeColor = System.Drawing.SystemColors.ControlText; label1.Location = new System.Drawing.Point(1, 22); label1.Margin = new Padding(0); label1.Name = "label1"; label1.Padding = new Padding(0, 8, 0, 0); label1.Size = new System.Drawing.Size(115, 23); label1.TabIndex = 153; label1.Text = "Show Toggle Hotkey"; label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // 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(301, 469); button1.Margin = new Padding(10, 10, 10, 0); button1.Name = "button1"; button1.Padding = new Padding(4, 4, 3, 3); button1.Size = new System.Drawing.Size(128, 32); button1.TabIndex = 173; button1.TabStop = false; // // yesNoPickerBox2 // yesNoPickerBox2.AcceptButton = null; yesNoPickerBox2.Anchor = AnchorStyles.Top | AnchorStyles.Right; yesNoPickerBox2.BackColor = System.Drawing.Color.Transparent; yesNoPickerBox2.EnableReactiveVisual = true; yesNoPickerBox2.Font = new System.Drawing.Font("Segoe UI", 9F); yesNoPickerBox2.Location = new System.Drawing.Point(307, 63); yesNoPickerBox2.Margin = new Padding(10, 10, 10, 0); yesNoPickerBox2.Name = "yesNoPickerBox2"; yesNoPickerBox2.Padding = new Padding(4, 4, 3, 3); yesNoPickerBox2.SelectedIndex = 1; yesNoPickerBox2.Size = new System.Drawing.Size(84, 34); yesNoPickerBox2.TabIndex = 183; yesNoPickerBox2.TabStop = false; yesNoPickerBox2.Value = true; // // label6 // label6.AutoSize = true; label6.BackColor = System.Drawing.Color.Transparent; label6.ForeColor = System.Drawing.SystemColors.ControlText; label6.Location = new System.Drawing.Point(1, 63); label6.Margin = new Padding(0); label6.Name = "label6"; label6.Padding = new Padding(0, 8, 0, 0); label6.Size = new System.Drawing.Size(83, 23); label6.TabIndex = 182; label6.Text = "Hide On Close"; label6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // yesNoPickerBox3 // yesNoPickerBox3.AcceptButton = null; yesNoPickerBox3.Anchor = AnchorStyles.Top | AnchorStyles.Right; yesNoPickerBox3.BackColor = System.Drawing.Color.Transparent; yesNoPickerBox3.EnableReactiveVisual = true; yesNoPickerBox3.Font = new System.Drawing.Font("Segoe UI", 9F); yesNoPickerBox3.Location = new System.Drawing.Point(307, 107); yesNoPickerBox3.Margin = new Padding(10, 10, 10, 0); yesNoPickerBox3.Name = "yesNoPickerBox3"; yesNoPickerBox3.Padding = new Padding(4, 4, 3, 3); yesNoPickerBox3.SelectedIndex = 1; yesNoPickerBox3.Size = new System.Drawing.Size(84, 34); yesNoPickerBox3.TabIndex = 185; yesNoPickerBox3.TabStop = false; yesNoPickerBox3.Value = true; // // label7 // label7.AutoSize = true; label7.BackColor = System.Drawing.Color.Transparent; label7.ForeColor = System.Drawing.SystemColors.ControlText; label7.Location = new System.Drawing.Point(1, 107); label7.Margin = new Padding(0); label7.Name = "label7"; label7.Padding = new Padding(0, 8, 0, 0); label7.Size = new System.Drawing.Size(95, 23); label7.TabIndex = 184; label7.Text = "Hide On Execute"; label7.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // 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(424, 22); tHorizontalSeparator1.TabIndex = 188; tHorizontalSeparator1.TabStop = false; // // textBox1 // textBox1.AcceptButton = null; textBox1.Anchor = AnchorStyles.Top | AnchorStyles.Left | 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 = Keys.None; textBox1.KeyCodeResults = results1; textBox1.Location = new System.Drawing.Point(192, 21); 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(199, 32); textBox1.TabIndex = 189; textBox1.TabStop = false; textBox1.UseSystemPasswordChar = false; // // numericBox1 // numericBox1.AcceptButton = null; numericBox1.Anchor = AnchorStyles.Top | AnchorStyles.Right; numericBox1.BackColor = System.Drawing.Color.Transparent; numericBox1.EnableReactiveVisual = true; numericBox1.Font = new System.Drawing.Font("Segoe UI", 9F); numericBox1.Location = new System.Drawing.Point(252, 22); numericBox1.Margin = new Padding(10, 10, 10, 0); numericBox1.Maximum = 100; numericBox1.Minimum = 1; numericBox1.Name = "numericBox1"; numericBox1.Padding = new Padding(4, 4, 3, 3); numericBox1.Size = new System.Drawing.Size(139, 32); numericBox1.TabIndex = 192; numericBox1.TabStop = false; numericBox1.Value = 1; // // label4 // label4.AutoSize = true; label4.BackColor = System.Drawing.Color.Transparent; label4.ForeColor = System.Drawing.SystemColors.ControlText; label4.Location = new System.Drawing.Point(1, 22); label4.Margin = new Padding(0); label4.Name = "label4"; label4.Padding = new Padding(0, 8, 0, 0); label4.Size = new System.Drawing.Size(76, 23); label4.TabIndex = 193; label4.Text = "Tiles Per Row"; label4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // flowLayoutPanel1 // flowLayoutPanel1.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right; flowLayoutPanel1.AutoScroll = true; flowLayoutPanel1.BackColor = System.Drawing.Color.Transparent; flowLayoutPanel1.Controls.Add(tTogglePanel1); flowLayoutPanel1.Controls.Add(tTogglePanel2); flowLayoutPanel1.FlowDirection = FlowDirection.TopDown; flowLayoutPanel1.Location = new System.Drawing.Point(8, 12); flowLayoutPanel1.Name = "flowLayoutPanel1"; flowLayoutPanel1.Size = new System.Drawing.Size(436, 412); flowLayoutPanel1.TabIndex = 194; flowLayoutPanel1.WrapContents = false; flowLayoutPanel1.Resize += flowLayoutPanel1_Resize; // // tTogglePanel1 // tTogglePanel1.AutoScrollMargin = new System.Drawing.Size(0, 0); tTogglePanel1.AutoScrollMinSize = new System.Drawing.Size(0, 0); tTogglePanel1.Controls.Add(yesNoPickerBox1); tTogglePanel1.Controls.Add(label2); tTogglePanel1.Controls.Add(label4); tTogglePanel1.Controls.Add(numericBox1); tTogglePanel1.ExpandedHeight = 100; tTogglePanel1.ForeColor = System.Drawing.Color.FromArgb(99, 105, 119); tTogglePanel1.IsOpen = true; tTogglePanel1.Location = new System.Drawing.Point(0, 0); tTogglePanel1.Margin = new Padding(0); tTogglePanel1.Name = "tTogglePanel1"; tTogglePanel1.Padding = new Padding(0, 22, 0, 0); tTogglePanel1.Size = new System.Drawing.Size(401, 119); tTogglePanel1.TabIndex = 0; tTogglePanel1.Title = "Appearance"; tTogglePanel1.TitleContextMenuStrip = null; tTogglePanel1.TitleCursor = Cursors.Default; tTogglePanel1.TitlePadding = new Padding(4, 4, 0, 2); // // yesNoPickerBox1 // yesNoPickerBox1.AcceptButton = null; yesNoPickerBox1.Anchor = AnchorStyles.Top | AnchorStyles.Right; yesNoPickerBox1.BackColor = System.Drawing.Color.Transparent; yesNoPickerBox1.EnableReactiveVisual = true; yesNoPickerBox1.Font = new System.Drawing.Font("Segoe UI", 9F); yesNoPickerBox1.Location = new System.Drawing.Point(307, 64); yesNoPickerBox1.Margin = new Padding(10, 10, 10, 0); yesNoPickerBox1.Name = "yesNoPickerBox1"; yesNoPickerBox1.Padding = new Padding(4, 4, 3, 3); yesNoPickerBox1.SelectedIndex = 1; yesNoPickerBox1.Size = new System.Drawing.Size(84, 34); yesNoPickerBox1.TabIndex = 195; yesNoPickerBox1.TabStop = false; yesNoPickerBox1.Value = true; // // label2 // label2.AutoSize = true; label2.BackColor = System.Drawing.Color.Transparent; label2.ForeColor = System.Drawing.SystemColors.ControlText; label2.Location = new System.Drawing.Point(1, 64); label2.Margin = new Padding(0); label2.Name = "label2"; label2.Padding = new Padding(0, 8, 0, 0); label2.Size = new System.Drawing.Size(87, 23); label2.TabIndex = 194; label2.Text = "Show Big Icons"; label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // tTogglePanel2 // tTogglePanel2.AutoScrollMargin = new System.Drawing.Size(0, 0); tTogglePanel2.AutoScrollMinSize = new System.Drawing.Size(0, 0); tTogglePanel2.Controls.Add(yesNoPickerBox4); tTogglePanel2.Controls.Add(label3); tTogglePanel2.Controls.Add(label1); tTogglePanel2.Controls.Add(textBox1); tTogglePanel2.Controls.Add(yesNoPickerBox2); tTogglePanel2.Controls.Add(yesNoPickerBox3); tTogglePanel2.Controls.Add(label6); tTogglePanel2.Controls.Add(label7); tTogglePanel2.ExpandedHeight = 100; tTogglePanel2.ForeColor = System.Drawing.Color.FromArgb(99, 105, 119); tTogglePanel2.IsOpen = true; tTogglePanel2.Location = new System.Drawing.Point(0, 119); tTogglePanel2.Margin = new Padding(0); tTogglePanel2.Name = "tTogglePanel2"; tTogglePanel2.Padding = new Padding(0, 22, 0, 0); tTogglePanel2.Size = new System.Drawing.Size(401, 206); tTogglePanel2.TabIndex = 1; tTogglePanel2.Title = "Behaviour"; tTogglePanel2.TitleContextMenuStrip = null; tTogglePanel2.TitleCursor = Cursors.Default; tTogglePanel2.TitlePadding = new Padding(4, 4, 0, 2); // // yesNoPickerBox4 // yesNoPickerBox4.AcceptButton = null; yesNoPickerBox4.Anchor = AnchorStyles.Top | AnchorStyles.Right; yesNoPickerBox4.BackColor = System.Drawing.Color.Transparent; yesNoPickerBox4.EnableReactiveVisual = true; yesNoPickerBox4.Font = new System.Drawing.Font("Segoe UI", 9F); yesNoPickerBox4.Location = new System.Drawing.Point(307, 151); yesNoPickerBox4.Margin = new Padding(10, 10, 10, 0); yesNoPickerBox4.Name = "yesNoPickerBox4"; yesNoPickerBox4.Padding = new Padding(4, 4, 3, 3); yesNoPickerBox4.SelectedIndex = 1; yesNoPickerBox4.Size = new System.Drawing.Size(84, 34); yesNoPickerBox4.TabIndex = 191; yesNoPickerBox4.TabStop = false; yesNoPickerBox4.Value = true; // // label3 // label3.AutoSize = true; label3.BackColor = System.Drawing.Color.Transparent; label3.ForeColor = System.Drawing.SystemColors.ControlText; label3.Location = new System.Drawing.Point(1, 151); label3.Margin = new Padding(0); label3.Name = "label3"; label3.Padding = new Padding(0, 8, 0, 0); label3.Size = new System.Drawing.Size(85, 23); label3.TabIndex = 190; label3.Text = "Always On Top"; label3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; // // OptionsForm // AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); AutoScaleMode = AutoScaleMode.Font; ClientSize = new System.Drawing.Size(444, 521); Controls.Add(flowLayoutPanel1); Controls.Add(tHorizontalSeparator1); Controls.Add(button1); MinimumSize = new System.Drawing.Size(460, 560); Name = "OptionsForm"; Text = "Options"; flowLayoutPanel1.ResumeLayout(false); tTogglePanel1.ResumeLayout(false); tTogglePanel1.PerformLayout(); tTogglePanel2.ResumeLayout(false); tTogglePanel2.PerformLayout(); ResumeLayout(false); } protected override void OnLoad(EventArgs e) { base.OnLoad(e); flowLayoutPanel1_Resize(null, e); } private void flowLayoutPanel1_Resize(object sender, EventArgs e) { var width = flowLayoutPanel1.ClientRectangle.Width - SystemInformation.VerticalScrollBarWidth; foreach (var item in flowLayoutPanel1.Controls.OfType()) { item.Width = width; } } public AppOptions Result { get { if (_appSession == null) { _appSession = new AppOptions(); } _appSession.TilesPerRow = numericBox1.Value; _appSession.ShowBigIcons = yesNoPickerBox1.Value; _appSession.ShowToggleHotkey = textBox1.KeyCodeResults; _appSession.HideOnClose = yesNoPickerBox2.Value; _appSession.HideOnExecute = yesNoPickerBox3.Value; _appSession.AlwaysOnTop = yesNoPickerBox4.Value; return _appSession; } } } }