Added Open/Start Automate hotkey

This commit is contained in:
Jaex 2015-02-17 14:51:19 +02:00
parent 154514c8c3
commit 2c9dea8de8
11 changed files with 403 additions and 341 deletions

View file

@ -50,6 +50,7 @@ private void InitializeComponent()
//
// btnRun
//
this.btnRun.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(162)));
this.btnRun.Location = new System.Drawing.Point(9, 9);
this.btnRun.Name = "btnRun";
this.btnRun.Size = new System.Drawing.Size(120, 63);

View file

@ -36,13 +36,16 @@ namespace ShareX.HelpersLib
{
public partial class AutomateForm : Form
{
private static AutomateForm instance;
public static bool IsRunning { get; private set; }
public List<ScriptInfo> Scripts { get; private set; }
public bool IsWorking { get; private set; }
private FunctionManager functionManager = new FunctionManager();
private Tokenizer tokenizer = new Tokenizer();
public AutomateForm(List<ScriptInfo> scripts)
private AutomateForm(List<ScriptInfo> scripts)
{
InitializeComponent();
Icon = ShareXResources.Icon;
@ -64,6 +67,16 @@ public AutomateForm(List<ScriptInfo> scripts)
}
}
public static AutomateForm GetInstance(List<ScriptInfo> scripts)
{
if (instance == null || instance.IsDisposed)
{
instance = new AutomateForm(scripts);
}
return instance;
}
private void AddScript(ScriptInfo scriptInfo)
{
lvScripts.Items.Add(scriptInfo.Name).Tag = scriptInfo;
@ -126,9 +139,9 @@ private void SyntaxHighlighting(List<Token> tokens)
private void Start()
{
if (!IsWorking)
if (!IsRunning)
{
IsWorking = true;
IsRunning = true;
btnRun.Text = Resources.Stop;
string[] lines = rtbInput.Lines;
functionManager.LineDelay = (int)nudLineDelay.Value;
@ -139,13 +152,13 @@ private void Start()
}
}
private void Stop()
public void Stop()
{
if (IsWorking)
if (IsRunning)
{
functionManager.Stop();
btnRun.Text = Resources.Start;
IsWorking = false;
IsRunning = false;
}
}
@ -153,7 +166,7 @@ private void btnRun_Click(object sender, EventArgs e)
{
lock (this)
{
if (IsWorking)
if (IsRunning)
{
Stop();
}
@ -171,7 +184,7 @@ private void bw_DoWork(object sender, DoWorkEventArgs e)
try
{
functionManager.Compile(lines);
functionManager.Run();
functionManager.Start();
}
catch (Exception ex)
{
@ -273,7 +286,7 @@ private void btnAddMouseMove_Click(object sender, EventArgs e)
{
Thread thread = new Thread(() =>
{
Thread.Sleep(1000);
Thread.Sleep(2000);
Point position = Cursor.Position;
this.InvokeSafe(() =>
{

View file

@ -133,12 +133,21 @@ public bool Compile(string[] lines)
return true;
}
public void Run(int startIndex = 0)
public void Start()
{
stopRequest = false;
Run(0);
}
public void Stop()
{
stopRequest = true;
}
public void Run(int startIndex)
{
if (FunctionList != null)
{
stopRequest = false;
Function function;
for (int i = startIndex; i < FunctionList.Count && !stopRequest; i++)
@ -159,10 +168,5 @@ public void Run(int startIndex = 0)
}
}
}
public void Stop()
{
stopRequest = true;
}
}
}

View file

@ -708,6 +708,15 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Open/Stop Automate tool.
/// </summary>
internal static string HotkeyType_Automate {
get {
return ResourceManager.GetString("HotkeyType_Automate", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Upload from clipboard.
/// </summary>

View file

@ -628,4 +628,7 @@ Would you like to download and install it?</value>
<data name="HotkeyType_StartScreenRecorderGIF" xml:space="preserve">
<value>Start screen recording (GIF) using last region</value>
</data>
<data name="HotkeyType_Automate" xml:space="preserve">
<value>Open/Stop Automate tool</value>
</data>
</root>

View file

@ -162,7 +162,8 @@ public enum HotkeyType // Localized
IndexFolder,
ImageEffects,
QRCode,
TweetMessage
TweetMessage,
Automate
}
public enum HotkeyStatus

View file

@ -35,8 +35,6 @@ namespace ShareX
{
public partial class AutoCaptureForm : Form
{
public static bool IsRunning { get; private set; }
private static AutoCaptureForm instance;
public static AutoCaptureForm Instance
@ -52,6 +50,8 @@ public static AutoCaptureForm Instance
}
}
public static bool IsRunning { get; private set; }
private bool isLoaded;
private Timer statusTimer;
private System.Timers.Timer screenshotTimer;

View file

@ -77,11 +77,11 @@ private void InitializeComponent()
this.tsmiDNSChanger = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiQRCode = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiRuler = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiAutomate = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiIndexFolder = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiFTPClient = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiTweetMessage = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiMonitorTest = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiAutomate = new System.Windows.Forms.ToolStripMenuItem();
this.tssMain1 = new System.Windows.Forms.ToolStripSeparator();
this.tsddbAfterCaptureTasks = new System.Windows.Forms.ToolStripDropDownButton();
this.tsddbAfterUploadTasks = new System.Windows.Forms.ToolStripDropDownButton();
@ -224,6 +224,7 @@ private void InitializeComponent()
this.tssTray3 = new System.Windows.Forms.ToolStripSeparator();
this.tsmiTrayShow = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiTrayExit = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiTrayAutomate = new System.Windows.Forms.ToolStripMenuItem();
((System.ComponentModel.ISupportInitialize)(this.scMain)).BeginInit();
this.scMain.Panel1.SuspendLayout();
this.scMain.Panel2.SuspendLayout();
@ -628,6 +629,13 @@ private void InitializeComponent()
resources.ApplyResources(this.tsmiRuler, "tsmiRuler");
this.tsmiRuler.Click += new System.EventHandler(this.tsmiRuler_Click);
//
// tsmiAutomate
//
this.tsmiAutomate.Image = global::ShareX.Properties.Resources.robot;
this.tsmiAutomate.Name = "tsmiAutomate";
resources.ApplyResources(this.tsmiAutomate, "tsmiAutomate");
this.tsmiAutomate.Click += new System.EventHandler(this.tsmiAutomate_Click);
//
// tsmiIndexFolder
//
this.tsmiIndexFolder.Image = global::ShareX.Properties.Resources.folder_tree;
@ -656,13 +664,6 @@ private void InitializeComponent()
resources.ApplyResources(this.tsmiMonitorTest, "tsmiMonitorTest");
this.tsmiMonitorTest.Click += new System.EventHandler(this.tsmiMonitorTest_Click);
//
// tsmiAutomate
//
this.tsmiAutomate.Image = global::ShareX.Properties.Resources.robot;
this.tsmiAutomate.Name = "tsmiAutomate";
resources.ApplyResources(this.tsmiAutomate, "tsmiAutomate");
this.tsmiAutomate.Click += new System.EventHandler(this.tsmiAutomate_Click);
//
// tssMain1
//
this.tssMain1.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);
@ -1460,6 +1461,7 @@ private void InitializeComponent()
this.tsmiTrayDNSChanger,
this.tsmiTrayQRCode,
this.tsmiTrayRuler,
this.tsmiTrayAutomate,
this.tsmiTrayIndexFolder,
this.tsmiTrayFTPClient,
this.tsmiTrayTweetMessage,
@ -1712,6 +1714,13 @@ private void InitializeComponent()
resources.ApplyResources(this.tsmiTrayExit, "tsmiTrayExit");
this.tsmiTrayExit.Click += new System.EventHandler(this.tsmiTrayExit_Click);
//
// tsmiTrayAutomate
//
this.tsmiTrayAutomate.Image = global::ShareX.Properties.Resources.robot;
this.tsmiTrayAutomate.Name = "tsmiTrayAutomate";
resources.ApplyResources(this.tsmiTrayAutomate, "tsmiTrayAutomate");
this.tsmiTrayAutomate.Click += new System.EventHandler(this.tsmiAutomate_Click);
//
// MainForm
//
this.AllowDrop = true;
@ -1937,5 +1946,6 @@ private void InitializeComponent()
public System.Windows.Forms.ToolStripMenuItem tsmiTrayRecentItems;
private System.Windows.Forms.ContextMenuStrip cmsTray;
private System.Windows.Forms.ToolStripMenuItem tsmiAutomate;
private System.Windows.Forms.ToolStripMenuItem tsmiTrayAutomate;
}
}

View file

@ -902,7 +902,7 @@ private void tsmiRuler_Click(object sender, EventArgs e)
private void tsmiAutomate_Click(object sender, EventArgs e)
{
TaskHelpers.OpenAutomate();
TaskHelpers.OpenStopAutomate();
}
private void tsmiIndexFolder_Click(object sender, EventArgs e)
@ -1583,6 +1583,9 @@ private void ExecuteJob(TaskSettings taskSettings, HotkeyType job)
case HotkeyType.TweetMessage:
TaskHelpers.TweetMessage();
break;
case HotkeyType.Automate:
TaskHelpers.OpenStopAutomate();
break;
}
}

View file

@ -180,6 +180,45 @@
<data name="&gt;&gt;lblSplitter.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="chFilename.Text" xml:space="preserve">
<value>Filename</value>
</data>
<data name="chFilename.Width" type="System.Int32, mscorlib">
<value>150</value>
</data>
<data name="chStatus.Text" xml:space="preserve">
<value>Status</value>
</data>
<data name="chProgress.Text" xml:space="preserve">
<value>Progress</value>
</data>
<data name="chProgress.Width" type="System.Int32, mscorlib">
<value>125</value>
</data>
<data name="chSpeed.Text" xml:space="preserve">
<value>Speed</value>
</data>
<data name="chSpeed.Width" type="System.Int32, mscorlib">
<value>75</value>
</data>
<data name="chElapsed.Text" xml:space="preserve">
<value>Elapsed</value>
</data>
<data name="chElapsed.Width" type="System.Int32, mscorlib">
<value>45</value>
</data>
<data name="chRemaining.Text" xml:space="preserve">
<value>Remaining</value>
</data>
<data name="chRemaining.Width" type="System.Int32, mscorlib">
<value>45</value>
</data>
<data name="chURL.Text" xml:space="preserve">
<value>URL</value>
</data>
<data name="chURL.Width" type="System.Int32, mscorlib">
<value>145</value>
</data>
<data name="lvUploads.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
@ -276,45 +315,6 @@
<data name="&gt;&gt;scMain.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="chFilename.Text" xml:space="preserve">
<value>Filename</value>
</data>
<data name="chFilename.Width" type="System.Int32, mscorlib">
<value>150</value>
</data>
<data name="chStatus.Text" xml:space="preserve">
<value>Status</value>
</data>
<data name="chProgress.Text" xml:space="preserve">
<value>Progress</value>
</data>
<data name="chProgress.Width" type="System.Int32, mscorlib">
<value>125</value>
</data>
<data name="chSpeed.Text" xml:space="preserve">
<value>Speed</value>
</data>
<data name="chSpeed.Width" type="System.Int32, mscorlib">
<value>75</value>
</data>
<data name="chElapsed.Text" xml:space="preserve">
<value>Elapsed</value>
</data>
<data name="chElapsed.Width" type="System.Int32, mscorlib">
<value>45</value>
</data>
<data name="chRemaining.Text" xml:space="preserve">
<value>Remaining</value>
</data>
<data name="chRemaining.Width" type="System.Int32, mscorlib">
<value>45</value>
</data>
<data name="chURL.Text" xml:space="preserve">
<value>URL</value>
</data>
<data name="chURL.Width" type="System.Int32, mscorlib">
<value>145</value>
</data>
<metadata name="tsMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
@ -324,6 +324,108 @@
<data name="tsMain.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Left</value>
</data>
<data name="tsmiFullscreen.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiFullscreen.Text" xml:space="preserve">
<value>Fullscreen</value>
</data>
<data name="tsmiWindow.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiWindow.Text" xml:space="preserve">
<value>Window</value>
</data>
<data name="tsmiMonitor.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiMonitor.Text" xml:space="preserve">
<value>Monitor</value>
</data>
<data name="tsmiRectangle.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiRectangle.Text" xml:space="preserve">
<value>Rectangle</value>
</data>
<data name="tsmiWindowRectangle.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiWindowRectangle.Text" xml:space="preserve">
<value>Rectangle (Objects)</value>
</data>
<data name="tsmiRectangleAnnotate.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiRectangleAnnotate.Text" xml:space="preserve">
<value>Rectangle (Annotate)</value>
</data>
<data name="tsmiRectangleLight.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiRectangleLight.Text" xml:space="preserve">
<value>Rectangle (Light)</value>
</data>
<data name="tsmiRoundedRectangle.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiRoundedRectangle.Text" xml:space="preserve">
<value>Rounded rectangle</value>
</data>
<data name="tsmiEllipse.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiEllipse.Text" xml:space="preserve">
<value>Ellipse</value>
</data>
<data name="tsmiTriangle.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiTriangle.Text" xml:space="preserve">
<value>Triangle</value>
</data>
<data name="tsmiDiamond.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiDiamond.Text" xml:space="preserve">
<value>Diamond</value>
</data>
<data name="tsmiPolygon.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiPolygon.Text" xml:space="preserve">
<value>Polygon</value>
</data>
<data name="tsmiFreeHand.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiFreeHand.Text" xml:space="preserve">
<value>Freehand</value>
</data>
<data name="tsmiLastRegion.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiLastRegion.Text" xml:space="preserve">
<value>Last region</value>
</data>
<data name="tsmiScreenRecordingFFmpeg.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiScreenRecordingFFmpeg.Text" xml:space="preserve">
<value>Screen recording (FFmpeg)</value>
</data>
<data name="tsmiScreenRecordingGIF.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiScreenRecordingGIF.Text" xml:space="preserve">
<value>Screen recording (GIF)</value>
</data>
<data name="tsmiAutoCapture.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiAutoCapture.Text" xml:space="preserve">
<value>Auto capture...</value>
</data>
<data name="tsddbCapture.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
@ -336,6 +438,36 @@
<data name="tsddbCapture.Text" xml:space="preserve">
<value>Capture</value>
</data>
<data name="tsmiUploadFile.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
</data>
<data name="tsmiUploadFile.Text" xml:space="preserve">
<value>Upload file...</value>
</data>
<data name="tsmiUploadFolder.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
</data>
<data name="tsmiUploadFolder.Text" xml:space="preserve">
<value>Upload folder...</value>
</data>
<data name="tsmiUploadClipboard.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
</data>
<data name="tsmiUploadClipboard.Text" xml:space="preserve">
<value>Upload from clipboard...</value>
</data>
<data name="tsmiUploadURL.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
</data>
<data name="tsmiUploadURL.Text" xml:space="preserve">
<value>Upload from URL...</value>
</data>
<data name="tsmiUploadDragDrop.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
</data>
<data name="tsmiUploadDragDrop.Text" xml:space="preserve">
<value>Drag and drop upload...</value>
</data>
<data name="tsddbUpload.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
@ -477,6 +609,45 @@
<data name="tsddbAfterUploadTasks.Text" xml:space="preserve">
<value>After upload tasks</value>
</data>
<data name="tsmiImageUploaders.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiImageUploaders.Text" xml:space="preserve">
<value>Image uploaders</value>
</data>
<data name="tsmiTextUploaders.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiTextUploaders.Text" xml:space="preserve">
<value>Text uploaders</value>
</data>
<data name="tsmiFileUploaders.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiFileUploaders.Text" xml:space="preserve">
<value>File uploaders</value>
</data>
<data name="tsmiURLShorteners.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiURLShorteners.Text" xml:space="preserve">
<value>URL shorteners</value>
</data>
<data name="tsmiURLSharingServices.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiURLSharingServices.Text" xml:space="preserve">
<value>URL sharing services</value>
</data>
<data name="tssDestinations1.Size" type="System.Drawing.Size, System.Drawing">
<value>184, 6</value>
</data>
<data name="tsmiDestinationSettings.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiDestinationSettings.Text" xml:space="preserve">
<value>Destination settings...</value>
</data>
<data name="tsddbDestinations.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
@ -564,6 +735,42 @@
<data name="tsbImageHistory.Text" xml:space="preserve">
<value>Image history...</value>
</data>
<data name="tsmiShowDebugLog.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiShowDebugLog.Text" xml:space="preserve">
<value>Debug log...</value>
</data>
<data name="tsmiTestImageUpload.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiTestImageUpload.Text" xml:space="preserve">
<value>Test image upload</value>
</data>
<data name="tsmiTestTextUpload.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiTestTextUpload.Text" xml:space="preserve">
<value>Test text upload</value>
</data>
<data name="tsmiTestFileUpload.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiTestFileUpload.Text" xml:space="preserve">
<value>Test file upload</value>
</data>
<data name="tsmiTestURLShortener.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiTestURLShortener.Text" xml:space="preserve">
<value>Test URL shortener</value>
</data>
<data name="tsmiTestURLSharing.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiTestURLSharing.Text" xml:space="preserve">
<value>Test URL sharing</value>
</data>
<data name="tsddbDebug.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
@ -624,225 +831,9 @@
<data name="&gt;&gt;tsMain.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="tsmiFullscreen.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiFullscreen.Text" xml:space="preserve">
<value>Fullscreen</value>
</data>
<data name="tsmiWindow.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiWindow.Text" xml:space="preserve">
<value>Window</value>
</data>
<data name="tsmiMonitor.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiMonitor.Text" xml:space="preserve">
<value>Monitor</value>
</data>
<data name="tsmiRectangle.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiRectangle.Text" xml:space="preserve">
<value>Rectangle</value>
</data>
<data name="tsmiWindowRectangle.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiWindowRectangle.Text" xml:space="preserve">
<value>Rectangle (Objects)</value>
</data>
<data name="tsmiRectangleAnnotate.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiRectangleAnnotate.Text" xml:space="preserve">
<value>Rectangle (Annotate)</value>
</data>
<data name="tsmiRectangleLight.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiRectangleLight.Text" xml:space="preserve">
<value>Rectangle (Light)</value>
</data>
<data name="tsmiRoundedRectangle.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiRoundedRectangle.Text" xml:space="preserve">
<value>Rounded rectangle</value>
</data>
<data name="tsmiEllipse.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiEllipse.Text" xml:space="preserve">
<value>Ellipse</value>
</data>
<data name="tsmiTriangle.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiTriangle.Text" xml:space="preserve">
<value>Triangle</value>
</data>
<data name="tsmiDiamond.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiDiamond.Text" xml:space="preserve">
<value>Diamond</value>
</data>
<data name="tsmiPolygon.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiPolygon.Text" xml:space="preserve">
<value>Polygon</value>
</data>
<data name="tsmiFreeHand.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiFreeHand.Text" xml:space="preserve">
<value>Freehand</value>
</data>
<data name="tsmiLastRegion.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiLastRegion.Text" xml:space="preserve">
<value>Last region</value>
</data>
<data name="tsmiScreenRecordingFFmpeg.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiScreenRecordingFFmpeg.Text" xml:space="preserve">
<value>Screen recording (FFmpeg)</value>
</data>
<data name="tsmiScreenRecordingGIF.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiScreenRecordingGIF.Text" xml:space="preserve">
<value>Screen recording (GIF)</value>
</data>
<data name="tsmiAutoCapture.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
<data name="tsmiAutoCapture.Text" xml:space="preserve">
<value>Auto capture...</value>
</data>
<data name="tsmiUploadFile.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
</data>
<data name="tsmiUploadFile.Text" xml:space="preserve">
<value>Upload file...</value>
</data>
<data name="tsmiUploadFolder.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
</data>
<data name="tsmiUploadFolder.Text" xml:space="preserve">
<value>Upload folder...</value>
</data>
<data name="tsmiUploadClipboard.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
</data>
<data name="tsmiUploadClipboard.Text" xml:space="preserve">
<value>Upload from clipboard...</value>
</data>
<data name="tsmiUploadURL.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
</data>
<data name="tsmiUploadURL.Text" xml:space="preserve">
<value>Upload from URL...</value>
</data>
<data name="tsmiUploadDragDrop.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
</data>
<data name="tsmiUploadDragDrop.Text" xml:space="preserve">
<value>Drag and drop upload...</value>
</data>
<data name="tsmiImageUploaders.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiImageUploaders.Text" xml:space="preserve">
<value>Image uploaders</value>
</data>
<data name="tsmiTextUploaders.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiTextUploaders.Text" xml:space="preserve">
<value>Text uploaders</value>
</data>
<data name="tsmiFileUploaders.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiFileUploaders.Text" xml:space="preserve">
<value>File uploaders</value>
</data>
<data name="tsmiURLShorteners.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiURLShorteners.Text" xml:space="preserve">
<value>URL shorteners</value>
</data>
<data name="tsmiURLSharingServices.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiURLSharingServices.Text" xml:space="preserve">
<value>URL sharing services</value>
</data>
<data name="tssDestinations1.Size" type="System.Drawing.Size, System.Drawing">
<value>184, 6</value>
</data>
<data name="tsmiDestinationSettings.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsmiDestinationSettings.Text" xml:space="preserve">
<value>Destination settings...</value>
</data>
<data name="tsmiShowDebugLog.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiShowDebugLog.Text" xml:space="preserve">
<value>Debug log...</value>
</data>
<data name="tsmiTestImageUpload.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiTestImageUpload.Text" xml:space="preserve">
<value>Test image upload</value>
</data>
<data name="tsmiTestTextUpload.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiTestTextUpload.Text" xml:space="preserve">
<value>Test text upload</value>
</data>
<data name="tsmiTestFileUpload.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiTestFileUpload.Text" xml:space="preserve">
<value>Test file upload</value>
</data>
<data name="tsmiTestURLShortener.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiTestURLShortener.Text" xml:space="preserve">
<value>Test URL shortener</value>
</data>
<data name="tsmiTestURLSharing.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 22</value>
</data>
<data name="tsmiTestURLSharing.Text" xml:space="preserve">
<value>Test URL sharing</value>
</data>
<metadata name="cmsTaskInfo.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>286, 17</value>
</metadata>
<data name="cmsTaskInfo.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 318</value>
</data>
<data name="&gt;&gt;cmsTaskInfo.Name" xml:space="preserve">
<value>cmsTaskInfo</value>
</data>
<data name="&gt;&gt;cmsTaskInfo.Type" xml:space="preserve">
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="tsmiShowErrors.Size" type="System.Drawing.Size, System.Drawing">
<value>172, 22</value>
</data>
@ -855,12 +846,6 @@
<data name="tsmiStopUpload.Text" xml:space="preserve">
<value>Stop upload</value>
</data>
<data name="tsmiOpen.Size" type="System.Drawing.Size, System.Drawing">
<value>172, 22</value>
</data>
<data name="tsmiOpen.Text" xml:space="preserve">
<value>Open</value>
</data>
<data name="tsmiOpenURL.Size" type="System.Drawing.Size, System.Drawing">
<value>156, 22</value>
</data>
@ -906,11 +891,11 @@
<data name="tsmiOpenThumbnailFile.Text" xml:space="preserve">
<value>Thumbnail file</value>
</data>
<data name="tsmiCopy.Size" type="System.Drawing.Size, System.Drawing">
<data name="tsmiOpen.Size" type="System.Drawing.Size, System.Drawing">
<value>172, 22</value>
</data>
<data name="tsmiCopy.Text" xml:space="preserve">
<value>Copy</value>
<data name="tsmiOpen.Text" xml:space="preserve">
<value>Open</value>
</data>
<data name="tsmiCopyURL.Size" type="System.Drawing.Size, System.Drawing">
<value>233, 22</value>
@ -1044,6 +1029,12 @@
<data name="tssCopy5.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="tsmiCopy.Size" type="System.Drawing.Size, System.Drawing">
<value>172, 22</value>
</data>
<data name="tsmiCopy.Text" xml:space="preserve">
<value>Copy</value>
</data>
<data name="tsmiUploadSelectedFile.Size" type="System.Drawing.Size, System.Drawing">
<value>172, 22</value>
</data>
@ -1101,12 +1092,6 @@
<data name="tsmiHideMenu.Text" xml:space="preserve">
<value>Hide menu</value>
</data>
<data name="tsmiImagePreview.Size" type="System.Drawing.Size, System.Drawing">
<value>172, 22</value>
</data>
<data name="tsmiImagePreview.Text" xml:space="preserve">
<value>Image preview</value>
</data>
<data name="tsmiImagePreviewShow.Size" type="System.Drawing.Size, System.Drawing">
<value>130, 22</value>
</data>
@ -1125,30 +1110,27 @@
<data name="tsmiImagePreviewAutomatic.Text" xml:space="preserve">
<value>Automatic</value>
</data>
<data name="tsmiImagePreview.Size" type="System.Drawing.Size, System.Drawing">
<value>172, 22</value>
</data>
<data name="tsmiImagePreview.Text" xml:space="preserve">
<value>Image preview</value>
</data>
<data name="cmsTaskInfo.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 318</value>
</data>
<data name="&gt;&gt;cmsTaskInfo.Name" xml:space="preserve">
<value>cmsTaskInfo</value>
</data>
<data name="&gt;&gt;cmsTaskInfo.Type" xml:space="preserve">
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<metadata name="niTray.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>105, 17</value>
</metadata>
<metadata name="cmsTray.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>190, 17</value>
</metadata>
<data name="cmsTray.Size" type="System.Drawing.Size, System.Drawing">
<value>189, 418</value>
</data>
<data name="&gt;&gt;cmsTray.Name" xml:space="preserve">
<value>cmsTray</value>
</data>
<data name="&gt;&gt;cmsTray.Type" xml:space="preserve">
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="niTray.Text" xml:space="preserve">
<value>ShareX</value>
</data>
<data name="tsmiTrayCapture.Size" type="System.Drawing.Size, System.Drawing">
<value>188, 22</value>
</data>
<data name="tsmiTrayCapture.Text" xml:space="preserve">
<value>Capture</value>
</data>
<data name="tsmiTrayFullscreen.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 22</value>
</data>
@ -1251,11 +1233,11 @@
<data name="tsmiTrayAutoCapture.Text" xml:space="preserve">
<value>Auto capture...</value>
</data>
<data name="tsmiTrayUpload.Size" type="System.Drawing.Size, System.Drawing">
<data name="tsmiTrayCapture.Size" type="System.Drawing.Size, System.Drawing">
<value>188, 22</value>
</data>
<data name="tsmiTrayUpload.Text" xml:space="preserve">
<value>Upload</value>
<data name="tsmiTrayCapture.Text" xml:space="preserve">
<value>Capture</value>
</data>
<data name="tsmiTrayUploadFile.Size" type="System.Drawing.Size, System.Drawing">
<value>203, 22</value>
@ -1287,18 +1269,18 @@
<data name="tsmiTrayUploadDragDrop.Text" xml:space="preserve">
<value>Drag and drop upload...</value>
</data>
<data name="tsmiTrayUpload.Size" type="System.Drawing.Size, System.Drawing">
<value>188, 22</value>
</data>
<data name="tsmiTrayUpload.Text" xml:space="preserve">
<value>Upload</value>
</data>
<data name="tsmiTrayWorkflows.Size" type="System.Drawing.Size, System.Drawing">
<value>188, 22</value>
</data>
<data name="tsmiTrayWorkflows.Text" xml:space="preserve">
<value>Workflows</value>
</data>
<data name="tsmiTrayTools.Size" type="System.Drawing.Size, System.Drawing">
<value>188, 22</value>
</data>
<data name="tsmiTrayTools.Text" xml:space="preserve">
<value>Tools</value>
</data>
<data name="tsmiTrayColorPicker.Size" type="System.Drawing.Size, System.Drawing">
<value>183, 22</value>
</data>
@ -1347,6 +1329,12 @@
<data name="tsmiTrayRuler.Text" xml:space="preserve">
<value>Ruler...</value>
</data>
<data name="tsmiTrayAutomate.Size" type="System.Drawing.Size, System.Drawing">
<value>183, 22</value>
</data>
<data name="tsmiTrayAutomate.Text" xml:space="preserve">
<value>Automate...</value>
</data>
<data name="tsmiTrayIndexFolder.Size" type="System.Drawing.Size, System.Drawing">
<value>183, 22</value>
</data>
@ -1371,6 +1359,12 @@
<data name="tsmiTrayMonitorTest.Text" xml:space="preserve">
<value>Monitor test...</value>
</data>
<data name="tsmiTrayTools.Size" type="System.Drawing.Size, System.Drawing">
<value>188, 22</value>
</data>
<data name="tsmiTrayTools.Text" xml:space="preserve">
<value>Tools</value>
</data>
<data name="tssTray1.Size" type="System.Drawing.Size, System.Drawing">
<value>185, 6</value>
</data>
@ -1386,12 +1380,6 @@
<data name="tsmiTrayAfterUploadTasks.Text" xml:space="preserve">
<value>After upload</value>
</data>
<data name="tsmiTrayDestinations.Size" type="System.Drawing.Size, System.Drawing">
<value>188, 22</value>
</data>
<data name="tsmiTrayDestinations.Text" xml:space="preserve">
<value>Destinations</value>
</data>
<data name="tsmiTrayImageUploaders.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
@ -1431,6 +1419,12 @@
<data name="tsmiTrayDestinationSettings.Text" xml:space="preserve">
<value>Destination settings...</value>
</data>
<data name="tsmiTrayDestinations.Size" type="System.Drawing.Size, System.Drawing">
<value>188, 22</value>
</data>
<data name="tsmiTrayDestinations.Text" xml:space="preserve">
<value>Destinations</value>
</data>
<data name="tsmiTrayApplicationSettings.Size" type="System.Drawing.Size, System.Drawing">
<value>188, 22</value>
</data>
@ -1506,6 +1500,18 @@
<data name="tsmiTrayExit.Text" xml:space="preserve">
<value>Exit</value>
</data>
<data name="cmsTray.Size" type="System.Drawing.Size, System.Drawing">
<value>189, 418</value>
</data>
<data name="&gt;&gt;cmsTray.Name" xml:space="preserve">
<value>cmsTray</value>
</data>
<data name="&gt;&gt;cmsTray.Type" xml:space="preserve">
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="niTray.Text" xml:space="preserve">
<value>ShareX</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
@ -1773,6 +1779,12 @@
<data name="&gt;&gt;tsmiRuler.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tsmiAutomate.Name" xml:space="preserve">
<value>tsmiAutomate</value>
</data>
<data name="&gt;&gt;tsmiAutomate.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tsmiIndexFolder.Name" xml:space="preserve">
<value>tsmiIndexFolder</value>
</data>
@ -1797,12 +1809,6 @@
<data name="&gt;&gt;tsmiMonitorTest.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tsmiAutomate.Name" xml:space="preserve">
<value>tsmiAutomate</value>
</data>
<data name="&gt;&gt;tsmiAutomate.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tssMain1.Name" xml:space="preserve">
<value>tssMain1</value>
</data>
@ -2643,6 +2649,12 @@
<data name="&gt;&gt;tsmiTrayExit.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tsmiTrayAutomate.Name" xml:space="preserve">
<value>tsmiTrayAutomate</value>
</data>
<data name="&gt;&gt;tsmiTrayAutomate.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>MainForm</value>
</data>

View file

@ -546,14 +546,20 @@ public static void OpenRuler()
}
}
public static void OpenAutomate()
public static void OpenStopAutomate()
{
if (Program.Settings.AutomateScripts == null)
{
Program.Settings.AutomateScripts = new List<ScriptInfo>();
}
new AutomateForm(Program.Settings.AutomateScripts).Show();
AutomateForm form = AutomateForm.GetInstance(Program.Settings.AutomateScripts);
form.ShowActivate();
if (AutomateForm.IsRunning)
{
form.Stop();
}
}
public static void OpenHashCheck()