Added save image to image effects form, Added image effects to tools menu

This commit is contained in:
Jaex 2013-11-08 03:14:04 +02:00
parent 22e97b48cb
commit a446b4feba
5 changed files with 96 additions and 75 deletions

View file

@ -41,10 +41,10 @@ private void InitializeComponent()
this.btnMoveDown = new System.Windows.Forms.Button();
this.btnDuplicate = new System.Windows.Forms.Button();
this.lblStatus = new System.Windows.Forms.Label();
this.btnTest = new System.Windows.Forms.Button();
this.btnRefresh = new System.Windows.Forms.Button();
this.btnLoadImage = new System.Windows.Forms.Button();
this.pbResult = new HelpersLib.MyPictureBox();
this.btnSaveImage = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// tvEffects
@ -189,18 +189,6 @@ private void InitializeComponent()
this.lblStatus.TabIndex = 12;
this.lblStatus.Text = "Status";
//
// btnTest
//
this.btnTest.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btnTest.Location = new System.Drawing.Point(708, 734);
this.btnTest.Name = "btnTest";
this.btnTest.Size = new System.Drawing.Size(72, 24);
this.btnTest.TabIndex = 13;
this.btnTest.Text = "Test";
this.btnTest.UseVisualStyleBackColor = true;
this.btnTest.Visible = false;
this.btnTest.Click += new System.EventHandler(this.btnTest_Click);
//
// btnRefresh
//
this.btnRefresh.Location = new System.Drawing.Point(408, 8);
@ -214,11 +202,12 @@ private void InitializeComponent()
//
// btnLoadImage
//
this.btnLoadImage.Location = new System.Drawing.Point(618, 734);
this.btnLoadImage.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btnLoadImage.Location = new System.Drawing.Point(576, 734);
this.btnLoadImage.Name = "btnLoadImage";
this.btnLoadImage.Size = new System.Drawing.Size(84, 24);
this.btnLoadImage.Size = new System.Drawing.Size(99, 24);
this.btnLoadImage.TabIndex = 15;
this.btnLoadImage.Text = "Load image";
this.btnLoadImage.Text = "Load image...";
this.btnLoadImage.UseVisualStyleBackColor = true;
this.btnLoadImage.Visible = false;
this.btnLoadImage.Click += new System.EventHandler(this.btnLoadImage_Click);
@ -237,14 +226,26 @@ private void InitializeComponent()
this.pbResult.Size = new System.Drawing.Size(688, 448);
this.pbResult.TabIndex = 11;
//
// btnSaveImage
//
this.btnSaveImage.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btnSaveImage.Location = new System.Drawing.Point(681, 734);
this.btnSaveImage.Name = "btnSaveImage";
this.btnSaveImage.Size = new System.Drawing.Size(99, 24);
this.btnSaveImage.TabIndex = 16;
this.btnSaveImage.Text = "Save image...";
this.btnSaveImage.UseVisualStyleBackColor = true;
this.btnSaveImage.Visible = false;
this.btnSaveImage.Click += new System.EventHandler(this.btnSaveImage_Click);
//
// ImageEffectsForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(944, 766);
this.Controls.Add(this.btnSaveImage);
this.Controls.Add(this.btnLoadImage);
this.Controls.Add(this.btnRefresh);
this.Controls.Add(this.btnTest);
this.Controls.Add(this.lblStatus);
this.Controls.Add(this.btnDuplicate);
this.Controls.Add(this.btnMoveDown);
@ -283,9 +284,9 @@ private void InitializeComponent()
private System.Windows.Forms.Button btnMoveDown;
private System.Windows.Forms.Button btnDuplicate;
private System.Windows.Forms.Label lblStatus;
private System.Windows.Forms.Button btnTest;
private System.Windows.Forms.Button btnRefresh;
private System.Windows.Forms.Button btnLoadImage;
private System.Windows.Forms.Button btnSaveImage;
}
}

View file

