From 1d649e26171f28bf2452f5581a089f2daa6e5ee8 Mon Sep 17 00:00:00 2001 From: Jaex Date: Wed, 8 Jul 2020 14:14:24 +0300 Subject: [PATCH] Image effects form design change --- ShareX.HelpersLib/Controls/MyListView.cs | 7 +- .../ImageEffectsForm.Designer.cs | 211 ++++---- ShareX.ImageEffectsLib/ImageEffectsForm.cs | 65 ++- ShareX.ImageEffectsLib/ImageEffectsForm.resx | 511 +++++++++--------- .../Properties/Resources.Designer.cs | 50 ++ .../Properties/Resources.resx | 243 +++++---- .../Resources/arrow-circle-double-135.png | Bin 0 -> 792 bytes .../Resources/document-copy.png | Bin 0 -> 564 bytes ShareX.ImageEffectsLib/Resources/eraser.png | Bin 0 -> 656 bytes ShareX.ImageEffectsLib/Resources/minus.png | Bin 0 -> 224 bytes ShareX.ImageEffectsLib/Resources/plus.png | Bin 0 -> 482 bytes .../ShareX.ImageEffectsLib.csproj | 15 + 12 files changed, 628 insertions(+), 474 deletions(-) create mode 100644 ShareX.ImageEffectsLib/Resources/arrow-circle-double-135.png create mode 100644 ShareX.ImageEffectsLib/Resources/document-copy.png create mode 100644 ShareX.ImageEffectsLib/Resources/eraser.png create mode 100644 ShareX.ImageEffectsLib/Resources/minus.png create mode 100644 ShareX.ImageEffectsLib/Resources/plus.png diff --git a/ShareX.HelpersLib/Controls/MyListView.cs b/ShareX.HelpersLib/Controls/MyListView.cs index 25038797e..2d18e7436 100644 --- a/ShareX.HelpersLib/Controls/MyListView.cs +++ b/ShareX.HelpersLib/Controls/MyListView.cs @@ -153,9 +153,9 @@ public void SelectSingle(ListViewItem lvi) public void UnselectAll() { - foreach (ListViewItem lvi in SelectedItems) + if (MultiSelect) { - lvi.Selected = false; + SelectedItems.Clear(); } } @@ -324,7 +324,7 @@ protected override void OnColumnClick(ColumnClickEventArgs e) lvwColumnSorter.Order = SortOrder.Ascending; } - // if the column is tagged as a DateTime, then sort by date + // If the column is tagged as a DateTime, then sort by date lvwColumnSorter.SortByDate = Columns[e.Column].Tag is DateTime; Cursor.Current = Cursors.WaitCursor; @@ -350,6 +350,7 @@ private void DrawInsertionLine(int left, int right, int y) protected override void ScaleControl(SizeF factor, BoundsSpecified specified) { base.ScaleControl(factor, specified); + foreach (ColumnHeader column in Columns) { column.Width = (int)Math.Round(column.Width * factor.Width); diff --git a/ShareX.ImageEffectsLib/ImageEffectsForm.Designer.cs b/ShareX.ImageEffectsLib/ImageEffectsForm.Designer.cs index eeb0c4e65..d252ea701 100644 --- a/ShareX.ImageEffectsLib/ImageEffectsForm.Designer.cs +++ b/ShareX.ImageEffectsLib/ImageEffectsForm.Designer.cs @@ -31,12 +31,8 @@ private void InitializeComponent() this.components = new System.ComponentModel.Container(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ImageEffectsForm)); this.pgSettings = new System.Windows.Forms.PropertyGrid(); - this.btnAdd = new System.Windows.Forms.Button(); this.lvEffects = new ShareX.HelpersLib.MyListView(); this.chEffect = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); - this.btnRemove = new System.Windows.Forms.Button(); - this.btnClear = new System.Windows.Forms.Button(); - this.btnDuplicate = new System.Windows.Forms.Button(); this.btnSaveImage = new System.Windows.Forms.Button(); this.eiImageEffects = new ShareX.HelpersLib.ExportImportControl(); this.pbResult = new ShareX.HelpersLib.MyPictureBox(); @@ -45,19 +41,25 @@ private void InitializeComponent() this.cmsLoadImage = new System.Windows.Forms.ContextMenuStrip(this.components); this.tsmiLoadImageFromFile = new System.Windows.Forms.ToolStripMenuItem(); this.tsmiLoadImageFromClipboard = new System.Windows.Forms.ToolStripMenuItem(); - this.btnAddPreset = new System.Windows.Forms.Button(); - this.btnRemovePreset = new System.Windows.Forms.Button(); - this.cbPresets = new System.Windows.Forms.ComboBox(); this.lblPresetName = new System.Windows.Forms.Label(); this.txtPresetName = new System.Windows.Forms.TextBox(); this.btnClose = new System.Windows.Forms.Button(); this.btnOK = new System.Windows.Forms.Button(); this.btnUploadImage = new System.Windows.Forms.Button(); - this.btnRefresh = new System.Windows.Forms.Button(); - this.btnDuplicatePreset = new System.Windows.Forms.Button(); this.lblPresets = new System.Windows.Forms.Label(); this.btnPackager = new System.Windows.Forms.Button(); this.scMain = new ShareX.HelpersLib.SplitContainerCustomSplitter(); + this.btnPresetNew = new System.Windows.Forms.Button(); + this.btnPresetRemove = new System.Windows.Forms.Button(); + this.btnPresetDuplicate = new System.Windows.Forms.Button(); + this.lvPresets = new ShareX.HelpersLib.MyListView(); + this.chPreset = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.lblEffects = new System.Windows.Forms.Label(); + this.btnEffectAdd = new System.Windows.Forms.Button(); + this.btnEffectRemove = new System.Windows.Forms.Button(); + this.btnEffectDuplicate = new System.Windows.Forms.Button(); + this.btnEffectClear = new System.Windows.Forms.Button(); + this.btnEffectRefresh = new System.Windows.Forms.Button(); this.cmsLoadImage.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.scMain)).BeginInit(); this.scMain.Panel1.SuspendLayout(); @@ -73,13 +75,6 @@ private void InitializeComponent() this.pgSettings.ToolbarVisible = false; this.pgSettings.PropertyValueChanged += new System.Windows.Forms.PropertyValueChangedEventHandler(this.pgSettings_PropertyValueChanged); // - // btnAdd - // - resources.ApplyResources(this.btnAdd, "btnAdd"); - this.btnAdd.Name = "btnAdd"; - this.btnAdd.UseVisualStyleBackColor = true; - this.btnAdd.Click += new System.EventHandler(this.btnAdd_Click); - // // lvEffects // this.lvEffects.AllowDrop = true; @@ -105,27 +100,6 @@ private void InitializeComponent() // resources.ApplyResources(this.chEffect, "chEffect"); // - // btnRemove - // - resources.ApplyResources(this.btnRemove, "btnRemove"); - this.btnRemove.Name = "btnRemove"; - this.btnRemove.UseVisualStyleBackColor = true; - this.btnRemove.Click += new System.EventHandler(this.btnRemove_Click); - // - // btnClear - // - resources.ApplyResources(this.btnClear, "btnClear"); - this.btnClear.Name = "btnClear"; - this.btnClear.UseVisualStyleBackColor = true; - this.btnClear.Click += new System.EventHandler(this.btnClear_Click); - // - // btnDuplicate - // - resources.ApplyResources(this.btnDuplicate, "btnDuplicate"); - this.btnDuplicate.Name = "btnDuplicate"; - this.btnDuplicate.UseVisualStyleBackColor = true; - this.btnDuplicate.Click += new System.EventHandler(this.btnDuplicate_Click); - // // btnSaveImage // resources.ApplyResources(this.btnSaveImage, "btnSaveImage"); @@ -191,28 +165,6 @@ private void InitializeComponent() resources.ApplyResources(this.tsmiLoadImageFromClipboard, "tsmiLoadImageFromClipboard"); this.tsmiLoadImageFromClipboard.Click += new System.EventHandler(this.tsmiLoadImageFromClipboard_Click); // - // btnAddPreset - // - resources.ApplyResources(this.btnAddPreset, "btnAddPreset"); - this.btnAddPreset.Name = "btnAddPreset"; - this.btnAddPreset.UseVisualStyleBackColor = true; - this.btnAddPreset.Click += new System.EventHandler(this.btnAddPreset_Click); - // - // btnRemovePreset - // - resources.ApplyResources(this.btnRemovePreset, "btnRemovePreset"); - this.btnRemovePreset.Name = "btnRemovePreset"; - this.btnRemovePreset.UseVisualStyleBackColor = true; - this.btnRemovePreset.Click += new System.EventHandler(this.btnRemovePreset_Click); - // - // cbPresets - // - this.cbPresets.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.cbPresets.FormattingEnabled = true; - resources.ApplyResources(this.cbPresets, "cbPresets"); - this.cbPresets.Name = "cbPresets"; - this.cbPresets.SelectedIndexChanged += new System.EventHandler(this.cbPresets_SelectedIndexChanged); - // // lblPresetName // resources.ApplyResources(this.lblPresetName, "lblPresetName"); @@ -246,20 +198,6 @@ private void InitializeComponent() this.btnUploadImage.UseVisualStyleBackColor = true; this.btnUploadImage.Click += new System.EventHandler(this.btnUploadImage_Click); // - // btnRefresh - // - resources.ApplyResources(this.btnRefresh, "btnRefresh"); - this.btnRefresh.Name = "btnRefresh"; - this.btnRefresh.UseVisualStyleBackColor = true; - this.btnRefresh.Click += new System.EventHandler(this.BtnRefresh_Click); - // - // btnDuplicatePreset - // - resources.ApplyResources(this.btnDuplicatePreset, "btnDuplicatePreset"); - this.btnDuplicatePreset.Name = "btnDuplicatePreset"; - this.btnDuplicatePreset.UseVisualStyleBackColor = true; - this.btnDuplicatePreset.Click += new System.EventHandler(this.btnDuplicatePreset_Click); - // // lblPresets // resources.ApplyResources(this.lblPresets, "lblPresets"); @@ -287,32 +225,121 @@ private void InitializeComponent() this.scMain.SplitterColor = System.Drawing.Color.White; this.scMain.SplitterLineColor = System.Drawing.Color.FromArgb(((int)(((byte)(189)))), ((int)(((byte)(189)))), ((int)(((byte)(189))))); // + // btnPresetNew + // + this.btnPresetNew.Image = global::ShareX.ImageEffectsLib.Properties.Resources.plus; + resources.ApplyResources(this.btnPresetNew, "btnPresetNew"); + this.btnPresetNew.Name = "btnPresetNew"; + this.btnPresetNew.UseVisualStyleBackColor = true; + this.btnPresetNew.Click += new System.EventHandler(this.btnPresetNew_Click); + // + // btnPresetRemove + // + this.btnPresetRemove.Image = global::ShareX.ImageEffectsLib.Properties.Resources.minus; + resources.ApplyResources(this.btnPresetRemove, "btnPresetRemove"); + this.btnPresetRemove.Name = "btnPresetRemove"; + this.btnPresetRemove.UseVisualStyleBackColor = true; + this.btnPresetRemove.Click += new System.EventHandler(this.btnPresetRemove_Click); + // + // btnPresetDuplicate + // + this.btnPresetDuplicate.Image = global::ShareX.ImageEffectsLib.Properties.Resources.document_copy; + resources.ApplyResources(this.btnPresetDuplicate, "btnPresetDuplicate"); + this.btnPresetDuplicate.Name = "btnPresetDuplicate"; + this.btnPresetDuplicate.UseVisualStyleBackColor = true; + this.btnPresetDuplicate.Click += new System.EventHandler(this.btnPresetDuplicate_Click); + // + // lvPresets + // + this.lvPresets.AutoFillColumn = true; + this.lvPresets.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { + this.chPreset}); + this.lvPresets.FullRowSelect = true; + this.lvPresets.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None; + this.lvPresets.HideSelection = false; + resources.ApplyResources(this.lvPresets, "lvPresets"); + this.lvPresets.MultiSelect = false; + this.lvPresets.Name = "lvPresets"; + this.lvPresets.UseCompatibleStateImageBehavior = false; + this.lvPresets.View = System.Windows.Forms.View.Details; + this.lvPresets.SelectedIndexChanged += new System.EventHandler(this.lvPresets_SelectedIndexChanged); + // + // chPreset + // + resources.ApplyResources(this.chPreset, "chPreset"); + // + // lblEffects + // + resources.ApplyResources(this.lblEffects, "lblEffects"); + this.lblEffects.Name = "lblEffects"; + // + // btnEffectAdd + // + this.btnEffectAdd.Image = global::ShareX.ImageEffectsLib.Properties.Resources.plus; + resources.ApplyResources(this.btnEffectAdd, "btnEffectAdd"); + this.btnEffectAdd.Name = "btnEffectAdd"; + this.btnEffectAdd.UseVisualStyleBackColor = true; + this.btnEffectAdd.Click += new System.EventHandler(this.btnEffectAdd_Click); + // + // btnEffectRemove + // + this.btnEffectRemove.Image = global::ShareX.ImageEffectsLib.Properties.Resources.minus; + resources.ApplyResources(this.btnEffectRemove, "btnEffectRemove"); + this.btnEffectRemove.Name = "btnEffectRemove"; + this.btnEffectRemove.UseVisualStyleBackColor = true; + this.btnEffectRemove.Click += new System.EventHandler(this.btnEffectRemove_Click); + // + // btnEffectDuplicate + // + this.btnEffectDuplicate.Image = global::ShareX.ImageEffectsLib.Properties.Resources.document_copy; + resources.ApplyResources(this.btnEffectDuplicate, "btnEffectDuplicate"); + this.btnEffectDuplicate.Name = "btnEffectDuplicate"; + this.btnEffectDuplicate.UseVisualStyleBackColor = true; + this.btnEffectDuplicate.Click += new System.EventHandler(this.btnEffectDuplicate_Click); + // + // btnEffectClear + // + this.btnEffectClear.Image = global::ShareX.ImageEffectsLib.Properties.Resources.eraser; + resources.ApplyResources(this.btnEffectClear, "btnEffectClear"); + this.btnEffectClear.Name = "btnEffectClear"; + this.btnEffectClear.UseVisualStyleBackColor = true; + this.btnEffectClear.Click += new System.EventHandler(this.btnEffectClear_Click); + // + // btnEffectRefresh + // + this.btnEffectRefresh.Image = global::ShareX.ImageEffectsLib.Properties.Resources.arrow_circle_double_135; + resources.ApplyResources(this.btnEffectRefresh, "btnEffectRefresh"); + this.btnEffectRefresh.Name = "btnEffectRefresh"; + this.btnEffectRefresh.UseVisualStyleBackColor = true; + this.btnEffectRefresh.Click += new System.EventHandler(this.btnEffectRefresh_Click); + // // ImageEffectsForm // resources.ApplyResources(this, "$this"); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.BackColor = System.Drawing.SystemColors.Window; this.CancelButton = this.btnClose; + this.Controls.Add(this.btnEffectRefresh); + this.Controls.Add(this.btnEffectClear); + this.Controls.Add(this.btnEffectDuplicate); + this.Controls.Add(this.btnEffectRemove); + this.Controls.Add(this.btnEffectAdd); + this.Controls.Add(this.lblEffects); + this.Controls.Add(this.lvPresets); + this.Controls.Add(this.btnPresetDuplicate); + this.Controls.Add(this.btnPresetRemove); + this.Controls.Add(this.btnPresetNew); this.Controls.Add(this.scMain); this.Controls.Add(this.btnPackager); this.Controls.Add(this.lblPresets); - this.Controls.Add(this.btnDuplicatePreset); - this.Controls.Add(this.btnRefresh); this.Controls.Add(this.btnUploadImage); this.Controls.Add(this.btnOK); this.Controls.Add(this.btnClose); this.Controls.Add(this.txtPresetName); this.Controls.Add(this.lblPresetName); - this.Controls.Add(this.cbPresets); - this.Controls.Add(this.btnRemovePreset); - this.Controls.Add(this.btnAddPreset); this.Controls.Add(this.mbLoadImage); this.Controls.Add(this.eiImageEffects); this.Controls.Add(this.btnSaveImage); - this.Controls.Add(this.btnDuplicate); - this.Controls.Add(this.btnClear); - this.Controls.Add(this.btnRemove); - this.Controls.Add(this.btnAdd); this.Controls.Add(this.lvEffects); this.Name = "ImageEffectsForm"; this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide; @@ -330,13 +357,9 @@ private void InitializeComponent() #endregion private System.Windows.Forms.PropertyGrid pgSettings; - private System.Windows.Forms.Button btnAdd; private ShareX.HelpersLib.MyListView lvEffects; private System.Windows.Forms.ColumnHeader chEffect; - private System.Windows.Forms.Button btnRemove; private ShareX.HelpersLib.MyPictureBox pbResult; - private System.Windows.Forms.Button btnClear; - private System.Windows.Forms.Button btnDuplicate; private System.Windows.Forms.Button btnSaveImage; private ShareX.HelpersLib.ExportImportControl eiImageEffects; private System.Windows.Forms.ContextMenuStrip cmsEffects; @@ -344,19 +367,25 @@ private void InitializeComponent() private System.Windows.Forms.ContextMenuStrip cmsLoadImage; private System.Windows.Forms.ToolStripMenuItem tsmiLoadImageFromFile; private System.Windows.Forms.ToolStripMenuItem tsmiLoadImageFromClipboard; - private System.Windows.Forms.Button btnAddPreset; - private System.Windows.Forms.Button btnRemovePreset; - private System.Windows.Forms.ComboBox cbPresets; private System.Windows.Forms.Label lblPresetName; private System.Windows.Forms.TextBox txtPresetName; private System.Windows.Forms.Button btnClose; private System.Windows.Forms.Button btnOK; private System.Windows.Forms.Button btnUploadImage; - private System.Windows.Forms.Button btnRefresh; - private System.Windows.Forms.Button btnDuplicatePreset; private System.Windows.Forms.Label lblPresets; private System.Windows.Forms.Button btnPackager; private HelpersLib.SplitContainerCustomSplitter scMain; + private System.Windows.Forms.Button btnPresetNew; + private System.Windows.Forms.Button btnPresetRemove; + private System.Windows.Forms.Button btnPresetDuplicate; + private HelpersLib.MyListView lvPresets; + private System.Windows.Forms.Label lblEffects; + private System.Windows.Forms.Button btnEffectAdd; + private System.Windows.Forms.Button btnEffectRemove; + private System.Windows.Forms.Button btnEffectDuplicate; + private System.Windows.Forms.Button btnEffectClear; + private System.Windows.Forms.Button btnEffectRefresh; + private System.Windows.Forms.ColumnHeader chPreset; } } diff --git a/ShareX.ImageEffectsLib/ImageEffectsForm.cs b/ShareX.ImageEffectsLib/ImageEffectsForm.cs index 815d9b1ff..ea9c2ed98 100644 --- a/ShareX.ImageEffectsLib/ImageEffectsForm.cs +++ b/ShareX.ImageEffectsLib/ImageEffectsForm.cs @@ -192,10 +192,11 @@ private void LoadSettings() { foreach (ImageEffectPreset preset in Presets) { - cbPresets.Items.Add(preset); + ListViewItem lvi = new ListViewItem(preset.ToString()); + lvPresets.Items.Add(lvi); } - cbPresets.SelectedIndex = SelectedPresetIndex.Clamp(0, Presets.Count - 1); + lvPresets.SelectedIndex = SelectedPresetIndex.Clamp(0, Presets.Count - 1); } UpdateControlStates(); @@ -203,13 +204,20 @@ private void LoadSettings() private ImageEffectPreset GetSelectedPreset() { - int index = cbPresets.SelectedIndex; + return GetSelectedPreset(out _); + } + + private ImageEffectPreset GetSelectedPreset(out ListViewItem lvi) + { + int index = lvPresets.SelectedIndex; if (Presets.IsValidIndex(index)) { + lvi = lvPresets.Items[index]; return Presets[index]; } + lvi = null; return null; } @@ -223,9 +231,10 @@ private void AddPreset(ImageEffectPreset preset) if (preset != null) { Presets.Add(preset); - cbPresets.Items.Add(preset); + ListViewItem lvi = new ListViewItem(preset.ToString()); + lvPresets.Items.Add(lvi); ignorePresetsSelectedIndexChanged = true; - cbPresets.SelectedIndex = cbPresets.Items.Count - 1; + lvPresets.SelectLast(); ignorePresetsSelectedIndexChanged = false; LoadPreset(preset); txtPresetName.Focus(); @@ -282,9 +291,9 @@ private void UpdatePreview() private void UpdateControlStates() { - btnRemovePreset.Enabled = btnDuplicatePreset.Enabled = cbPresets.Enabled = txtPresetName.Enabled = btnAdd.Enabled = cbPresets.SelectedIndex > -1; - btnRemove.Enabled = btnDuplicate.Enabled = lvEffects.SelectedItems.Count > 0; - btnClear.Enabled = lvEffects.Items.Count > 0; + btnPresetRemove.Enabled = btnPresetDuplicate.Enabled = lvPresets.Enabled = txtPresetName.Enabled = btnEffectAdd.Enabled = lvPresets.SelectedItems.Count > 0; + btnEffectRemove.Enabled = btnEffectDuplicate.Enabled = lvEffects.SelectedItems.Count > 0; + btnEffectClear.Enabled = lvEffects.Items.Count > 0; } private void GeneratePreviewImage(int padding) @@ -447,33 +456,33 @@ private void ImageEffectsForm_Shown(object sender, EventArgs e) this.ForceActivate(); } - private void btnAddPreset_Click(object sender, EventArgs e) + private void btnPresetNew_Click(object sender, EventArgs e) { AddPreset(); } - private void btnRemovePreset_Click(object sender, EventArgs e) + private void btnPresetRemove_Click(object sender, EventArgs e) { - int selected = cbPresets.SelectedIndex; + int selected = lvPresets.SelectedIndex; if (selected > -1) { - cbPresets.Items.RemoveAt(selected); + lvPresets.Items.RemoveAt(selected); Presets.RemoveAt(selected); - if (cbPresets.Items.Count > 0) + if (lvPresets.Items.Count > 0) { - cbPresets.SelectedIndex = selected == cbPresets.Items.Count ? cbPresets.Items.Count - 1 : selected; + lvPresets.SelectedIndex = selected == lvPresets.Items.Count ? lvPresets.Items.Count - 1 : selected; } else { ClearFields(); - btnAddPreset.Focus(); + btnPresetNew.Focus(); } } } - private void btnDuplicatePreset_Click(object sender, EventArgs e) + private void btnPresetDuplicate_Click(object sender, EventArgs e) { ImageEffectPreset preset = GetSelectedPreset(); @@ -484,9 +493,9 @@ private void btnDuplicatePreset_Click(object sender, EventArgs e) } } - private void cbPresets_SelectedIndexChanged(object sender, EventArgs e) + private void lvPresets_SelectedIndexChanged(object sender, EventArgs e) { - SelectedPresetIndex = cbPresets.SelectedIndex; + SelectedPresetIndex = lvPresets.SelectedIndex; if (!ignorePresetsSelectedIndexChanged) { @@ -500,27 +509,27 @@ private void cbPresets_SelectedIndexChanged(object sender, EventArgs e) private void txtPresetName_TextChanged(object sender, EventArgs e) { - ImageEffectPreset preset = GetSelectedPreset(); + ListViewItem lvi; + ImageEffectPreset preset = GetSelectedPreset(out lvi); + if (preset != null) { preset.Name = txtPresetName.Text; - ignorePresetsSelectedIndexChanged = true; - cbPresets.RefreshItems(); - ignorePresetsSelectedIndexChanged = false; + lvi.Text = preset.ToString(); } } - private void btnAdd_Click(object sender, EventArgs e) + private void btnEffectAdd_Click(object sender, EventArgs e) { - cmsEffects.Show(btnAdd, 0, btnAdd.Height + 1); + cmsEffects.Show(btnEffectAdd, 0, btnEffectAdd.Height + 1); } - private void btnRemove_Click(object sender, EventArgs e) + private void btnEffectRemove_Click(object sender, EventArgs e) { RemoveSelectedEffects(); } - private void btnDuplicate_Click(object sender, EventArgs e) + private void btnEffectDuplicate_Click(object sender, EventArgs e) { ImageEffectPreset preset = GetSelectedPreset(); @@ -541,7 +550,7 @@ private void btnDuplicate_Click(object sender, EventArgs e) } } - private void btnClear_Click(object sender, EventArgs e) + private void btnEffectClear_Click(object sender, EventArgs e) { ImageEffectPreset preset = GetSelectedPreset(); @@ -554,7 +563,7 @@ private void btnClear_Click(object sender, EventArgs e) } } - private void BtnRefresh_Click(object sender, EventArgs e) + private void btnEffectRefresh_Click(object sender, EventArgs e) { UpdatePreview(); } diff --git a/ShareX.ImageEffectsLib/ImageEffectsForm.resx b/ShareX.ImageEffectsLib/ImageEffectsForm.resx index 32c9892f4..58b0d2368 100644 --- a/ShareX.ImageEffectsLib/ImageEffectsForm.resx +++ b/ShareX.ImageEffectsLib/ImageEffectsForm.resx @@ -126,7 +126,7 @@ 0, 0 - 330, 424 + 330, 496 @@ -144,38 +144,17 @@ 0 - - 408, 40 - - - 104, 24 - - - 9 - - - Add - - - btnAdd - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 21 - Top, Bottom, Left + + 164 + - 8, 72 + 8, 322 - 168, 424 + 168, 222 14 @@ -190,82 +169,7 @@ $this - 22 - - - 164 - - - 520, 40 - - - 104, 24 - - - 10 - - - Remove - - - btnRemove - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 20 - - - 744, 40 - - - 104, 24 - - - 12 - - - Clear - - - btnClear - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 19 - - - 632, 40 - - - 104, 24 - - - 11 - - - Duplicate - - - btnDuplicate - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 18 + 23 Bottom, Left @@ -274,7 +178,7 @@ True - 456, 504 + 456, 552 120, 24 @@ -298,13 +202,13 @@ $this - 17 + 22 Bottom, Left - 8, 504 + 8, 552 192, 24 @@ -322,7 +226,7 @@ $this - 16 + 21 Fill @@ -331,7 +235,7 @@ 0, 0 - 440, 424 + 496, 496 16 @@ -364,7 +268,7 @@ Bottom, Left - 328, 504 + 328, 552 126, 17 @@ -400,7 +304,7 @@ $this - 15 + 20 130, 22 @@ -414,89 +318,20 @@ From clipboard - - 408, 8 - - - 136, 24 - - - 4 - - - New preset - - - btnAddPreset - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 14 - - - 552, 8 - - - 136, 24 - - - 5 - - - Remove preset - - - btnRemovePreset - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 13 - - - 104, 10 - - - 296, 21 - - - 3 - - - cbPresets - - - System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 12 - True - 5, 46 + 181, 8 - 38, 13 + 69, 13 7 - Name: + Preset name: lblPresetName @@ -508,13 +343,13 @@ $this - 11 + 19 - 104, 42 + 184, 24 - 296, 20 + 168, 20 8 @@ -529,13 +364,13 @@ $this - 10 + 18 Bottom, Right - 840, 504 + 896, 552 120, 24 @@ -556,13 +391,13 @@ $this - 9 + 17 Bottom, Right - 712, 504 + 768, 552 120, 24 @@ -586,13 +421,13 @@ $this - 8 + 16 Bottom, Left - 584, 504 + 584, 552 120, 24 @@ -616,61 +451,13 @@ $this - 7 - - - 856, 40 - - - 104, 24 - - - 13 - - - Refresh - - - btnRefresh - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 6 - - - 696, 8 - - - 136, 24 - - - 6 - - - Duplicate preset - - - btnDuplicatePreset - - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 5 + 15 True - 5, 14 + 5, 8 45, 13 @@ -691,13 +478,13 @@ $this - 4 + 14 Bottom, Left - 200, 504 + 200, 552 120, 24 @@ -718,13 +505,13 @@ $this - 3 + 13 Top, Bottom, Left, Right - 184, 72 + 184, 48 scMain.Panel1 @@ -751,7 +538,7 @@ 1 - 776, 424 + 832, 496 330 @@ -772,7 +559,226 @@ $this - 0 + 12 + + + 8, 24 + + + 24, 24 + + + 23 + + + btnPresetNew + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 11 + + + 34, 24 + + + 24, 24 + + + 24 + + + btnPresetRemove + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 10 + + + 60, 24 + + + 24, 24 + + + 25 + + + btnPresetDuplicate + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 9 + + + 8, 50 + + + 168, 222 + + + 26 + + + lvPresets + + + ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=13.1.1.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 8 + + + 164 + + + True + + + 5, 280 + + + 43, 13 + + + 27 + + + Effects: + + + lblEffects + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 7 + + + 8, 296 + + + 24, 24 + + + 28 + + + btnEffectAdd + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 6 + + + 34, 296 + + + 24, 24 + + + 29 + + + btnEffectRemove + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 5 + + + 60, 296 + + + 24, 24 + + + 30 + + + btnEffectDuplicate + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 4 + + + 86, 296 + + + 24, 24 + + + 31 + + + btnEffectClear + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 3 + + + 112, 296 + + + 24, 24 + + + 32 + + + btnEffectRefresh + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 2 True @@ -784,7 +790,10 @@ 6, 13 - 969, 535 + 1025, 585 + + + NoControl CenterScreen @@ -810,6 +819,12 @@ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + chPreset + + + System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + ImageEffectsForm diff --git a/ShareX.ImageEffectsLib/Properties/Resources.Designer.cs b/ShareX.ImageEffectsLib/Properties/Resources.Designer.cs index 871af8190..c9a10c8b8 100644 --- a/ShareX.ImageEffectsLib/Properties/Resources.Designer.cs +++ b/ShareX.ImageEffectsLib/Properties/Resources.Designer.cs @@ -60,6 +60,36 @@ internal class Resources { } } + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap arrow_circle_double_135 { + get { + object obj = ResourceManager.GetObject("arrow-circle-double-135", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap document_copy { + get { + object obj = ResourceManager.GetObject("document-copy", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap eraser { + get { + object obj = ResourceManager.GetObject("eraser", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Looks up a localized string similar to Adjustments. /// @@ -114,5 +144,25 @@ internal class Resources { "me___2__ms", resourceCulture); } } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap minus { + get { + object obj = ResourceManager.GetObject("minus", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap plus { + get { + object obj = ResourceManager.GetObject("plus", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } } } diff --git a/ShareX.ImageEffectsLib/Properties/Resources.resx b/ShareX.ImageEffectsLib/Properties/Resources.resx index 23e700595..491376ad3 100644 --- a/ShareX.ImageEffectsLib/Properties/Resources.resx +++ b/ShareX.ImageEffectsLib/Properties/Resources.resx @@ -1,119 +1,154 @@  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 1.3 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - Drawings + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + + ..\Resources\eraser.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - Manipulations - - - Adjustments + + ..\Resources\plus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a Filters + + ..\Resources\minus.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + Drawings + Image effects - Width: {0}, Height: {1}, Render time: {2} ms + + Manipulations + + + ..\Resources\document-copy.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + Cancel + + Adjustments + + + ..\Resources\arrow-circle-double-135.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + \ No newline at end of file diff --git a/ShareX.ImageEffectsLib/Resources/arrow-circle-double-135.png b/ShareX.ImageEffectsLib/Resources/arrow-circle-double-135.png new file mode 100644 index 0000000000000000000000000000000000000000..06f1ee390a69aede315c33ab6ba8c085bcdd003e GIT binary patch literal 792 zcmV+z1LypSP)EC;hyLIe&>0f-+2gQ40f`JC2;i49PokwJkJAXv$+T%L5!V5v?59o z-w?z2?=wni%x1Io;&<@lt?E90n_wf)v1<)A_QSQ+_GV`(--u_#Sjh$FqRJJ@ z*sy6Boqq{jfy$Uq9{rZaI@uQCQm&Ff^^Q!Rstd zE@y#qguEY%O=BNEaXkMDV-Sw0cf*m@wyS6A<(~^_D65dbP}MB~O;yWwIe1Z1b@nBi zT0-@=C@^6t3gF(0XuENt32)AWAaYi@7N;l!Rn_ehmoN;v5}8kCOlnS0(?l`{f*=Gf zrye|=3jJdrA)$gmK9{@w;@z~o-DAp(5R&`QwvC#RB%coMFBj0N*B_=M1p!@Eag;@~0?~niK+Z!TD?Vdw{eS*KyP26sWCBTxu!rJWIOloF!%2c%h zoSU!>=O*2MeKP~J%&K{aa9lrCl$!YHWH*dXw&PioRRUrRF=#avZ%+L;jXPPt1sDL; W*<1`LTn4ZJ0000VHn4sd+${IL2G1= z36bDf1};({2<28od(nRovpUHL z;qleyp6By^zrN22mSw?7sdNMY8?bsk8;0>^8U_S{L7telUO@kNh5Gv#BuZex=3}W; zo$5NwOcOLLHW4h#GCVXImslcTd^$vFdmmVGmw#vUfpo#bMiT+%YzDK*1jgerj7B4P zDwnJH{1D5MtK@NjuImCW5HW(11mE2*ytUiV>U7|`Qh}XBqB7|BZ?W_oW6KMWYye}} z%oy@e$q-LJ&SoK>$+(s-EUSo?ihfIT1)4^!Tmgrm|NmNY0fOC35c&hXmcoGmgm70B z1@3A!I7p=`Em=POvp@<6fC07*uO))eD&+G(Hx-RWq26q&E1RCwB?lh2D1VHn4scXm_|RPb*o z2t2F@!9+q64R!|)wREXlm!UK;JjfC*NEabIL{LnZWuc;5?7HNoAE&4}dY4uA7Bo7F zznz)4=Y4a;*7ejgygcu`?|k0x_kG@X2q6UQh{xlQN~OTzaKP2V8xU}e%?d!m6d(ye z3FglRz)uq>7}!JxMj{c2#bV%cx!{txZUIg1etP?iiB)&*+w1;dlVT>5*#z>nEr66% zJt}oI4Xp@}uDvUL+_|^KjRAZYU~@3|*6#6Pse>@3Xx_4*)9JwN+WP|&K*DcskZd-~ z9XOrNWfnzo+p?_ilWP%0?{>K|vriUTKR*Y*-w(Bi`_I=LpwjkqIt}M?ImJkYfTAi> zW)4_iYc~J(DKFxda1owNCgFTOugqpMFijKOcazISelK93&j%-u_Fv%Wsjv!<$K!CJ zP*BhThwbLNa}$1@o#7f5hpUgDzQkiZK_B0QRpnx_s9^pFX03_J)?R|cr@4bySiob% zzVc(VmCNO_G8&E6j-uUeV+{rHdcCms;kEpL&?ceei#;zg?JO>firZMi qS0)6!_zO_`=}1{rUgjo>{e_@Ct*LT1pDb>qhAhaxdm|a*I!TQf{_j-o+Aw2p$Fw1BO|P W%Vbo~D_sG)hQZU-&t;ucLK6Vx$XJ5_ literal 0 HcmV?d00001 diff --git a/ShareX.ImageEffectsLib/Resources/plus.png b/ShareX.ImageEffectsLib/Resources/plus.png new file mode 100644 index 0000000000000000000000000000000000000000..f64b0119977b809536bc29d6e9d6eb4ded98cd93 GIT binary patch literal 482 zcmV<80UiE{P)2%>E+U}GT&ieO=(M)7_(yUy&~dACWdvas3Ro0)IF z@7sy6*1{~KNk8gj2L>AtendczLd7Wr3tcZh)L@U_8DOw-4-g4}MOh_SP)B=*iWr_< zpZnmk@fo=Xc(h=BwX<^<=aDL9YHf*e<4Cq3{6C1kiF zkt9hNfY=f1DTbE-J`FL{Y@@bq>~WaS#M0t3QD7^6Fwj-|G6BG7ST-&oALbP&f$% z05wV7AM4EQ>jhnTAjLKa_}9eRE8xtyQFIHtjnL@%Xbq%$o&N#ork|>7%#z_}Oik59 z?FLqfDFD=-Z<&W@+l8)AU45keGMd12.0.3 + + + + + + + + + + + + + + +