Add shortcuts (0-9, +/-) for foreground color, background color, line thickness, bold and shadow (#338) (#366)

Co-authored-by: meschi89 <45665020+meschi89@users.noreply.github.com>
This commit is contained in:
Robin Krom 2022-01-28 22:15:45 +01:00 committed by GitHub
parent 8985eb58fa
commit f98cbd1c44
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 563 additions and 9 deletions

View file

@ -111,6 +111,10 @@ namespace Greenshot.Base.Interfaces.Drawing
bool HasIntersectingFilters(Rectangle clipRectangle);
bool IntersectsWith(Rectangle clipRectangle);
void Draw(Graphics g, Bitmap bitmap, RenderMode renderMode, Rectangle clipRectangle);
void SetForegroundColor(Color color);
void SetBackgroundColor(Color color);
int IncreaseLineThickness(int increaseBy);
bool FlipShadow();
void Invalidate();
void PullElementsToTop(IDrawableContainerList elements);
bool CanPushDown(IDrawableContainerList elements);

View file

@ -38,6 +38,10 @@ namespace Greenshot.Base.Interfaces
event SurfaceMessageEventHandler SurfaceMessage;
event SurfaceDrawingModeEventHandler DrawingModeChanged;
event SurfaceElementEventHandler MovingElementChanged;
event SurfaceForegroundColorEventHandler ForegroundColorChanged;
event SurfaceBackgroundColorEventHandler BackgroundColorChanged;
event SurfaceLineThicknessEventHandler LineThicknessChanged;
event SurfaceShadowEventHandler ShadowChanged;
/// <summary>
/// Start value of the step-labels (counts)

View file

@ -0,0 +1,31 @@
/*
* Greenshot - a free and open source screenshot tool
* Copyright (C) 2007-2021 Thomas Braun, Jens Klingen, Robin Krom
*
* For more information see: https://getgreenshot.org/
* The Greenshot project is hosted on GitHub https://github.com/greenshot/greenshot
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
using System;
using System.Drawing;
namespace Greenshot.Base.Interfaces
{
public class SurfaceBackgroundColorEventArgs : EventArgs
{
public Color Color { get; set; }
}
}

View file

@ -0,0 +1,25 @@
/*
* Greenshot - a free and open source screenshot tool
* Copyright (C) 2007-2021 Thomas Braun, Jens Klingen, Robin Krom
*
* For more information see: https://getgreenshot.org/
* The Greenshot project is hosted on GitHub https://github.com/greenshot/greenshot
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
namespace Greenshot.Base.Interfaces
{
public delegate void SurfaceBackgroundColorEventHandler (object sender, SurfaceBackgroundColorEventArgs e);
}

View file

@ -0,0 +1,31 @@
/*
* Greenshot - a free and open source screenshot tool
* Copyright (C) 2007-2021 Thomas Braun, Jens Klingen, Robin Krom
*
* For more information see: https://getgreenshot.org/
* The Greenshot project is hosted on GitHub https://github.com/greenshot/greenshot
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
using System;
using System.Drawing;
namespace Greenshot.Base.Interfaces
{
public class SurfaceForegroundColorEventArgs : EventArgs
{
public Color Color { get; set; }
}
}

View file

@ -0,0 +1,25 @@
/*
* Greenshot - a free and open source screenshot tool
* Copyright (C) 2007-2021 Thomas Braun, Jens Klingen, Robin Krom
*
* For more information see: https://getgreenshot.org/
* The Greenshot project is hosted on GitHub https://github.com/greenshot/greenshot
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
namespace Greenshot.Base.Interfaces
{
public delegate void SurfaceForegroundColorEventHandler (object sender, SurfaceForegroundColorEventArgs e);
}

View file

@ -0,0 +1,31 @@
/*
* Greenshot - a free and open source screenshot tool
* Copyright (C) 2007-2021 Thomas Braun, Jens Klingen, Robin Krom
*
* For more information see: https://getgreenshot.org/
* The Greenshot project is hosted on GitHub https://github.com/greenshot/greenshot
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
using System;
using System.Drawing;
namespace Greenshot.Base.Interfaces
{
public class SurfaceLineThicknessEventArgs : EventArgs
{
public int Thickness { get; set; }
}
}

View file

@ -0,0 +1,25 @@
/*
* Greenshot - a free and open source screenshot tool
* Copyright (C) 2007-2021 Thomas Braun, Jens Klingen, Robin Krom
*
* For more information see: https://getgreenshot.org/
* The Greenshot project is hosted on GitHub https://github.com/greenshot/greenshot
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
namespace Greenshot.Base.Interfaces
{
public delegate void SurfaceLineThicknessEventHandler (object sender, SurfaceLineThicknessEventArgs e);
}

View file

@ -0,0 +1,31 @@
/*
* Greenshot - a free and open source screenshot tool
* Copyright (C) 2007-2021 Thomas Braun, Jens Klingen, Robin Krom
*
* For more information see: https://getgreenshot.org/
* The Greenshot project is hosted on GitHub https://github.com/greenshot/greenshot
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
using System;
using System.Drawing;
namespace Greenshot.Base.Interfaces
{
public class SurfaceShadowEventArgs : EventArgs
{
public bool HasShadow { get; set; }
}
}

View file

@ -0,0 +1,25 @@
/*
* Greenshot - a free and open source screenshot tool
* Copyright (C) 2007-2021 Thomas Braun, Jens Klingen, Robin Krom
*
* For more information see: https://getgreenshot.org/
* The Greenshot project is hosted on GitHub https://github.com/greenshot/greenshot
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
namespace Greenshot.Base.Interfaces
{
public delegate void SurfaceShadowEventHandler (object sender, SurfaceShadowEventArgs e);
}

View file

@ -30,6 +30,7 @@ using Greenshot.Base.Core;
using Greenshot.Base.Interfaces;
using Greenshot.Base.Interfaces.Drawing;
using Greenshot.Editor.Configuration;
using Greenshot.Editor.Drawing.Fields;
using Greenshot.Editor.Forms;
using Greenshot.Editor.Memento;
@ -430,6 +431,70 @@ namespace Greenshot.Editor.Drawing
}
}
public void SetForegroundColor(Color color)
{
var dcs = ToArray();
var field = FieldType.LINE_COLOR;
foreach (var dc in dcs)
{
if (dc is not AbstractFieldHolderWithChildren fh) continue;
if (!fh.HasField(field)) continue;
fh.SetFieldValue(field, color);
}
}
public void SetBackgroundColor(Color color)
{
var dcs = ToArray();
var field = FieldType.FILL_COLOR;
foreach (var dc in dcs)
{
if (dc is not AbstractFieldHolderWithChildren fh) continue;
if (!fh.HasField(field)) continue;
fh.SetFieldValue(field, color);
}
}
public int IncreaseLineThickness(int increaseBy)
{
var dcs = ToArray();
var field = FieldType.LINE_THICKNESS;
var lastThickness = 0;
foreach (var dc in dcs)
{
if (dc is not AbstractFieldHolderWithChildren fh) continue;
if (!fh.HasField(field)) continue;
var currentThickness = (int)fh.GetFieldValue(field);
var thickness = Math.Max(0, currentThickness + increaseBy);
fh.SetFieldValue(field, thickness);
lastThickness = thickness;
}
return lastThickness;
}
public bool FlipShadow()
{
var dcs = ToArray();
var field = FieldType.SHADOW;
var lastShadow = false;
foreach (var dc in dcs)
{
if (dc is not AbstractFieldHolderWithChildren fh) continue;
if (!fh.HasField(field)) continue;
var currentShadow = (bool)fh.GetFieldValue(field);
var shadow = !currentShadow;
fh.SetFieldValue(field, shadow);
lastShadow = shadow;
}
return lastShadow;
}
/// <summary>
/// Indicates whether the given list of elements can be pushed down,
/// i.e. whether there is at least one unselected element lower in hierarchy

View file

@ -112,6 +112,38 @@ namespace Greenshot.Editor.Drawing
remove => _surfaceMessage -= value;
}
[NonSerialized] private SurfaceForegroundColorEventHandler _foregroundColorChanged;
public event SurfaceForegroundColorEventHandler ForegroundColorChanged
{
add => _foregroundColorChanged += value;
remove => _foregroundColorChanged -= value;
}
[NonSerialized] private SurfaceBackgroundColorEventHandler _backgroundColorChanged;
public event SurfaceBackgroundColorEventHandler BackgroundColorChanged
{
add => _backgroundColorChanged += value;
remove => _backgroundColorChanged -= value;
}
[NonSerialized] private SurfaceLineThicknessEventHandler _lineThicknessChanged;
public event SurfaceLineThicknessEventHandler LineThicknessChanged
{
add => _lineThicknessChanged += value;
remove => _lineThicknessChanged -= value;
}
[NonSerialized] private SurfaceShadowEventHandler _shadowChanged;
public event SurfaceShadowEventHandler ShadowChanged
{
add => _shadowChanged += value;
remove => _shadowChanged -= value;
}
/// <summary>
/// inUndoRedo makes sure we don't undo/redo while in a undo/redo action
/// </summary>
@ -1060,6 +1092,74 @@ namespace Greenshot.Editor.Drawing
}
}
/// <summary>
/// Use to update UI when pressing a key to change the foreground color
/// </summary>
/// <param name="source">Who send</param>
/// <param name="color">new color</param>
public void UpdateForegroundColorEvent(object source, Color color)
{
if (_foregroundColorChanged != null)
{
var eventArgs = new SurfaceForegroundColorEventArgs
{
Color = color,
};
_foregroundColorChanged(source, eventArgs);
}
}
/// <summary>
/// Use to update UI when pressing a key to change the background color
/// </summary>
/// <param name="source">Who send</param>
/// <param name="color">new color</param>
public void UpdateBackgroundColorEvent(object source, Color color)
{
if (_lineThicknessChanged != null)
{
var eventArgs = new SurfaceBackgroundColorEventArgs
{
Color = color,
};
_backgroundColorChanged(source, eventArgs);
}
}
/// <summary>
/// Use to update UI when pressing a key to change the line thickness
/// </summary>
/// <param name="source">Who send</param>
/// <param name="thickness">new thickness</param>
public void UpdateLineThicknessEvent(object source, int thickness)
{
if (_lineThicknessChanged != null)
{
var eventArgs = new SurfaceLineThicknessEventArgs
{
Thickness = thickness,
};
_lineThicknessChanged(source, eventArgs);
}
}
/// <summary>
/// Use to update UI when pressing the key to show/hide the shadow
/// </summary>
/// <param name="source">Who send</param>
/// <param name="hasShadow">has shadow</param>
public void UpdateShadowEvent(object source, bool hasShadow)
{
if (_shadowChanged != null)
{
var eventArgs = new SurfaceShadowEventArgs
{
HasShadow = hasShadow,
};
_shadowChanged(source, eventArgs);
}
}
/// <summary>
/// Crop the surface
/// </summary>
@ -2212,6 +2312,87 @@ namespace Greenshot.Editor.Drawing
case Keys.Escape:
ConfirmSelectedConfirmableElements(false);
break;
case Keys.NumPad0:
SetSelectedElementColor(Color.Orange, true, shiftModifier);
break;
case Keys.NumPad1:
SetSelectedElementColor(Color.Red, true, shiftModifier);
break;
case Keys.NumPad2:
SetSelectedElementColor(Color.FromArgb(0,255,0), true, shiftModifier); // Color.Green is #008000 and not #00FF00
break;
case Keys.NumPad3:
SetSelectedElementColor(Color.Blue, true, shiftModifier);
break;
case Keys.NumPad4:
SetSelectedElementColor(Color.Cyan, true, shiftModifier);
break;
case Keys.NumPad5:
SetSelectedElementColor(Color.Magenta, true, shiftModifier);
break;
case Keys.NumPad6:
SetSelectedElementColor(Color.Yellow, true, shiftModifier);
break;
case Keys.NumPad7:
SetSelectedElementColor(Color.Black, true, shiftModifier);
break;
case Keys.NumPad8:
SetSelectedElementColor(Color.Gray, true, shiftModifier);
break;
case Keys.NumPad9:
SetSelectedElementColor(Color.White, true, shiftModifier);
break;
case Keys.D0:
case Keys.D0 | Keys.Shift:
SetSelectedElementColor(shiftModifier ? Color.Orange : Color.Transparent, false, shiftModifier);
break;
case Keys.D1:
case Keys.D1 | Keys.Shift:
SetSelectedElementColor(Color.Red, false, shiftModifier);
break;
case Keys.D2:
case Keys.D2 | Keys.Shift:
SetSelectedElementColor(Color.Green, false, shiftModifier);
break;
case Keys.D3:
case Keys.D3 | Keys.Shift:
SetSelectedElementColor(Color.Blue, false, shiftModifier);
break;
case Keys.D4:
case Keys.D4 | Keys.Shift:
SetSelectedElementColor(Color.Cyan, false, shiftModifier);
break;
case Keys.D5:
case Keys.D5 | Keys.Shift:
SetSelectedElementColor(Color.Magenta, false, shiftModifier);
break;
case Keys.D6:
case Keys.D6 | Keys.Shift:
SetSelectedElementColor(Color.Yellow, false, shiftModifier);
break;
case Keys.D7:
case Keys.D7 | Keys.Shift:
SetSelectedElementColor(Color.Black, false, shiftModifier);
break;
case Keys.D8:
case Keys.D8 | Keys.Shift:
SetSelectedElementColor(Color.Gray, false, shiftModifier);
break;
case Keys.D9:
case Keys.D9 | Keys.Shift:
SetSelectedElementColor(Color.White, false, shiftModifier);
break;
case Keys.Add:
case Keys.Add | Keys.Shift:
ChangeLineThickness(shiftModifier ? 5 : 1);
break;
case Keys.Subtract:
case Keys.Subtract | Keys.Shift:
ChangeLineThickness(shiftModifier ? -5 : -1);
break;
case Keys.Divide:
FlipShadow();
break;
/*case Keys.Delete:
RemoveSelectedElements();
break;*/
@ -2231,6 +2412,36 @@ namespace Greenshot.Editor.Drawing
return false;
}
// for laptops without numPads, also allow shift modifier
private void SetSelectedElementColor(Color color, bool numPad, bool shift)
{
if (numPad || shift)
{
selectedElements.SetForegroundColor(color);
UpdateForegroundColorEvent(this, color);
}
else
{
selectedElements.SetBackgroundColor(color);
UpdateBackgroundColorEvent(this, color);
}
selectedElements.Invalidate();
}
private void ChangeLineThickness(int increaseBy)
{
var newThickness = selectedElements.IncreaseLineThickness(increaseBy);
UpdateLineThicknessEvent(this, newThickness);
selectedElements.Invalidate();
}
private void FlipShadow()
{
var shadow = selectedElements.FlipShadow();
UpdateShadowEvent(this, shadow);
selectedElements.Invalidate();
}
/// <summary>
/// Property for accessing the elements on the surface
/// </summary>

