Rename OCR sites variables, add more sites

Also fix sites dropdown style and enabled prop update
This commit is contained in:
Alexander 2021-10-29 23:22:06 +03:00
parent a9265ef093
commit 0d41bc8b8f
4 changed files with 63 additions and 51 deletions

View file

@ -36,8 +36,8 @@ private void InitializeComponent()
this.btnStartOCR = new System.Windows.Forms.Button(); this.btnStartOCR = new System.Windows.Forms.Button();
this.pbProgress = new System.Windows.Forms.ProgressBar(); this.pbProgress = new System.Windows.Forms.ProgressBar();
this.btnOpenInBrowser = new System.Windows.Forms.Button(); this.btnOpenInBrowser = new System.Windows.Forms.Button();
this.cbDefaultTLSite = new System.Windows.Forms.ComboBox(); this.cbDefaultSite = new System.Windows.Forms.ComboBox();
this.lblTranslatorSite = new System.Windows.Forms.Label(); this.lblExternalSite = new System.Windows.Forms.Label();
this.SuspendLayout(); this.SuspendLayout();
// //
// cbLanguages // cbLanguages
@ -84,25 +84,25 @@ private void InitializeComponent()
this.btnOpenInBrowser.UseVisualStyleBackColor = true; this.btnOpenInBrowser.UseVisualStyleBackColor = true;
this.btnOpenInBrowser.Click += new System.EventHandler(this.btnOpenInBrowser_Click); this.btnOpenInBrowser.Click += new System.EventHandler(this.btnOpenInBrowser_Click);
// //
// cbDefaultTLSite // cbDefaultSite
// //
this.cbDefaultTLSite.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.cbDefaultSite.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbDefaultTLSite.FormattingEnabled = true; this.cbDefaultSite.FormattingEnabled = true;
resources.ApplyResources(this.cbDefaultTLSite, "cbDefaultTLSite"); resources.ApplyResources(this.cbDefaultSite, "cbDefaultSite");
this.cbDefaultTLSite.Name = "cbDefaultTLSite"; this.cbDefaultSite.Name = "cbDefaultSite";
this.cbDefaultTLSite.SelectedIndexChanged += new System.EventHandler(this.cbDefaultTLSite_SelectedIndexChanged); this.cbDefaultSite.SelectedIndexChanged += new System.EventHandler(this.cbDefaultSite_SelectedIndexChanged);
// //
// lblTranslatorSite // lblExternalSite
// //
resources.ApplyResources(this.lblTranslatorSite, "lblTranslatorSite"); resources.ApplyResources(this.lblExternalSite, "lblExternalSite");
this.lblTranslatorSite.Name = "lblTranslatorSite"; this.lblExternalSite.Name = "lblExternalSite";
// //
// OCRSpaceForm // OCRSpaceForm
// //
resources.ApplyResources(this, "$this"); resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.Controls.Add(this.lblTranslatorSite); this.Controls.Add(this.lblExternalSite);
this.Controls.Add(this.cbDefaultTLSite); this.Controls.Add(this.cbDefaultSite);
this.Controls.Add(this.btnOpenInBrowser); this.Controls.Add(this.btnOpenInBrowser);
this.Controls.Add(this.lblResult); this.Controls.Add(this.lblResult);
this.Controls.Add(this.txtResult); this.Controls.Add(this.txtResult);
@ -127,7 +127,7 @@ private void InitializeComponent()
private System.Windows.Forms.Button btnStartOCR; private System.Windows.Forms.Button btnStartOCR;
private System.Windows.Forms.ProgressBar pbProgress; private System.Windows.Forms.ProgressBar pbProgress;
private System.Windows.Forms.Button btnOpenInBrowser; private System.Windows.Forms.Button btnOpenInBrowser;
private System.Windows.Forms.ComboBox cbDefaultTLSite; private System.Windows.Forms.ComboBox cbDefaultSite;
private System.Windows.Forms.Label lblTranslatorSite; private System.Windows.Forms.Label lblExternalSite;
} }
} }

View file