@ -28,6 +28,7 @@
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using System.Drawing.Imaging;
using System.Linq;
using System.Windows.Forms;
@ -54,11 +55,11 @@ public ImageEffectsForm(Image img, List<ImageEffect> effects = null)
UpdatePreview();
}
public void Test()
public void EditorMode()
{
btnRefresh.Visible = true;
btnLoadImage.Visible = true;
btnTest.Visible = true;
btnSaveImage.Visible = true;
}
private void AddAllEffectsToTreeView()
@ -320,11 +321,21 @@ private void btnLoadImage_Click(object sender, EventArgs e)
}
}
private void btnTest_Click(object sender, EventArgs e)
private void btnSaveImage_Click(object sender, EventArgs e)
{
AddEffect(new Background { Color = Color.Black });
AddEffect(new Border { Color = Color.Red });
UpdatePreview();
using (SaveFileDialog sfd = new SaveFileDialog())
{
sfd.DefaultExt = ".png";
sfd.Filter = "PNG image (*.png)|*.png";
if (sfd.ShowDialog() == DialogResult.OK)
{
using (Image preview = ApplyEffects())
{
preview.Save(sfd.FileName, ImageFormat.Png);
}
}
}
}
private void btnOK_Click(object sender, EventArgs e)

View file

@ -91,6 +91,7 @@ private void InitializeComponent()
this.tsmiScreenColorPicker = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiHashCheck = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiIndexFolder = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiImageEffects = new System.Windows.Forms.ToolStripMenuItem();
this.tsbScreenshotsFolder = new System.Windows.Forms.ToolStripButton();
this.tsbHistory = new System.Windows.Forms.ToolStripButton();
this.tsbImageHistory = new System.Windows.Forms.ToolStripButton();
@ -105,7 +106,6 @@ private void InitializeComponent()
this.tsmiTestURLShortener = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiTestUploaders = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiTestShapeCapture = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiTestImageEffects = new System.Windows.Forms.ToolStripMenuItem();
this.scMain = new HelpersLib.SplitContainerCustomSplitter();
this.lblDragAndDropTip = new System.Windows.Forms.Label();
this.lblSplitter = new System.Windows.Forms.Label();
@ -208,6 +208,7 @@ private void InitializeComponent()
this.tssTray3 = new System.Windows.Forms.ToolStripSeparator();
this.tsmiTrayExit = new System.Windows.Forms.ToolStripMenuItem();
this.ssToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiTrayImageEffects = new System.Windows.Forms.ToolStripMenuItem();
this.tsMain.SuspendLayout();
this.scMain.Panel1.SuspendLayout();
this.scMain.Panel2.SuspendLayout();
@ -530,7 +531,8 @@ private void InitializeComponent()
this.tsddbTools.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsmiScreenColorPicker,
this.tsmiHashCheck,
this.tsmiIndexFolder});
this.tsmiIndexFolder,
this.tsmiImageEffects});
this.tsddbTools.Image = global::ShareX.Properties.Resources.toolbox;
this.tsddbTools.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.tsddbTools.ImageTransparentColor = System.Drawing.Color.Magenta;
@ -562,6 +564,14 @@ private void InitializeComponent()
this.tsmiIndexFolder.Text = "Index folder...";
this.tsmiIndexFolder.Click += new System.EventHandler(this.tsmiIndexFolder_Click);
//
// tsmiImageEffects
//
this.tsmiImageEffects.Image = global::ShareX.Properties.Resources.image_saturation;
this.tsmiImageEffects.Name = "tsmiImageEffects";
this.tsmiImageEffects.Size = new System.Drawing.Size(183, 22);
this.tsmiImageEffects.Text = "Image effects...";
this.tsmiImageEffects.Click += new System.EventHandler(this.tsmiImageEffects_Click);
//
// tsbScreenshotsFolder
//
this.tsbScreenshotsFolder.Image = global::ShareX.Properties.Resources.folder_open_image;
@ -634,8 +644,7 @@ private void InitializeComponent()
this.tsmiTestFileUpload,
this.tsmiTestURLShortener,
this.tsmiTestUploaders,
this.tsmiTestShapeCapture,
this.tsmiTestImageEffects});
this.tsmiTestShapeCapture});
this.tsmiDebug.Image = global::ShareX.Properties.Resources.block;
this.tsmiDebug.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.tsmiDebug.ImageTransparentColor = System.Drawing.Color.Magenta;
@ -699,14 +708,6 @@ private void InitializeComponent()
this.tsmiTestShapeCapture.Text = "Test shape capture...";
this.tsmiTestShapeCapture.Click += new System.EventHandler(this.tsmiTestShapeCapture_Click);
//
// tsmiTestImageEffects
//
this.tsmiTestImageEffects.Image = global::ShareX.Properties.Resources.image_saturation;
this.tsmiTestImageEffects.Name = "tsmiTestImageEffects";
this.tsmiTestImageEffects.Size = new System.Drawing.Size(182, 22);
this.tsmiTestImageEffects.Text = "Test image effects...";
this.tsmiTestImageEffects.Click += new System.EventHandler(this.tsmiTestImageEffects_Click);
//
// scMain
//
this.scMain.Dock = System.Windows.Forms.DockStyle.Fill;
@ -1463,7 +1464,8 @@ private void InitializeComponent()
this.tsmiTrayTools.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsmiTrayScreenColorPicker,
this.tsmiTrayHashCheck,
this.tsmiTrayIndexFolder});
this.tsmiTrayIndexFolder,
this.tsmiTrayImageEffects});
this.tsmiTrayTools.Image = global::ShareX.Properties.Resources.toolbox;
this.tsmiTrayTools.Name = "tsmiTrayTools";
this.tsmiTrayTools.Size = new System.Drawing.Size(188, 22);
@ -1552,6 +1554,14 @@ private void InitializeComponent()
this.ssToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.ssToolStripMenuItem.Text = "ss";
//
// tsmiTrayImageEffects
//
this.tsmiTrayImageEffects.Image = global::ShareX.Properties.Resources.image_saturation;
this.tsmiTrayImageEffects.Name = "tsmiTrayImageEffects";
this.tsmiTrayImageEffects.Size = new System.Drawing.Size(183, 22);
this.tsmiTrayImageEffects.Text = "Image effects...";
this.tsmiTrayImageEffects.Click += new System.EventHandler(this.tsmiImageEffects_Click);
//
// MainForm
//
this.AllowDrop = true;
@ -1736,7 +1746,8 @@ private void InitializeComponent()
private System.Windows.Forms.ToolStripSeparator tssTray3;
private System.Windows.Forms.ToolStripMenuItem tsmiIndexFolder;
private System.Windows.Forms.ToolStripMenuItem tsmiTrayIndexFolder;
private System.Windows.Forms.ToolStripMenuItem tsmiTestImageEffects;
public System.Windows.Forms.Label lblDragAndDropTip;
private System.Windows.Forms.ToolStripMenuItem tsmiImageEffects;
private System.Windows.Forms.ToolStripMenuItem tsmiTrayImageEffects;
}
}