View file

@ -230,6 +230,10 @@ namespace Greenshot.Editor.Forms
_surface.DrawingModeChanged += Surface_DrawingModeChanged;
_surface.SurfaceSizeChanged += SurfaceSizeChanged;
_surface.SurfaceMessage += SurfaceMessageReceived;
_surface.ForegroundColorChanged += ForegroundColorChanged;
_surface.BackgroundColorChanged += BackgroundColorChanged;
_surface.LineThicknessChanged += LineThicknessChanged;
_surface.ShadowChanged += ShadowChanged;
_surface.FieldAggregator.FieldChanged += FieldAggregatorFieldChanged;
SurfaceSizeChanged(Surface, null);
@ -498,6 +502,46 @@ namespace Greenshot.Editor.Forms
}
}
/// <summary>
/// This is called when the foreground color of the select element chances, used for shortcuts
/// </summary>
/// <param name="sender"></param>
/// <param name="eventArgs"></param>
private void ForegroundColorChanged(object sender, SurfaceForegroundColorEventArgs eventArgs)
{
btnLineColor.SelectedColor = eventArgs.Color;
}
/// <summary>
/// This is called when the background color of the select element chances, used for shortcuts
/// </summary>
/// <param name="sender"></param>
/// <param name="eventArgs"></param>
private void BackgroundColorChanged(object sender, SurfaceBackgroundColorEventArgs eventArgs)
{
btnFillColor.SelectedColor = eventArgs.Color;
}
/// <summary>
/// This is called when the line thickness of the select element chances, used for shortcuts
/// </summary>
/// <param name="sender"></param>
/// <param name="eventArgs"></param>
private void LineThicknessChanged(object sender, SurfaceLineThicknessEventArgs eventArgs)
{
lineThicknessUpDown.Value = eventArgs.Thickness;
}
/// <summary>
/// This is called when the shadow of the select element chances, used for shortcuts
/// </summary>
/// <param name="sender"></param>
/// <param name="eventArgs"></param>
private void ShadowChanged(object sender, SurfaceShadowEventArgs eventArgs)
{
shadowButton.Checked = eventArgs.HasShadow;
}
/// <summary>
/// This is called when the size of the surface chances, used for resizing and displaying the size information
/// </summary>