@ -34,12 +34,20 @@ You should have received a copy of the GNU General Public License
namespace ShareX.UploadersLib namespace ShareX.UploadersLib
{ {
public enum OCRSpaceTranslatorSites public enum OCRSpaceSites
{ {
[Description("Google Translate")] [Description("Google Translate")]
Google, GoogleTranslate,
[Description("DeepL Translate")] [Description("DeepL Translate")]
DeepL DeepL,
[Description("Jisho")]
Jisho,
[Description("ichi.moe")]
Ichi,
[Description("Google")]
Google,
[Description("ekşi sözlük")]
Eksisozluk,
} }
public partial class OCRSpaceForm : Form public partial class OCRSpaceForm : Form
@ -51,11 +59,15 @@ public partial class OCRSpaceForm : Form
private OCROptions ocrOptions; private OCROptions ocrOptions;
private OCRSpaceLanguages Language { get; set; } private OCRSpaceLanguages Language { get; set; }
private Dictionary<OCRSpaceTranslatorSites, string> TranslatorSiteLinks = private Dictionary<OCRSpaceSites, string> SiteLinks =
new Dictionary<OCRSpaceTranslatorSites, string>() new Dictionary<OCRSpaceSites, string>()
{ {
{ OCRSpaceTranslatorSites.Google, "https://translate.google.com/#auto/en/" }, { OCRSpaceSites.GoogleTranslate, "https://translate.google.com/#auto/en/" },
{ OCRSpaceTranslatorSites.DeepL, "https://www.deepl.com/translator#auto/en/" } { OCRSpaceSites.DeepL, "https://www.deepl.com/translator#auto/en/" },
{ OCRSpaceSites.Jisho, "https://jisho.org/search/" },
{ OCRSpaceSites.Ichi, "https://ichi.moe/cl/qr/?q=" },
{ OCRSpaceSites.Google, "https://www.google.com/search?q=" },
{ OCRSpaceSites.Eksisozluk, "https://eksisozluk.com/?q=" }
}; };
public OCRSpaceForm(OCROptions ocrOptions) public OCRSpaceForm(OCROptions ocrOptions)
@ -67,8 +79,8 @@ public OCRSpaceForm(OCROptions ocrOptions)
cbLanguages.Items.AddRange(Helpers.GetEnumDescriptions<OCRSpaceLanguages>()); cbLanguages.Items.AddRange(Helpers.GetEnumDescriptions<OCRSpaceLanguages>());
cbLanguages.SelectedIndex = (int)ocrOptions.DefaultLanguage; cbLanguages.SelectedIndex = (int)ocrOptions.DefaultLanguage;
cbDefaultTLSite.Items.AddRange(Helpers.GetEnumDescriptions<OCRSpaceTranslatorSites>()); cbDefaultSite.Items.AddRange(Helpers.GetEnumDescriptions<OCRSpaceSites>());
cbDefaultTLSite.SelectedIndex = (int)ocrOptions.DefaultTranslatorSite; cbDefaultSite.SelectedIndex = (int)ocrOptions.DefaultSite;
Language = ocrOptions.DefaultLanguage; Language = ocrOptions.DefaultLanguage;
txtResult.SupportSelectAll(); txtResult.SupportSelectAll();
@ -106,7 +118,7 @@ public async Task StartOCR(Stream stream, string fileName)
{ {
if (stream != null && stream.Length > 0 && !string.IsNullOrEmpty(fileName)) if (stream != null && stream.Length > 0 && !string.IsNullOrEmpty(fileName))
{ {
cbLanguages.Enabled = btnStartOCR.Enabled = txtResult.Enabled = btnOpenInBrowser.Enabled = false; cbLanguages.Enabled = btnStartOCR.Enabled = txtResult.Enabled = btnOpenInBrowser.Enabled = cbDefaultSite.Enabled = false;
pbProgress.Visible = true; pbProgress.Visible = true;
Result = await OCRSpace.DoOCRAsync(Language, stream, fileName); Result = await OCRSpace.DoOCRAsync(Language, stream, fileName);
@ -119,7 +131,7 @@ public async Task StartOCR(Stream stream, string fileName)
if (!IsDisposed) if (!IsDisposed)
{ {
UpdateControls(); UpdateControls();
cbLanguages.Enabled = btnStartOCR.Enabled = txtResult.Enabled = btnOpenInBrowser.Enabled = true; cbLanguages.Enabled = btnStartOCR.Enabled = txtResult.Enabled = btnOpenInBrowser.Enabled = cbDefaultSite.Enabled = true;
pbProgress.Visible = false; pbProgress.Visible = false;
txtResult.Focus(); txtResult.Focus();
} }
@ -138,14 +150,14 @@ private async void btnStartOCR_Click(object sender, EventArgs e)
private void btnOpenInBrowser_Click(object sender, EventArgs e) private void btnOpenInBrowser_Click(object sender, EventArgs e)
{ {
URLHelpers.OpenURL(TranslatorSiteLinks[ocrOptions.DefaultTranslatorSite] + Uri.EscapeDataString(txtResult.Text)); URLHelpers.OpenURL(SiteLinks[ocrOptions.DefaultSite] + Uri.EscapeDataString(txtResult.Text));
Close(); Close();
} }
private void cbDefaultTLSite_SelectedIndexChanged(object sender, EventArgs e) private void cbDefaultSite_SelectedIndexChanged(object sender, EventArgs e)
{ {
// This doesn't work // This doesn't work
ocrOptions.DefaultTranslatorSite = (OCRSpaceTranslatorSites)cbDefaultTLSite.SelectedIndex; ocrOptions.DefaultSite = (OCRSpaceSites)cbDefaultSite.SelectedIndex;
} }
} }
} }

View file

@ -321,55 +321,55 @@
<data name="&gt;&gt;btnOpenInBrowser.ZOrder" xml:space="preserve"> <data name="&gt;&gt;btnOpenInBrowser.ZOrder" xml:space="preserve">
<value>2</value> <value>2</value>
</data> </data>
<data name="cbDefaultTLSite.Location" type="System.Drawing.Point, System.Drawing"> <data name="cbDefaultSite.Location" type="System.Drawing.Point, System.Drawing">
<value>371, 30</value> <value>371, 30</value>
</data> </data>
<data name="cbDefaultTLSite.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms"> <data name="cbDefaultSite.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value> <value>4, 4, 4, 4</value>
</data> </data>
<data name="cbDefaultTLSite.Size" type="System.Drawing.Size, System.Drawing"> <data name="cbDefaultSite.Size" type="System.Drawing.Size, System.Drawing">
<value>169, 24</value> <value>169, 24</value>
</data> </data>
<data name="cbDefaultTLSite.TabIndex" type="System.Int32, mscorlib"> <data name="cbDefaultSite.TabIndex" type="System.Int32, mscorlib">
<value>9</value> <value>9</value>
</data> </data>
<data name="&gt;&gt;cbDefaultTLSite.Name" xml:space="preserve"> <data name="&gt;&gt;cbDefaultSite.Name" xml:space="preserve">
<value>cbDefaultTLSite</value> <value>cbDefaultSite</value>
</data> </data>
<data name="&gt;&gt;cbDefaultTLSite.Type" xml:space="preserve"> <data name="&gt;&gt;cbDefaultSite.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;cbDefaultTLSite.Parent" xml:space="preserve"> <data name="&gt;&gt;cbDefaultSite.Parent" xml:space="preserve">
<value>$this</value> <value>$this</value>
</data> </data>
<data name="&gt;&gt;cbDefaultTLSite.ZOrder" xml:space="preserve"> <data name="&gt;&gt;cbDefaultSite.ZOrder" xml:space="preserve">
<value>1</value> <value>1</value>
</data> </data>
<data name="lblTranslatorSite.AutoSize" type="System.Boolean, mscorlib"> <data name="lblExternalSite.AutoSize" type="System.Boolean, mscorlib">
<value>True</value> <value>True</value>
</data> </data>
<data name="lblTranslatorSite.Location" type="System.Drawing.Point, System.Drawing"> <data name="lblExternalSite.Location" type="System.Drawing.Point, System.Drawing">
<value>370, 10</value> <value>370, 10</value>
</data> </data>
<data name="lblTranslatorSite.Size" type="System.Drawing.Size, System.Drawing"> <data name="lblExternalSite.Size" type="System.Drawing.Size, System.Drawing">
<value>103, 17</value> <value>89, 17</value>
</data> </data>
<data name="lblTranslatorSite.TabIndex" type="System.Int32, mscorlib"> <data name="lblExternalSite.TabIndex" type="System.Int32, mscorlib">
<value>10</value> <value>10</value>
</data> </data>
<data name="lblTranslatorSite.Text" xml:space="preserve"> <data name="lblExternalSite.Text" xml:space="preserve">
<value>Translator site:</value> <value>External site:</value>
</data> </data>
<data name="&gt;&gt;lblTranslatorSite.Name" xml:space="preserve"> <data name="&gt;&gt;lblExternalSite.Name" xml:space="preserve">
<value>lblTranslatorSite</value> <value>lblExternalSite</value>
</data> </data>
<data name="&gt;&gt;lblTranslatorSite.Type" xml:space="preserve"> <data name="&gt;&gt;lblExternalSite.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;lblTranslatorSite.Parent" xml:space="preserve"> <data name="&gt;&gt;lblExternalSite.Parent" xml:space="preserve">
<value>$this</value> <value>$this</value>
</data> </data>
<data name="&gt;&gt;lblTranslatorSite.ZOrder" xml:space="preserve"> <data name="&gt;&gt;lblExternalSite.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">

View file

@ -31,7 +31,7 @@ public class OCROptions
{ {
public bool Permission { get; set; } = false; public bool Permission { get; set; } = false;
public OCRSpaceLanguages DefaultLanguage { get; set; } = OCRSpaceLanguages.eng; public OCRSpaceLanguages DefaultLanguage { get; set; } = OCRSpaceLanguages.eng;
public OCRSpaceTranslatorSites DefaultTranslatorSite { get; set; } = OCRSpaceTranslatorSites.Google; public OCRSpaceSites DefaultSite { get; set; } = OCRSpaceSites.GoogleTranslate;
public bool Silent { get; set; } = false; public bool Silent { get; set; } = false;
public bool ProcessOnLoad { get; set; } = true; public bool ProcessOnLoad { get; set; } = true;
public bool AutoCopy { get; set; } = false; public bool AutoCopy { get; set; } = false;