Merge pull request #5142 from L1Q/master

Improve localization support
This commit is contained in:
Jaex 2020-10-22 08:33:13 +03:00 committed by GitHub
commit 5b5fa48ebb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
17 changed files with 291 additions and 37 deletions

View file

@ -80,16 +80,15 @@ private void UpdateCompareControls()
{
lblFilePath2.Enabled = txtFilePath2.Enabled = btnFilePathBrowse2.Enabled = CompareTwoFiles;
// TODO: Translate
if (CompareTwoFiles)
{
lblResult.Text = "Result of first file:";
lblTarget.Text = "Result of second file:";
lblResult.Text = Resources.ResultOfFirstFile;
lblTarget.Text = Resources.ResultOfSecondFile;
}
else
{
lblResult.Text = "Result:";
lblTarget.Text = "Target:";
lblResult.Text = Resources.Result;
lblTarget.Text = Resources.Target;
}
txtTarget.ReadOnly = CompareTwoFiles;

View file

@ -3013,6 +3013,33 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Result:.
/// </summary>
internal static string Result {
get {
return ResourceManager.GetString("Result", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Result of first file:.
/// </summary>
internal static string ResultOfFirstFile {
get {
return ResourceManager.GetString("ResultOfFirstFile", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Result of second file:.
/// </summary>
internal static string ResultOfSecondFile {
get {
return ResourceManager.GetString("ResultOfSecondFile", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to FFmpeg (Good quality).
/// </summary>
@ -3376,6 +3403,15 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Target:.
/// </summary>
internal static string Target {
get {
return ResourceManager.GetString("Target", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Custom text uploader.
/// </summary>

View file

@ -1250,4 +1250,16 @@ Would you like to download and install it?</value>
<data name="tick" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\tick.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ResultOfFirstFile" xml:space="preserve">
<value>Result of first file:</value>
</data>
<data name="ResultOfSecondFile" xml:space="preserve">
<value>Result of second file:</value>
</data>
<data name="Result" xml:space="preserve">
<value>Result:</value>
</data>
<data name="Target" xml:space="preserve">
<value>Target:</value>
</data>
</root>

View file

@ -1434,8 +1434,7 @@ internal void OnSaveImageRequested()
{
ImageFilePath = imageFilePath;
UpdateTitle();
// TODO: Translate
ShapeManager.ShowMenuTooltip("Image saved");
ShapeManager.ShowMenuTooltip(Resources.ImageSaved);
}
}
}
@ -1452,8 +1451,7 @@ internal void OnSaveImageAsRequested()
{
ImageFilePath = imageFilePath;
UpdateTitle();
// TODO: Translate
ShapeManager.ShowMenuTooltip("Image saved");
ShapeManager.ShowMenuTooltip(Resources.ImageSavedAs);
}
}
}
@ -1465,8 +1463,7 @@ internal void OnCopyImageRequested()
Bitmap bmp = ReceiveImageForTask();
CopyImageRequested(bmp);
// TODO: Translate
ShapeManager.ShowMenuTooltip("Image copied");
ShapeManager.ShowMenuTooltip(Resources.ImageCopied);
}
}
@ -1477,8 +1474,7 @@ internal void OnUploadImageRequested()
Bitmap bmp = ReceiveImageForTask();
UploadImageRequested(bmp);
// TODO: Translate
ShapeManager.ShowMenuTooltip("Image uploading");
ShapeManager.ShowMenuTooltip(Resources.ImageUploading);
}
}

View file

@ -118,14 +118,13 @@ private void Close(DialogResult result)
private void UpdateEnterTip()
{
// TODO: Translate
if (Options.EnterKeyNewLine)
{
lblTip.Text = "New line: Enter, OK: Ctrl + Enter";
lblTip.Text = Resources.NewLineEnterOKCtrlEnter;
}
else
{
lblTip.Text = "New line: Ctrl + Enter, OK: Enter";
lblTip.Text = Resources.NewLineCtrlEnterOKEnter;
}
}

View file

@ -267,6 +267,15 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Duplicate.
/// </summary>
internal static string Duplicate {
get {
return ResourceManager.GetString("Duplicate", resourceCulture);
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
@ -702,6 +711,15 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Image copied.
/// </summary>
internal static string ImageCopied {
get {
return ResourceManager.GetString("ImageCopied", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Add image effects....
/// </summary>
@ -711,6 +729,33 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Image saved.
/// </summary>
internal static string ImageSaved {
get {
return ResourceManager.GetString("ImageSaved", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Image saved.
/// </summary>
internal static string ImageSavedAs {
get {
return ResourceManager.GetString("ImageSavedAs", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Image uploading.
/// </summary>
internal static string ImageUploading {
get {
return ResourceManager.GetString("ImageUploading", resourceCulture);
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
@ -1010,6 +1055,15 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Lock menu.
/// </summary>
internal static string LockMenu {
get {
return ResourceManager.GetString("LockMenu", resourceCulture);
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
@ -1029,6 +1083,15 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Menu icon size:.
/// </summary>
internal static string MenuIconSize {
get {
return ResourceManager.GetString("MenuIconSize", resourceCulture);
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
@ -1059,6 +1122,24 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to New line: Ctrl + Enter, OK: Enter.
/// </summary>
internal static string NewLineCtrlEnterOKEnter {
get {
return ResourceManager.GetString("NewLineCtrlEnterOKEnter", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to New line: Enter, OK: Ctrl + Enter.
/// </summary>
internal static string NewLineEnterOKCtrlEnter {
get {
return ResourceManager.GetString("NewLineEnterOKCtrlEnter", resourceCulture);
}
}
/// <summary>
/// Looks up a localized resource of type System.Byte[].
/// </summary>

View file

@ -713,4 +713,31 @@ X: {4} Y: {5}</value>
<data name="ShapeManager_ArrowHeadDirection" xml:space="preserve">
<value>Arrow head direction:</value>
</data>
<data name="NewLineEnterOKCtrlEnter" xml:space="preserve">
<value>New line: Enter, OK: Ctrl + Enter</value>
</data>
<data name="NewLineCtrlEnterOKEnter" xml:space="preserve">
<value>New line: Ctrl + Enter, OK: Enter</value>
</data>
<data name="LockMenu" xml:space="preserve">
<value>Lock menu</value>
</data>
<data name="ImageUploading" xml:space="preserve">
<value>Image uploading</value>
</data>
<data name="ImageCopied" xml:space="preserve">
<value>Image copied</value>
</data>
<data name="ImageSaved" xml:space="preserve">
<value>Image saved</value>
</data>
<data name="ImageSavedAs" xml:space="preserve">
<value>Image saved</value>
</data>
<data name="Duplicate" xml:space="preserve">
<value>Duplicate</value>
</data>
<data name="MenuIconSize" xml:space="preserve">
<value>Menu icon size:</value>
</data>
</root>

View file

@ -656,8 +656,7 @@ internal void CreateToolbar()
tsmiPaste.Click += (sender, e) => PasteFromClipboard(false);
tsddbEdit.DropDownItems.Add(tsmiPaste);
// TODO: Translate
tsmiDuplicate = new ToolStripMenuItem("Duplicate");
tsmiDuplicate = new ToolStripMenuItem(Resources.Duplicate);
tsmiDuplicate.Image = Resources.document_copy;
tsmiDuplicate.ShortcutKeyDisplayString = "Ctrl+D";
tsmiDuplicate.Click += (sender, e) => DuplicateCurrrentShape(false);
@ -992,8 +991,7 @@ internal void CreateToolbar()
};
tsddbOptions.DropDownItems.Add(tsmiSwitchToSelectionToolAfterDrawing);
// TODO: Translate
ToolStripLabeledNumericUpDown tslnudMenuIconSize = new ToolStripLabeledNumericUpDown("Menu icon size:");
ToolStripLabeledNumericUpDown tslnudMenuIconSize = new ToolStripLabeledNumericUpDown(Resources.MenuIconSize);
tslnudMenuIconSize.Content.Minimum = 16;
tslnudMenuIconSize.Content.Maximum = 64;
tslnudMenuIconSize.Content.Increment = 16;
@ -1012,7 +1010,7 @@ internal void CreateToolbar()
if (!Form.IsEditorMode)
{
ToolStripMenuItem tsmiLockMenu = new ToolStripMenuItem("Lock menu");
ToolStripMenuItem tsmiLockMenu = new ToolStripMenuItem(Resources.LockMenu);
tsmiLockMenu.Checked = Options.MenuLocked;
tsmiLockMenu.CheckOnClick = true;
tsmiLockMenu.Click += (sender, e) =>

View file

@ -168,8 +168,7 @@ private void UpdateStatusLabel()
case OAuthLoginStatus.LoginSuccessful:
if (UserInfo != null && !string.IsNullOrEmpty(UserInfo.name))
{
// TODO: Translate
lblStatusValue.Text = string.Format("Logged in as {0}.", UserInfo.name);
lblStatusValue.Text = string.Format(Resources.LoggedInAs0, UserInfo.name);
}
else
{

View file

@ -304,8 +304,7 @@ private void CustomUploaderSerialize(CustomUploaderItem cui, string folderPath)
catch (Exception e)
{
DebugHelper.WriteException(e);
// TODO: Translate
MessageBox.Show("Export failed." + "\n\n" + e, "ShareX - " + "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
MessageBox.Show(Resources.ExportFailed + "\n\n" + e, "ShareX - " + "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}

View file

@ -195,6 +195,15 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Export failed..
/// </summary>
internal static string ExportFailed {
get {
return ResourceManager.GetString("ExportFailed", resourceCulture);
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
@ -402,6 +411,15 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Logged in as {0}..
/// </summary>
internal static string LoggedInAs0 {
get {
return ResourceManager.GetString("LoggedInAs0", resourceCulture);
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>

View file

@ -407,4 +407,10 @@ Created folders:</value>
<data name="GoogleDrive_MyDrive_My_drive" xml:space="preserve">
<value>My drive</value>
</data>
<data name="ExportFailed" xml:space="preserve">
<value>Export failed.</value>
</data>
<data name="LoggedInAs0" xml:space="preserve">
<value>Logged in as {0}.</value>
</data>
</root>

View file

@ -455,8 +455,7 @@ private void UpdateMainFormTip()
int maxHotkeyLength = hotkeys.Max(x => x.HotkeyInfo.ToString().Length);
int maxDescriptionLength = hotkeys.Max(x => x.TaskSettings.ToString().Length);
// TODO: Translate
sb.AppendFormat("┌{0}┬{1}┐\r\n", "Hotkey".PadCenter(maxHotkeyLength + 2, '─'), "Description".PadCenter(maxDescriptionLength + 2, '─'));
sb.AppendFormat("┌{0}┬{1}┐\r\n", Resources.Hotkey.PadCenter(maxHotkeyLength + 2, '─'), Resources.Description.PadCenter(maxDescriptionLength + 2, '─'));
for (int i = 0; i < hotkeys.Count; i++)
{
@ -1392,8 +1391,7 @@ private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
if (Program.Settings.FirstTimeMinimizeToTray)
{
// TODO: Translate
TaskHelpers.ShowNotificationTip("ShareX is minimized to the system tray.", "ShareX", 8000);
TaskHelpers.ShowNotificationTip(Resources.ShareXIsMinimizedToTheSystemTray, "ShareX", 8000);
Program.Settings.FirstTimeMinimizeToTray = false;
}
}

View file

@ -1093,6 +1093,15 @@ public class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Description.
/// </summary>
public static string Description {
get {
return ResourceManager.GetString("Description", resourceCulture);
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
@ -1312,6 +1321,15 @@ public class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Failed to save settings.
/// </summary>
public static string FailedToSaveSettings {
get {
return ResourceManager.GetString("FailedToSaveSettings", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Use new name: .
/// </summary>
@ -1501,6 +1519,15 @@ public class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Hotkey.
/// </summary>
public static string Hotkey {
get {
return ResourceManager.GetString("Hotkey", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to hotkey.
/// </summary>
@ -2253,6 +2280,15 @@ public class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Screen color picker.
/// </summary>
public static string ScreenColorPicker {
get {
return ResourceManager.GetString("ScreenColorPicker", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Are you sure you want to abort this recording?.
/// </summary>
@ -2383,6 +2419,15 @@ public class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to ShareX is minimized to the system tray..
/// </summary>
public static string ShareXIsMinimizedToTheSystemTray {
get {
return ResourceManager.GetString("ShareXIsMinimizedToTheSystemTray", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to ShareX needs to be restarted for the personal folder changes to apply.
///
@ -3018,6 +3063,17 @@ public class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Would you like to enable image effects?
///
///You can later disable it from &quot;After capture tasks&quot; menu..
/// </summary>
public static string WouldYouLikeToEnableImageEffects {
get {
return ResourceManager.GetString("WouldYouLikeToEnableImageEffects", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Would you like to reset themes?.
/// </summary>
@ -3036,5 +3092,15 @@ public class Resources {
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized string similar to Your anti-virus software or the controlled folder access feature in Windows 10 could be blocking ShareX..
/// </summary>
public static string YourAntiVirusSoftwareOrTheControlledFolderAccessFeatureInWindows10CouldBeBlockingShareX {
get {
return ResourceManager.GetString("YourAntiVirusSoftwareOrTheControlledFolderAccessFeatureInWindows10CouldBeBlocking" +
"ShareX", resourceCulture);
}
}
}
}

View file

@ -1072,4 +1072,27 @@ Middle click to close</value>
<data name="uac" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\uac.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ShareXIsMinimizedToTheSystemTray" xml:space="preserve">
<value>ShareX is minimized to the system tray.</value>
</data>
<data name="YourAntiVirusSoftwareOrTheControlledFolderAccessFeatureInWindows10CouldBeBlockingShareX" xml:space="preserve">
<value>Your anti-virus software or the controlled folder access feature in Windows 10 could be blocking ShareX.</value>
</data>
<data name="FailedToSaveSettings" xml:space="preserve">
<value>Failed to save settings</value>
</data>
<data name="ScreenColorPicker" xml:space="preserve">
<value>Screen color picker</value>
</data>
<data name="WouldYouLikeToEnableImageEffects" xml:space="preserve">
<value>Would you like to enable image effects?
You can later disable it from "After capture tasks" menu.</value>
</data>
<data name="Hotkey" xml:space="preserve">
<value>Hotkey</value>
</data>
<data name="Description" xml:space="preserve">
<value>Description</value>
</data>
</root>

View file

@ -25,6 +25,7 @@
using ShareX.HelpersLib;
using ShareX.HistoryLib;
using ShareX.Properties;
using ShareX.ScreenCaptureLib;
using ShareX.UploadersLib;
using ShareX.UploadersLib.FileUploaders;
@ -160,16 +161,14 @@ private static void Settings_SettingsSaveFailed(Exception e)
if (e is UnauthorizedAccessException || e is FileNotFoundException)
{
// TODO: Translate
message = "Your anti-virus software or the controlled folder access feature in Windows 10 could be blocking ShareX.";
message = Resources.YourAntiVirusSoftwareOrTheControlledFolderAccessFeatureInWindows10CouldBeBlockingShareX;
}
else
{
message = e.Message;
}
// TODO: Translate
TaskHelpers.ShowNotificationTip(message, "ShareX - " + "Failed to save settings", 5000);
TaskHelpers.ShowNotificationTip(message, "ShareX - " + Resources.FailedToSaveSettings, 5000);
settingsSaveFailWarningCount++;
}

View file

@ -835,9 +835,8 @@ public static void OpenScreenColorPicker(TaskSettings taskSettings = null)
string text = CodeMenuEntryPixelInfo.Parse(input, pointInfo.Color, pointInfo.Position);
ClipboardHelpers.CopyText(text);
// TODO: Translate
ShowNotificationTip(string.Format(Resources.TaskHelpers_OpenQuickScreenColorPicker_Copied_to_clipboard___0_, text),
"ShareX - " + "Screen color picker");
"ShareX - " + Resources.ScreenColorPicker);
}
}
}
@ -1754,9 +1753,8 @@ public static void ImportImageEffect(string filePath)
imageEffectsForm.ImportImageEffect(configJson);
}
// TODO: Translate
if (!Program.DefaultTaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.AddImageEffects) &&
MessageBox.Show("Would you like to enable image effects?\r\n\r\nYou can later disable it from \"After capture tasks\" menu.",
MessageBox.Show(Resources.WouldYouLikeToEnableImageEffects,
"ShareX", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
Program.DefaultTaskSettings.AfterCaptureJob = Program.DefaultTaskSettings.AfterCaptureJob.Add(AfterCaptureTasks.AddImageEffects);