diff --git a/src/Greenshot.Editor/Configuration/LanguageKeys.cs b/src/Greenshot.Editor/Configuration/LanguageKeys.cs index f15b113d4..b1f410e66 100644 --- a/src/Greenshot.Editor/Configuration/LanguageKeys.cs +++ b/src/Greenshot.Editor/Configuration/LanguageKeys.cs @@ -33,6 +33,7 @@ namespace Greenshot.Editor.Configuration contextmenu_capturefullscreen_right, contextmenu_capturefullscreen_bottom, contextmenu_captureie, + editor_autocrop_not_possible, editor_clipboardfailed, editor_close_on_save, editor_close_on_save_title, diff --git a/src/Greenshot.Editor/Drawing/CropContainer.cs b/src/Greenshot.Editor/Drawing/CropContainer.cs index 2a4797760..23e0ccbed 100644 --- a/src/Greenshot.Editor/Drawing/CropContainer.cs +++ b/src/Greenshot.Editor/Drawing/CropContainer.cs @@ -35,10 +35,28 @@ namespace Greenshot.Editor.Drawing /// public class CropContainer : DrawableContainer { - //awailable Styles - public static readonly string DefaultCropStyle = nameof(DefaultCropStyle); - public static readonly string VerticalCropOutStyle = nameof(VerticalCropOutStyle); - public static readonly string HorizontalCropOutStyle = nameof(HorizontalCropOutStyle); + /// + /// awailable modes + /// + public enum CropMode + { + /// + /// crop all outside the selection rectangle + /// + Default, + /// + /// like default, but initially creates the selection rectangle + /// + AutoCrop, + /// + /// crop all inside the selection, anchors the selection to the top and bottom edges + /// + Vertical, + /// + /// crop all inside the selection, anchors the selection to the left and right edges + /// + Horizontal + } public CropContainer(ISurface parent) : base(parent) { @@ -53,14 +71,14 @@ namespace Greenshot.Editor.Drawing private void Init() { - switch (GetFieldValueAsString(FieldType.CROPSTYLE)) + switch (GetFieldValue(FieldType.CROPMODE)) { - case string s when s.Equals(HorizontalCropOutStyle): + case CropMode.Horizontal: { InitHorizontalCropOutStyle(); break; } - case string s when s.Equals(VerticalCropOutStyle): + case CropMode.Vertical: { InitVerticalCropOutStyle(); break; @@ -73,21 +91,6 @@ namespace Greenshot.Editor.Drawing } } - /// - /// rotate through all awailable Styles - /// - /// - /// - public static string GetNextStyle(string style) - { - return style switch - { - var s when s.Equals(HorizontalCropOutStyle) => VerticalCropOutStyle, - var s when s.Equals(VerticalCropOutStyle) => DefaultCropStyle, - _ => HorizontalCropOutStyle, - }; - } - private void InitCropStyle() { CreateDefaultAdorners(); @@ -130,7 +133,7 @@ namespace Greenshot.Editor.Drawing protected override void InitializeFields() { AddField(GetType(), FieldType.FLAGS, FieldFlag.CONFIRMABLE); - AddField(GetType(), FieldType.CROPSTYLE, DefaultCropStyle); + AddField(GetType(), FieldType.CROPMODE, CropMode.Default); } public override void Invalidate() @@ -170,10 +173,10 @@ namespace Greenshot.Editor.Drawing DrawSelectionBorder(g, selectionRect); - switch (GetFieldValueAsString(FieldType.CROPSTYLE)) + switch (GetFieldValue(FieldType.CROPMODE)) { - case var s when s.Equals(HorizontalCropOutStyle): - case var t when t.Equals(VerticalCropOutStyle): + case CropMode.Horizontal: + case CropMode.Vertical: { //draw inside g.FillRectangle(cropBrush, cropRectangle); @@ -204,12 +207,12 @@ namespace Greenshot.Editor.Drawing public override bool HandleMouseDown(int x, int y) { - return GetFieldValueAsString(FieldType.CROPSTYLE) switch + return GetFieldValue(FieldType.CROPMODE) switch { //force horizontal crop to left edge - var s when s.Equals(HorizontalCropOutStyle) => base.HandleMouseDown(0, y), + CropMode.Horizontal => base.HandleMouseDown(0, y), //force vertical crop to top edge - var s when s.Equals(VerticalCropOutStyle) => base.HandleMouseDown(x, 0), + CropMode.Vertical => base.HandleMouseDown(x, 0), _ => base.HandleMouseDown(x, y), }; } @@ -218,9 +221,9 @@ namespace Greenshot.Editor.Drawing { Invalidate(); - switch (GetFieldValueAsString(FieldType.CROPSTYLE)) + switch (GetFieldValue(FieldType.CROPMODE)) { - case var s when s.Equals(HorizontalCropOutStyle): + case CropMode.Horizontal: { //stick on left and right //allow only horizontal changes @@ -233,7 +236,7 @@ namespace Greenshot.Editor.Drawing } break; } - case var s when s.Equals(VerticalCropOutStyle): + case CropMode.Vertical: { //stick on top and bottom //allow only vertical changes diff --git a/src/Greenshot.Editor/Drawing/Fields/FieldType.cs b/src/Greenshot.Editor/Drawing/Fields/FieldType.cs index 610cbb7ca..eead7452a 100644 --- a/src/Greenshot.Editor/Drawing/Fields/FieldType.cs +++ b/src/Greenshot.Editor/Drawing/Fields/FieldType.cs @@ -51,13 +51,13 @@ namespace Greenshot.Editor.Drawing.Fields public static readonly IFieldType PREPARED_FILTER_OBFUSCATE = new FieldType(nameof(PREPARED_FILTER_OBFUSCATE)); public static readonly IFieldType PREPARED_FILTER_HIGHLIGHT = new FieldType(nameof(PREPARED_FILTER_HIGHLIGHT)); public static readonly IFieldType FLAGS = new FieldType(nameof(FLAGS)); - public static readonly IFieldType CROPSTYLE = new FieldType(nameof(CROPSTYLE)); + public static readonly IFieldType CROPMODE = new FieldType(nameof(CROPMODE)); public static IFieldType[] Values = { ARROWHEADS, BLUR_RADIUS, BRIGHTNESS, FILL_COLOR, FONT_BOLD, FONT_FAMILY, FONT_ITALIC, FONT_SIZE, TEXT_HORIZONTAL_ALIGNMENT, TEXT_VERTICAL_ALIGNMENT, HIGHLIGHT_COLOR, - LINE_COLOR, LINE_THICKNESS, MAGNIFICATION_FACTOR, PIXEL_SIZE, PREVIEW_QUALITY, SHADOW, PREPARED_FILTER_OBFUSCATE, PREPARED_FILTER_HIGHLIGHT, FLAGS, CROPSTYLE + LINE_COLOR, LINE_THICKNESS, MAGNIFICATION_FACTOR, PIXEL_SIZE, PREVIEW_QUALITY, SHADOW, PREPARED_FILTER_OBFUSCATE, PREPARED_FILTER_HIGHLIGHT, FLAGS, CROPMODE }; public string Name { get; set; } diff --git a/src/Greenshot.Editor/Drawing/Surface.cs b/src/Greenshot.Editor/Drawing/Surface.cs index 2979026ab..3dd7155fc 100644 --- a/src/Greenshot.Editor/Drawing/Surface.cs +++ b/src/Greenshot.Editor/Drawing/Surface.cs @@ -2069,14 +2069,14 @@ namespace Greenshot.Editor.Drawing { if (dc is CropContainer e) { - switch (e.GetFieldValueAsString(FieldType.CROPSTYLE)) + switch (e.GetFieldValue(FieldType.CROPMODE)) { - case var s when s.Equals(CropContainer.HorizontalCropOutStyle): + case CropContainer.CropMode.Horizontal: { ApplyHorizontalCrop(_cropContainer.Bounds); break; } - case var s when s.Equals(CropContainer.VerticalCropOutStyle): + case CropContainer.CropMode.Vertical: { ApplyVerticalCrop(_cropContainer.Bounds); break; diff --git a/src/Greenshot.Editor/Forms/ImageEditorForm.Designer.cs b/src/Greenshot.Editor/Forms/ImageEditorForm.Designer.cs index 82fecf559..34cca0f7b 100644 --- a/src/Greenshot.Editor/Forms/ImageEditorForm.Designer.cs +++ b/src/Greenshot.Editor/Forms/ImageEditorForm.Designer.cs @@ -98,8 +98,6 @@ namespace Greenshot.Editor.Forms { this.toolStripSeparator12 = new System.Windows.Forms.ToolStripSeparator(); this.preferencesToolStripMenuItem = new GreenshotToolStripMenuItem(); this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator(); - this.autoCropToolStripMenuItem = new GreenshotToolStripMenuItem(); - this.toolStripSeparator17 = new System.Windows.Forms.ToolStripSeparator(); this.insert_window_toolstripmenuitem = new GreenshotToolStripMenuItem(); this.objectToolStripMenuItem = new GreenshotToolStripMenuItem(); this.addRectangleToolStripMenuItem = new GreenshotToolStripMenuItem(); @@ -143,10 +141,15 @@ namespace Greenshot.Editor.Forms { this.toolStripSeparator16 = new System.Windows.Forms.ToolStripSeparator(); this.btnHelp = new GreenshotToolStripButton(); this.propertiesToolStrip = new ToolStripEx(); - this.obfuscateModeButton = new BindableToolStripDropDownButton(); - this.pixelizeToolStripMenuItem = new GreenshotToolStripMenuItem(); + this.obfuscateModeButton = new BindableToolStripDropDownButton(); + this.cropModeButton = new BindableToolStripDropDownButton(); + this.pixelizeToolStripMenuItem = new GreenshotToolStripMenuItem(); this.blurToolStripMenuItem = new GreenshotToolStripMenuItem(); - this.highlightModeButton = new BindableToolStripDropDownButton(); + this.defaultCropModeToolStripMenuItem = new GreenshotToolStripMenuItem(); + this.verticalCropModeToolStripMenuItem = new GreenshotToolStripMenuItem(); + this.horizontalCropModeToolStripMenuItem = new GreenshotToolStripMenuItem(); + this.autoCropModeToolStripMenuItem = new GreenshotToolStripMenuItem(); + this.highlightModeButton = new BindableToolStripDropDownButton(); this.textHighlightMenuItem = new GreenshotToolStripMenuItem(); this.areaHighlightMenuItem = new GreenshotToolStripMenuItem(); this.grayscaleHighlightMenuItem = new GreenshotToolStripMenuItem(); @@ -593,8 +596,6 @@ namespace Greenshot.Editor.Forms { this.toolStripSeparator12, this.preferencesToolStripMenuItem, this.toolStripSeparator5, - this.autoCropToolStripMenuItem, - this.toolStripSeparator17, this.insert_window_toolstripmenuitem}); this.editToolStripMenuItem.LanguageKey = "editor_edit"; this.editToolStripMenuItem.Name = "editToolStripMenuItem"; @@ -678,16 +679,6 @@ namespace Greenshot.Editor.Forms { // this.toolStripSeparator5.Name = "toolStripSeparator5"; // - // autoCropToolStripMenuItem - // - this.autoCropToolStripMenuItem.LanguageKey = "editor_autocrop"; - this.autoCropToolStripMenuItem.Name = "autoCropToolStripMenuItem"; - this.autoCropToolStripMenuItem.Click += new System.EventHandler(this.AutoCropToolStripMenuItemClick); - // - // toolStripSeparator17 - // - this.toolStripSeparator17.Name = "toolStripSeparator17"; - // // insert_window_toolstripmenuitem // this.insert_window_toolstripmenuitem.LanguageKey = "editor_insertwindow"; @@ -1082,6 +1073,7 @@ namespace Greenshot.Editor.Forms { this.toolStripSeparator10, this.btnConfirm, this.btnCancel, + this.cropModeButton, this.counterLabel, this.counterUpDown}); // @@ -1111,10 +1103,60 @@ namespace Greenshot.Editor.Forms { this.blurToolStripMenuItem.LanguageKey = "editor_obfuscate_blur"; this.blurToolStripMenuItem.Name = "blurToolStripMenuItem"; this.blurToolStripMenuItem.Tag = FilterContainer.PreparedFilter.BLUR; - // - // highlightModeButton - // - this.highlightModeButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + + // + // cropModeButton + // + this.cropModeButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + this.cropModeButton.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.defaultCropModeToolStripMenuItem, + this.verticalCropModeToolStripMenuItem, + this.horizontalCropModeToolStripMenuItem, + this.autoCropModeToolStripMenuItem}); + this.cropModeButton.Image = ((System.Drawing.Image)(resources.GetObject("btnCrop.Image"))); + this.cropModeButton.ImageTransparentColor = System.Drawing.Color.Magenta; + //TODO translate + this.cropModeButton.LanguageKey = "editor_crop_mode"; + this.cropModeButton.Name = "cropModeButton"; + this.cropModeButton.SelectedTag = CropContainer.CropMode.Default; + this.cropModeButton.Tag = CropContainer.CropMode.Default; + + // + // defaultCropStyleToolStripMenuItem + // + this.defaultCropModeToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("btnCrop.Image"))); + this.defaultCropModeToolStripMenuItem.LanguageKey = "editor_cropmode_default"; + this.defaultCropModeToolStripMenuItem.Name = "defaultCropModeToolStripMenuItem"; + this.defaultCropModeToolStripMenuItem.Tag = CropContainer.CropMode.Default; + + // + // verticalCropStyleToolStripMenuItem + // + this.verticalCropModeToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("CropVertical.Image"))); + this.verticalCropModeToolStripMenuItem.LanguageKey = "editor_cropmode_vertical"; + this.verticalCropModeToolStripMenuItem.Name = "verticalCropModeToolStripMenuItem"; + this.verticalCropModeToolStripMenuItem.Tag = CropContainer.CropMode.Vertical; + + // + // horizontalCropStyleToolStripMenuItem + // + this.horizontalCropModeToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("CropHorizontal.Image"))); + this.horizontalCropModeToolStripMenuItem.LanguageKey = "editor_cropmode_horizontal"; + this.horizontalCropModeToolStripMenuItem.Name = "horizontalCropModeToolStripMenuItem"; + this.horizontalCropModeToolStripMenuItem.Tag = CropContainer.CropMode.Horizontal; + + // + // horizontalCropStyleToolStripMenuItem + // + this.autoCropModeToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("AutoCrop.Image"))); + this.autoCropModeToolStripMenuItem.LanguageKey = "editor_cropmode_auto"; + this.autoCropModeToolStripMenuItem.Name = "autoCropModeToolStripMenuItem"; + this.autoCropModeToolStripMenuItem.Tag = CropContainer.CropMode.AutoCrop; + + // + // highlightModeButton + // + this.highlightModeButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; this.highlightModeButton.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { this.textHighlightMenuItem, this.areaHighlightMenuItem, @@ -1872,8 +1914,13 @@ namespace Greenshot.Editor.Forms { private BindableToolStripButton btnCancel; private BindableToolStripButton btnConfirm; private GreenshotToolStripMenuItem selectAllToolStripMenuItem; - private BindableToolStripDropDownButton highlightModeButton; - private GreenshotToolStripMenuItem pixelizeToolStripMenuItem; + private BindableToolStripDropDownButton highlightModeButton; + private BindableToolStripDropDownButton cropModeButton; + private GreenshotToolStripMenuItem defaultCropModeToolStripMenuItem; + private GreenshotToolStripMenuItem verticalCropModeToolStripMenuItem; + private GreenshotToolStripMenuItem horizontalCropModeToolStripMenuItem; + private GreenshotToolStripMenuItem autoCropModeToolStripMenuItem; + private GreenshotToolStripMenuItem pixelizeToolStripMenuItem; private GreenshotToolStripMenuItem blurToolStripMenuItem; private BindableToolStripDropDownButton obfuscateModeButton; private GreenshotToolStripButton btnHighlight; diff --git a/src/Greenshot.Editor/Forms/ImageEditorForm.cs b/src/Greenshot.Editor/Forms/ImageEditorForm.cs index 277f04252..ee37302ea 100644 --- a/src/Greenshot.Editor/Forms/ImageEditorForm.cs +++ b/src/Greenshot.Editor/Forms/ImageEditorForm.cs @@ -284,6 +284,7 @@ namespace Greenshot.Editor.Forms obfuscateModeButton.DropDownItemClicked += FilterPresetDropDownItemClicked; highlightModeButton.DropDownItemClicked += FilterPresetDropDownItemClicked; + cropModeButton.DropDownItemClicked += CropStyleDropDownItemClicked; _toolbarButtons = new[] { @@ -727,21 +728,12 @@ namespace Greenshot.Editor.Forms private void BtnCropClick(object sender, EventArgs e) { - if (_surface.DrawingMode == DrawingModes.Crop) - { - //intercept repeated click event - //rotate through crop styles - _surface.FieldAggregator.GetField(FieldType.CROPSTYLE).Value = CropContainer.GetNextStyle((string)_surface.FieldAggregator.GetField(FieldType.CROPSTYLE).Value); - _surface.RemoveCropContainer(); - - //reinitialize crop modus - _surface.DrawingMode = DrawingModes.Crop; - } - else + if (_surface.DrawingMode != DrawingModes.Crop) { _surface.DrawingMode = DrawingModes.Crop; + InitCropMode((CropContainer.CropMode)_surface.FieldAggregator.GetField(FieldType.CROPMODE).Value); + RefreshFieldControls(); } - RefreshFieldControls(); } private void BtnHighlightClick(object sender, EventArgs e) @@ -1305,6 +1297,7 @@ namespace Greenshot.Editor.Forms new BidirectionalBinding(previewQualityUpDown, "Value", _surface.FieldAggregator.GetField(FieldType.PREVIEW_QUALITY), "Value", DecimalDoublePercentageConverter.GetInstance(), NotNullValidator.GetInstance()); new BidirectionalBinding(obfuscateModeButton, "SelectedTag", _surface.FieldAggregator.GetField(FieldType.PREPARED_FILTER_OBFUSCATE), "Value"); + new BidirectionalBinding(cropModeButton, "SelectedTag", _surface.FieldAggregator.GetField(FieldType.CROPMODE), "Value"); new BidirectionalBinding(highlightModeButton, "SelectedTag", _surface.FieldAggregator.GetField(FieldType.PREPARED_FILTER_HIGHLIGHT), "Value"); new BidirectionalBinding(counterUpDown, "Value", _surface, "CounterStart", DecimalIntConverter.GetInstance(), NotNullValidator.GetInstance()); } @@ -1340,6 +1333,7 @@ namespace Greenshot.Editor.Forms && ((FieldFlag) props.GetFieldValue(FieldType.FLAGS) & FieldFlag.CONFIRMABLE) == FieldFlag.CONFIRMABLE; obfuscateModeButton.Visible = props.HasFieldValue(FieldType.PREPARED_FILTER_OBFUSCATE); + cropModeButton.Visible = props.HasFieldValue(FieldType.CROPMODE); highlightModeButton.Visible = props.HasFieldValue(FieldType.PREPARED_FILTER_HIGHLIGHT); } else @@ -1392,11 +1386,6 @@ namespace Greenshot.Editor.Forms ToolStripItemEndisabler.Enable(helpToolStripMenuItem); ToolStripItemEndisabler.Enable(aboutToolStripMenuItem); ToolStripItemEndisabler.Enable(preferencesToolStripMenuItem); - if (_surface.DrawingMode == DrawingModes.Crop) - { - //While cropping, enable the button to change crop style - btnCrop.Enabled = true; - } _controlsDisabledDueToConfirmable = true; } } @@ -1600,6 +1589,37 @@ namespace Greenshot.Editor.Forms Invalidate(true); } + protected void CropStyleDropDownItemClicked(object sender, ToolStripItemClickedEventArgs e) + { + InitCropMode((CropContainer.CropMode)e.ClickedItem.Tag); + + RefreshFieldControls(); + Invalidate(true); + } + + private void InitCropMode(CropContainer.CropMode mode) + { + _surface.DrawingMode = DrawingModes.None; + _surface.RemoveCropContainer(); + + if (mode == CropContainer.CropMode.AutoCrop) + { + if (!_surface.AutoCrop()) + { + //not AutoCrop possible automatic switch to default crop mode + _surface.DrawingMode = DrawingModes.Crop; + _surface.FieldAggregator.GetField(FieldType.CROPMODE).Value = CropContainer.CropMode.Default; + this.cropModeButton.SelectedTag = CropContainer.CropMode.Default; + this.statusLabel.Text = Language.GetString(LangKey.editor_autocrop_not_possible); + } + } + else + { + _surface.DrawingMode = DrawingModes.Crop; + } + + } + private void SelectAllToolStripMenuItemClick(object sender, EventArgs e) { _surface.SelectAllElements(); @@ -1661,14 +1681,6 @@ namespace Greenshot.Editor.Forms } } - private void AutoCropToolStripMenuItemClick(object sender, EventArgs e) - { - if (_surface.AutoCrop()) - { - RefreshFieldControls(); - } - } - private void AddBorderToolStripMenuItemClick(object sender, EventArgs e) { _surface.ApplyBitmapEffect(new BorderEffect()); diff --git a/src/Greenshot.Editor/Forms/ImageEditorForm.resx b/src/Greenshot.Editor/Forms/ImageEditorForm.resx index 57fe2f2c7..1c5b104fd 100644 --- a/src/Greenshot.Editor/Forms/ImageEditorForm.resx +++ b/src/Greenshot.Editor/Forms/ImageEditorForm.resx @@ -1107,4 +1107,13 @@ 782, 17 + + ..\Resources\AutoCrop.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\CropHorizontal.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\CropVertical.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + \ No newline at end of file diff --git a/src/Greenshot.Editor/Resources/AutoCrop.Image.png b/src/Greenshot.Editor/Resources/AutoCrop.Image.png new file mode 100644 index 000000000..1f9d86c4d Binary files /dev/null and b/src/Greenshot.Editor/Resources/AutoCrop.Image.png differ diff --git a/src/Greenshot.Editor/Resources/CropHorizontal.Image.png b/src/Greenshot.Editor/Resources/CropHorizontal.Image.png new file mode 100644 index 000000000..f8f321c15 Binary files /dev/null and b/src/Greenshot.Editor/Resources/CropHorizontal.Image.png differ diff --git a/src/Greenshot.Editor/Resources/CropVertical.Image.png b/src/Greenshot.Editor/Resources/CropVertical.Image.png new file mode 100644 index 000000000..fe1dea06e Binary files /dev/null and b/src/Greenshot.Editor/Resources/CropVertical.Image.png differ diff --git a/src/Greenshot/Languages/language-de-DE.xml b/src/Greenshot/Languages/language-de-DE.xml index 062cdd6a5..cf03f914f 100644 --- a/src/Greenshot/Languages/language-de-DE.xml +++ b/src/Greenshot/Languages/language-de-DE.xml @@ -76,8 +76,9 @@ schnell zu finden. Vielen Dank :) Endpunkt Keine Anfangspunkt - Automatisch zuschneiden - Hintergrundfarbe (0-9) + Automatisch zuschneiden + Automatisches Zuschneiden nicht möglich + Hintergrundfarbe (0-9) Weichzeichner-Radius Fett Rand @@ -91,7 +92,12 @@ schnell zu finden. Vielen Dank :) Grafik in die Zwischenablage kopieren Pfad in Zwischenablage kopieren Kopieren - Zuschneiden (C) + Zuschneiden (C) + Zuschneiden - Modus + Zuschneiden + Vertikal ausschneiden + Horizontal ausschneiden + Automatisch zuschneiden Auswahlwerkzeug (Esc) Ausschneiden Gewähltes Element löschen diff --git a/src/Greenshot/Languages/language-en-US.xml b/src/Greenshot/Languages/language-en-US.xml index b575f549b..c51854d5f 100644 --- a/src/Greenshot/Languages/language-en-US.xml +++ b/src/Greenshot/Languages/language-en-US.xml @@ -78,6 +78,7 @@ Also, we would highly appreciate if you checked whether a tracker item already e None Start point Auto crop + Auto crop not possible Fill color (0-9) Blur radius Bold @@ -93,6 +94,11 @@ Also, we would highly appreciate if you checked whether a tracker item already e Copy path to clipboard Copy Crop (C) + Crop mode + Crop + Crop out vertically + Crop out horizontally + Auto crop Selection Tool (ESC) Cut Delete