View file

@ -4,6 +4,7 @@
<!--
Note to translator: uncomment entry "about_translation" to have
your efforts honored in the "About Greenshot" dialog
TODO: remove newlines as in other files -> this leads to problems in multiline texts (or try xml:space=preserve)
-->
<resource name="about_translation">
Dansk oversættelse af Jens Jacob Thomsen

View file

@ -77,7 +77,7 @@ schnell zu finden. Vielen Dank :)</resource>
<resource name="editor_arrowheads_none">Keine</resource>
<resource name="editor_arrowheads_start">Anfangspunkt</resource>
<resource name="editor_autocrop">Automatisch zuschneiden</resource>
<resource name="editor_backcolor">Hintergrundfarbe</resource>
<resource name="editor_backcolor">Hintergrundfarbe (0-9)</resource>
<resource name="editor_blur_radius">Weichzeichner-Radius</resource>
<resource name="editor_bold">Fett</resource>
<resource name="editor_border">Rand</resource>
@ -110,7 +110,7 @@ schnell zu finden. Vielen Dank :)</resource>
<resource name="editor_email">E-Mail</resource>
<resource name="editor_file">Datei</resource>
<resource name="editor_fontsize">Größe</resource>
<resource name="editor_forecolor">Rahmenfarbe</resource>
<resource name="editor_forecolor">Rahmenfarbe (NumPad0-9, Shift+0-9)</resource>
<resource name="editor_grayscale">Graustufe</resource>
<resource name="editor_highlight_area">Bereich hervorheben</resource>
<resource name="editor_highlight_grayscale">Graustufen</resource>
@ -146,7 +146,7 @@ schnell zu finden. Vielen Dank :)</resource>
<resource name="editor_saveas">Speichern unter...</resource>
<resource name="editor_selectall">Alle Objekte auswählen</resource>
<resource name="editor_senttoprinter">Druckauftrag wurde an '{0}' gesendet.</resource>
<resource name="editor_shadow">Schatten An/Aus</resource>
<resource name="editor_shadow">Schatten An/Aus (/)</resource>
<resource name="editor_storedtoclipboard">Bild wurde in Zwischenablage kopiert.</resource>
<resource name="editor_thickness">Linienstärke</resource>
<resource name="editor_title">Greenshot Editor</resource>