View file

@ -679,13 +679,6 @@ private void tsmiTestShapeCapture_Click(object sender, EventArgs e)
new RegionCapturePreview(Program.DefaultTaskSettings.CaptureSettings.SurfaceOptions).Show();
}
private void tsmiTestImageEffects_Click(object sender, EventArgs e)
{
ImageEffectsForm form = new ImageEffectsForm(ShareXResources.Logo);
form.Test();
form.Show();
}
private void tsmiScreenRecorderGIF_Click(object sender, EventArgs e)
{
DoScreenRecorder();
@ -762,6 +755,13 @@ private void tsmiIndexFolder_Click(object sender, EventArgs e)
OpenIndexFolder();
}
private void tsmiImageEffects_Click(object sender, EventArgs e)
{
ImageEffectsForm form = new ImageEffectsForm(ShareXResources.Logo);
form.EditorMode();
form.Show();
}
private void tsbScreenshotsFolder_Click(object sender, EventArgs e)
{
Helpers.OpenFolder(Program.ScreenshotsPath);

View file

@ -135,31 +135,30 @@
</data>
<data name="tsmiIndexFolder.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAABcElEQVQ4T5WSvUsDQRDFZysr
/4EQEQMWwU5tBDEoKUWsBC0C50cUrDzxAxQ0xV0MFiJRSFDQQkGQQCBoI1jYCIkg2iiIgoWFFoFIiGjA
cWYvJ+d6xeXBb2eZ5T22eICIEtIkH7bycYvCGsCVAu/4TfocAT7pJE2E/wRoRExBcwuYlu6a2gMAl4bE
wHIWv0sZCd95x29qgF86HdJ6AS5isF59O8Svl30J33l3vgINasAMwSG/MxIC/9kybH4872D5YQsrTyl8
LZjIO2JODWjiwylzGCC3AKn3uw0s3sSR5/2pjp/VKvJeDViUrpraKO5Yl+yVbhNYvDaQZ/5oHJOPFeS9
GtAsnaSBToDdKYt0FMztMThRoX2PGrAq3TXl6D9Mdh4gM/sfCrF8joAWPoQQEA2L+ntAxgSbbToCor4e
kKnVGcCM9gnvPSDDEhEkDuwZCYmg5x64MdItvPfADVKj5x64QfLp/ZBUO8AMdcEgIsIPf0PbCdPaFycA
AAAASUVORK5CYII=
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFwSURBVDhPlZK9SwNBEMVnKyv/gRARAxbBTm0EMSgp
RawELQLnRxSsPPEDFDTFXQwWIlFIUNBCQZBAIGgjWNgIiSDaKIiChYUWgUiIaMBxZi8n53rF5cFvZ5nl
PbZ4gIgS0iQftvJxi8IawJUC7/hN+hwBPukkTYT/BGhETEFzC5iW7praAwCXhsTAcha/SxkJ33nHb2qA
Xzod0noBLmKwXn07xK+XfQnfeXe+Ag1qwAzBIb8zEgL/2TJsfjzvYPlhCytPKXwtmMg7Yk4NaOLDKXMY
ILcAqfe7DSzexJHn/amOn9Uq8l4NWJSumtoo7liX7JVuE1i8NpBn/mgck48V5L0a0CydpIFOgN0pi3QU
zO0xOFGhfY8asCrdNeXoP0x2HiAz+x8KsXyOgBY+hBAQDYv6e0DGBJttOgKivh6QqdUZwIz2Ce89IMMS
ESQO7BkJiaDnHrgx0i2898ANUqPnHrhB8un9kFQ7wAx1wSAiwg9/Q9sJ09oXJwAAAABJRU5ErkJggg==
</value>
</data>
<data name="tsmiShowDebugLog.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAACQUlEQVQ4T6WTTWsaURiFBf+A
+BOycZ9NFBq1RBydOGZmdMRvMX7Exqh1rLHQTaHtulDopohIpSIIIggiuuimMZZYqBBpA3bbZbddnr53
pikUsmjSxZn7cu89z33P3BkDgP+SQVGULVKElL+lmGfLIMtybD6fX242G1xdfcV6vcZq9RnL5RKLxQK0
hrMzpo9Uf8L5+QoXF18wmXy4ZF6DKIoPZrMZptMpTU4wHo8xGo0wHA4xGAzQ7/fR6/XQ7XbR6XTQbrfR
arXQbDZhNBrzLMKR1WqFIAiafD4feJ6H1+uFx+OB2+2Gy+WCw+HAzo4NNtsudnfv03hPB0iSVGDGRqOB
er0OVVVRLpdx1HmFbDaLVCoFSZKxt8dgDC7D7w8TlNcBZD5mp9ZqNVQqFRSLReTzeeTev0M8HqfNorbZ
4xGpwxDB4giF0tShqAOo1RPWcqlUQqFQQCaTQTKZRP7bDAcHEjhOwP5+gOoIgsEUwuEcgY8JrOgAylfm
OA65XA7Z9kvEYjE6IaQBeF5CoFrR6tQbtlagSCUcHlYhy1EdYLfbq9wzFelpG9HXz7XN1wrVVG0MBpO0
/larn35fYvTzB80ldADdQI294UAgQPmk3zfAI6iWNUOkUadTyxTrBInEMY26FCWpA7a3t0+dTidl8mtm
FkcQAohGjxB9fIp0+iHdxiN6sY2/9AdgsViesO+AdUFxNHGcjyBBiGKYssao3TgZEprpWoIgwWw2qwZ6
ZE0m04u7iHlv/MNuoxsn/10w/AIK+CkgW3XoRQAAAABJRU5ErkJggg==
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJBSURBVDhPpZNNaxpRGIUF/4D4E7Jxn00UGrVEHJ04
ZmZ0xG8xfsTGqHWssdBNoe26UOimiEilIggiCCK66KYxllioEGkDdttlt12evnemKRSyaNLFmfty7z3P
fc/cGQOA/5JBUZQtUoSUv6WYZ8sgy3JsPp9fbjYbXF19xXq9xmr1GcvlEovFArSGszOmj1R/wvn5ChcX
XzCZfLhkXoMoig9msxmm0ylNTjAejzEajTAcDjEYDNDv99Hr9dDtdtHpdNBut9FqtdBsNmE0GvMswpHV
aoUgCJp8Ph94nofX64XH44Hb7YbL5YLD4cDOjg022y52d+/TeE8HSJJUYMZGo4F6vQ5VVVEul3HUeYVs
NotUKgVJkrG3x2AMLsPvDxOU1wFkPman1mo1VCoVFItF5PN55N6/Qzwep82ittnjEanDEMHiCIXS1KGo
A6jVE9ZyqVRCoVBAJpNBMplE/tsMBwcSOE7A/n6A6giCwRTC4RyBjwms6ADKV+Y4DrlcDtn2S8RiMToh
pAF4XkKgWtHq1Bu2VqBIJRweViHLUR1gt9ur3DMV6Wkb0dfPtc3XCtVUbQwGk7T+Vquffl9i9PMHzSV0
AN1Ajb3hQCBA+aTfN8AjqJY1Q6RRp1PLFOsEicQxjboUJakDtre3T51OJ2Xya2YWRxACiEaPEH18inT6
Id3GI3qxjb/0B2CxWJ6w74B1QXE0cZyPIEGIYpiyxqjdOBkSmulagiDBbDarBnpkTSbTi7uIeW/8w26j
Gyf/XTD8Agr4KSBbdehFAAAAAElFTkSuQmCC
</value>
</data>
<metadata name="cmsUploadInfo.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
@ -173,15 +172,14 @@
</metadata>
<data name="tsmiTrayIndexFolder.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAABcElEQVQ4T5WSvUsDQRDFZysr
/4EQEQMWwU5tBDEoKUWsBC0C50cUrDzxAxQ0xV0MFiJRSFDQQkGQQCBoI1jYCIkg2iiIgoWFFoFIiGjA
cWYvJ+d6xeXBb2eZ5T22eICIEtIkH7bycYvCGsCVAu/4TfocAT7pJE2E/wRoRExBcwuYlu6a2gMAl4bE
wHIWv0sZCd95x29qgF86HdJ6AS5isF59O8Svl30J33l3vgINasAMwSG/MxIC/9kybH4872D5YQsrTyl8
LZjIO2JODWjiwylzGCC3AKn3uw0s3sSR5/2pjp/VKvJeDViUrpraKO5Yl+yVbhNYvDaQZ/5oHJOPFeS9
GtAsnaSBToDdKYt0FMztMThRoX2PGrAq3TXl6D9Mdh4gM/sfCrF8joAWPoQQEA2L+ntAxgSbbToCor4e
kKnVGcCM9gnvPSDDEhEkDuwZCYmg5x64MdItvPfADVKj5x64QfLp/ZBUO8AMdcEgIsIPf0PbCdPaFycA
AAAASUVORK5CYII=
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFwSURBVDhPlZK9SwNBEMVnKyv/gRARAxbBTm0EMSgp
RawELQLnRxSsPPEDFDTFXQwWIlFIUNBCQZBAIGgjWNgIiSDaKIiChYUWgUiIaMBxZi8n53rF5cFvZ5nl
PbZ4gIgS0iQftvJxi8IawJUC7/hN+hwBPukkTYT/BGhETEFzC5iW7praAwCXhsTAcha/SxkJ33nHb2qA
Xzod0noBLmKwXn07xK+XfQnfeXe+Ag1qwAzBIb8zEgL/2TJsfjzvYPlhCytPKXwtmMg7Yk4NaOLDKXMY
ILcAqfe7DSzexJHn/amOn9Uq8l4NWJSumtoo7liX7JVuE1i8NpBn/mgck48V5L0a0CydpIFOgN0pi3QU
zO0xOFGhfY8asCrdNeXoP0x2HiAz+x8KsXyOgBY+hBAQDYv6e0DGBJttOgKivh6QqdUZwIz2Ce89IMMS
ESQO7BkJiaDnHrgx0i2898ANUqPnHrhB8un9kFQ7wAx1wSAiwg9/Q9sJ09oXJwAAAABJRU5ErkJggg==
</value>
</data>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">