BUG-1762, FEATURE-964, FEATURE-860: Add right click on drop-shadow or torn-edge brings up the settings, left-click or the hotkey (Ctrl + Q for Dropshadow, Ctrl + T for Torn-Edge) will apply directly with the previous/default settings.

This commit is contained in:
Robin 2016-08-18 09:28:08 +02:00
parent 3b58f61a0d
commit e18951569d
3 changed files with 49 additions and 20 deletions

View file

@ -464,13 +464,13 @@ namespace Greenshot {
// //
this.addDropshadowToolStripMenuItem.LanguageKey = "editor_image_shadow"; this.addDropshadowToolStripMenuItem.LanguageKey = "editor_image_shadow";
this.addDropshadowToolStripMenuItem.Name = "addDropshadowToolStripMenuItem"; this.addDropshadowToolStripMenuItem.Name = "addDropshadowToolStripMenuItem";
this.addDropshadowToolStripMenuItem.Click += new System.EventHandler(this.AddDropshadowToolStripMenuItemClick); this.addDropshadowToolStripMenuItem.MouseUp += AddDropshadowToolStripMenuItemMouseUp;
// //
// tornEdgesToolStripMenuItem // tornEdgesToolStripMenuItem
// //
this.tornEdgesToolStripMenuItem.LanguageKey = "editor_torn_edge"; this.tornEdgesToolStripMenuItem.LanguageKey = "editor_torn_edge";
this.tornEdgesToolStripMenuItem.Name = "tornEdgesToolStripMenuItem"; this.tornEdgesToolStripMenuItem.Name = "tornEdgesToolStripMenuItem";
this.tornEdgesToolStripMenuItem.Click += new System.EventHandler(this.TornEdgesToolStripMenuItemClick); this.tornEdgesToolStripMenuItem.MouseUp += TornEdgesToolStripMenuItemMouseUp;
// //
// grayscaleToolStripMenuItem // grayscaleToolStripMenuItem
// //

View file

@ -839,13 +839,13 @@ namespace Greenshot {
RedoToolStripMenuItemClick(sender, e); RedoToolStripMenuItemClick(sender, e);
break; break;
case Keys.Q: // Dropshadow Ctrl + Q case Keys.Q: // Dropshadow Ctrl + Q
AddDropshadowToolStripMenuItemClick(sender, e); AddDropshadowToolStripMenuItemMouseUp(sender, new MouseEventArgs(MouseButtons.Left, 0, 0, 0, 0));
break; break;
case Keys.B: // Border Ctrl + B case Keys.B: // Border Ctrl + B
AddBorderToolStripMenuItemClick(sender, e); AddBorderToolStripMenuItemClick(sender, e);
break; break;
case Keys.T: // Torn edge Ctrl + T case Keys.T: // Torn edge Ctrl + T
TornEdgesToolStripMenuItemClick(sender, e); TornEdgesToolStripMenuItemMouseUp(sender, new MouseEventArgs(MouseButtons.Left, 0, 0, 0, 0));
break; break;
case Keys.I: // Invert Ctrl + I case Keys.I: // Invert Ctrl + I
InvertToolStripMenuItemClick(sender, e); InvertToolStripMenuItemClick(sender, e);
@ -1345,26 +1345,40 @@ namespace Greenshot {
/// This is used when the dropshadow button is used /// This is used when the dropshadow button is used
/// </summary> /// </summary>
/// <param name="sender"></param> /// <param name="sender"></param>
/// <param name="e"></param> /// <param name="e">MouseEventArgs</param>
private void AddDropshadowToolStripMenuItemClick(object sender, EventArgs e) { private void AddDropshadowToolStripMenuItemMouseUp(object sender, MouseEventArgs e)
DropShadowEffect dropShadowEffect = EditorConfiguration.DropShadowEffectSettings; {
// TODO: Use the dropshadow settings form to make it possible to change the default values var dropShadowEffect = EditorConfiguration.DropShadowEffectSettings;
DialogResult result = new DropShadowSettingsForm(dropShadowEffect).ShowDialog(this); bool apply;
if (result == DialogResult.OK) { switch (e.Button)
{
case MouseButtons.Left:
apply = true;
break;
case MouseButtons.Right:
var result = new DropShadowSettingsForm(dropShadowEffect).ShowDialog(this);
apply = result == DialogResult.OK;
break;
default:
return;
}
if (apply)
{
_surface.ApplyBitmapEffect(dropShadowEffect); _surface.ApplyBitmapEffect(dropShadowEffect);
UpdateUndoRedoSurfaceDependencies(); UpdateUndoRedoSurfaceDependencies();
} }
} }
/// <summary> /// <summary>
/// Open the resize settings from, and resize if ok was pressed /// Open the resize settings from, and resize if ok was pressed
/// </summary> /// </summary>
/// <param name="sender"></param> /// <param name="sender"></param>
/// <param name="e"></param> /// <param name="e"></param>
private void BtnResizeClick(object sender, EventArgs e) { private void BtnResizeClick(object sender, EventArgs e) {
ResizeEffect resizeEffect = new ResizeEffect(_surface.Image.Width, _surface.Image.Height, true); var resizeEffect = new ResizeEffect(_surface.Image.Width, _surface.Image.Height, true);
// TODO: Use the Resize SettingsForm to make it possible to change the default values var result = new ResizeSettingsForm(resizeEffect).ShowDialog(this);
DialogResult result = new ResizeSettingsForm(resizeEffect).ShowDialog(this);
if (result == DialogResult.OK) { if (result == DialogResult.OK) {
_surface.ApplyBitmapEffect(resizeEffect); _surface.ApplyBitmapEffect(resizeEffect);
UpdateUndoRedoSurfaceDependencies(); UpdateUndoRedoSurfaceDependencies();
@ -1372,15 +1386,29 @@ namespace Greenshot {
} }
/// <summary> /// <summary>
/// Call the torn edge effect /// This is used when the torn-edge button is used
/// </summary> /// </summary>
/// <param name="sender"></param> /// <param name="sender"></param>
/// <param name="e"></param> /// <param name="e">MouseEventArgs</param>
private void TornEdgesToolStripMenuItemClick(object sender, EventArgs e) { private void TornEdgesToolStripMenuItemMouseUp(object sender, MouseEventArgs e)
TornEdgeEffect tornEdgeEffect = EditorConfiguration.TornEdgeEffectSettings; {
// TODO: Use the dropshadow settings form to make it possible to change the default values var tornEdgeEffect = EditorConfiguration.TornEdgeEffectSettings;
DialogResult result = new TornEdgeSettingsForm(tornEdgeEffect).ShowDialog(this); bool apply;
if (result == DialogResult.OK) { switch (e.Button)
{
case MouseButtons.Left:
apply = true;
break;
case MouseButtons.Right:
var result = new TornEdgeSettingsForm(tornEdgeEffect).ShowDialog(this);
apply = result == DialogResult.OK;
break;
default:
return;
}
if (apply)
{
_surface.ApplyBitmapEffect(tornEdgeEffect); _surface.ApplyBitmapEffect(tornEdgeEffect);
UpdateUndoRedoSurfaceDependencies(); UpdateUndoRedoSurfaceDependencies();
} }

View file

@ -10,6 +10,7 @@ All details to our tickets can be found here: https://greenshot.atlassian.net
@DETAILVERSION@ @DETAILVERSION@
Fixed: Fixed:
* BUG-1762: Dropshadow & tornedge prompts for settings every time (now left mouse applies, right shows settings)
* BUG-1812: Opening the editor after removing a monitor shows it outside the visible screen. * BUG-1812: Opening the editor after removing a monitor shows it outside the visible screen.
* BUG-1876: Already running message, multi user environment * BUG-1876: Already running message, multi user environment
* BUG-1884: OCR has trailing blank spaces * BUG-1884: OCR has trailing blank spaces