View file

@ -78,7 +78,7 @@ Also, we would highly appreciate if you checked whether a tracker item already e
<resource name="editor_arrowheads_none">None</resource>
<resource name="editor_arrowheads_start">Start point</resource>
<resource name="editor_autocrop">Auto crop</resource>
<resource name="editor_backcolor">Fill color</resource>
<resource name="editor_backcolor">Fill color (0-9)</resource>
<resource name="editor_blur_radius">Blur radius</resource>
<resource name="editor_bold">Bold</resource>
<resource name="editor_border">Border</resource>
@ -111,7 +111,7 @@ Also, we would highly appreciate if you checked whether a tracker item already e
<resource name="editor_email">E-Mail</resource>
<resource name="editor_file">File</resource>
<resource name="editor_fontsize">Size</resource>
<resource name="editor_forecolor">Line color</resource>
<resource name="editor_forecolor">Line color (NumPad0-9, Shift+0-9)</resource>
<resource name="editor_grayscale">Grayscale</resource>
<resource name="editor_highlight_area">Highlight area</resource>
<resource name="editor_highlight_grayscale">Grayscale</resource>
@ -147,7 +147,7 @@ Also, we would highly appreciate if you checked whether a tracker item already e
<resource name="editor_saveas">Save as...</resource>
<resource name="editor_selectall">Select all</resource>
<resource name="editor_senttoprinter">Print job was sent to '{0}'.</resource>
<resource name="editor_shadow">Drop shadow</resource>
<resource name="editor_shadow">Drop shadow (/)</resource>
<resource name="editor_storedtoclipboard">Image stored to clipboard.</resource>
<resource name="editor_thickness">Line thickness</resource>
<resource name="editor_title">Greenshot image editor</resource>

View file

@ -78,7 +78,7 @@ Controleer ook even of dit probleem mogelijk al gemeld is! Gebruik de zoekfuncti
<resource name="editor_arrowheads_none">Geen</resource>
<resource name="editor_arrowheads_start">Startpunt</resource>
<resource name="editor_autocrop">Automatisch bijsnijden</resource>
<resource name="editor_backcolor">Vulkleur</resource>
<resource name="editor_backcolor">Vulkleur (0-9)</resource>
<resource name="editor_blur_radius">Vervagingsradius</resource>
<resource name="editor_bold">Vet</resource>
<resource name="editor_border">Rand</resource>
@ -111,7 +111,7 @@ Controleer ook even of dit probleem mogelijk al gemeld is! Gebruik de zoekfuncti
<resource name="editor_email">E-mail</resource>
<resource name="editor_file">Bestand</resource>
<resource name="editor_fontsize">Grootte</resource>
<resource name="editor_forecolor">Lijnkleur</resource>
<resource name="editor_forecolor">Lijnkleur (NumPad0-9, Shift+0-9)</resource>
<resource name="editor_grayscale">Grijstinten</resource>
<resource name="editor_highlight_area">Gebied markeren</resource>
<resource name="editor_highlight_grayscale">Grijstinten</resource>
@ -147,7 +147,7 @@ Controleer ook even of dit probleem mogelijk al gemeld is! Gebruik de zoekfuncti
<resource name="editor_saveas">Opslaan als…</resource>
<resource name="editor_selectall">Alles selecteren</resource>
<resource name="editor_senttoprinter">Afdruktaak verzonden naar '{0}'.</resource>
<resource name="editor_shadow">Schaduw</resource>
<resource name="editor_shadow">Schaduw (/)</resource>
<resource name="editor_storedtoclipboard">Afbeelding opgeslagen op het klembord.</resource>
<resource name="editor_thickness">Lijndikte</resource>
<resource name="editor_title">Greenshot beeldbewerker</resource>

View file

@ -4,6 +4,7 @@
<!--
Note to translator: uncomment entry "about_translation" to have
your efforts honored in the "About Greenshot" dialog
TODO: remove newlines as in other files -> this leads to problems in multiline texts (or try xml:space=preserve)
-->
<resource name="about_translation">
Traducere în limba română - Radu Mogoș