mirror of
https://github.com/greenshot/greenshot
synced 2025-08-20 21:43:24 -07:00
Fixed the field changing for #338, this should trigger undo and also changes to the default field values (meaning storing in the configuration)- Added the CTRL modifier for the feature for now.
This commit is contained in:
parent
f98cbd1c44
commit
fdbaca6c3f
2 changed files with 115 additions and 148 deletions
|
@ -2270,12 +2270,11 @@ namespace Greenshot.Editor.Drawing
|
|||
/// <returns>false if no keys were processed</returns>
|
||||
public bool ProcessCmdKey(Keys k)
|
||||
{
|
||||
if (selectedElements.Count > 0)
|
||||
{
|
||||
if (selectedElements.Count <= 0) return false;
|
||||
|
||||
bool shiftModifier = (ModifierKeys & Keys.Shift) == Keys.Shift;
|
||||
int px = shiftModifier ? 10 : 1;
|
||||
Point moveBy = Point.Empty;
|
||||
|
||||
switch (k)
|
||||
{
|
||||
case Keys.Left:
|
||||
|
@ -2312,85 +2311,55 @@ 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:
|
||||
case Keys.D0 | Keys.Control:
|
||||
case Keys.D0 | Keys.Shift | Keys.Control:
|
||||
SetSelectedElementColor(shiftModifier ? Color.Orange : Color.Transparent, false, shiftModifier);
|
||||
break;
|
||||
case Keys.D1:
|
||||
case Keys.D1 | Keys.Shift:
|
||||
case Keys.D1 | Keys.Control:
|
||||
case Keys.D1 | Keys.Shift | Keys.Control:
|
||||
SetSelectedElementColor(Color.Red, false, shiftModifier);
|
||||
break;
|
||||
case Keys.D2:
|
||||
case Keys.D2 | Keys.Shift:
|
||||
case Keys.D2 | Keys.Control:
|
||||
case Keys.D2 | Keys.Shift | Keys.Control:
|
||||
SetSelectedElementColor(Color.Green, false, shiftModifier);
|
||||
break;
|
||||
case Keys.D3:
|
||||
case Keys.D3 | Keys.Shift:
|
||||
case Keys.D3 | Keys.Control:
|
||||
case Keys.D3 | Keys.Shift | Keys.Control:
|
||||
SetSelectedElementColor(Color.Blue, false, shiftModifier);
|
||||
break;
|
||||
case Keys.D4:
|
||||
case Keys.D4 | Keys.Shift:
|
||||
case Keys.D4 | Keys.Control:
|
||||
case Keys.D4 | Keys.Shift | Keys.Control:
|
||||
SetSelectedElementColor(Color.Cyan, false, shiftModifier);
|
||||
break;
|
||||
case Keys.D5:
|
||||
case Keys.D5 | Keys.Shift:
|
||||
case Keys.D5 | Keys.Control:
|
||||
case Keys.D5 | Keys.Shift | Keys.Control:
|
||||
SetSelectedElementColor(Color.Magenta, false, shiftModifier);
|
||||
break;
|
||||
case Keys.D6:
|
||||
case Keys.D6 | Keys.Shift:
|
||||
case Keys.D6 | Keys.Control:
|
||||
case Keys.D6 | Keys.Shift | Keys.Control:
|
||||
SetSelectedElementColor(Color.Yellow, false, shiftModifier);
|
||||
break;
|
||||
case Keys.D7:
|
||||
case Keys.D7 | Keys.Shift:
|
||||
case Keys.D7 | Keys.Control:
|
||||
case Keys.D7 | Keys.Shift | Keys.Control:
|
||||
SetSelectedElementColor(Color.Black, false, shiftModifier);
|
||||
break;
|
||||
case Keys.D8:
|
||||
case Keys.D8 | Keys.Shift:
|
||||
case Keys.D8 | Keys.Control:
|
||||
case Keys.D8 | Keys.Shift | Keys.Control:
|
||||
SetSelectedElementColor(Color.Gray, false, shiftModifier);
|
||||
break;
|
||||
case Keys.D9:
|
||||
case Keys.D9 | Keys.Shift:
|
||||
case Keys.D9 | Keys.Control:
|
||||
case Keys.D9 | Keys.Shift | Keys.Control:
|
||||
SetSelectedElementColor(Color.White, false, shiftModifier);
|
||||
break;
|
||||
case Keys.Add:
|
||||
case Keys.Add | Keys.Shift:
|
||||
case Keys.Add | Keys.Control:
|
||||
case Keys.Add | Keys.Shift | Keys.Control:
|
||||
ChangeLineThickness(shiftModifier ? 5 : 1);
|
||||
break;
|
||||
case Keys.Subtract:
|
||||
case Keys.Subtract | Keys.Shift:
|
||||
case Keys.Subtract | Keys.Control:
|
||||
case Keys.Subtract | Keys.Shift | Keys.Control:
|
||||
ChangeLineThickness(shiftModifier ? -5 : -1);
|
||||
break;
|
||||
case Keys.Divide:
|
||||
case Keys.Divide | Keys.Control:
|
||||
FlipShadow();
|
||||
break;
|
||||
/*case Keys.Delete:
|
||||
|
@ -2407,9 +2376,7 @@ namespace Greenshot.Editor.Drawing
|
|||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// for laptops without numPads, also allow shift modifier
|
||||
|
|
|
@ -471,7 +471,7 @@ namespace Greenshot.Editor.Forms
|
|||
private delegate void SurfaceMessageReceivedThreadSafeDelegate(object sender, SurfaceMessageEventArgs eventArgs);
|
||||
|
||||
/// <summary>
|
||||
/// This is the SufraceMessageEvent receiver which display a message in the status bar if the
|
||||
/// This is the SurfaceMessageEvent receiver which display a message in the status bar if the
|
||||
/// surface is exported. It also updates the title to represent the filename, if there is one.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
|
@ -505,41 +505,41 @@ 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>
|
||||
/// <param name="sender">object</param>
|
||||
/// <param name="eventArgs">SurfaceForegroundColorEventArgs</param>
|
||||
private void ForegroundColorChanged(object sender, SurfaceForegroundColorEventArgs eventArgs)
|
||||
{
|
||||
btnLineColor.SelectedColor = eventArgs.Color;
|
||||
_surface.FieldAggregator.GetField(FieldType.LINE_COLOR).Value = 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>
|
||||
/// <param name="sender">object</param>
|
||||
/// <param name="eventArgs">SurfaceBackgroundColorEventArgs</param>
|
||||
private void BackgroundColorChanged(object sender, SurfaceBackgroundColorEventArgs eventArgs)
|
||||
{
|
||||
btnFillColor.SelectedColor = eventArgs.Color;
|
||||
_surface.FieldAggregator.GetField(FieldType.FILL_COLOR).Value = 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>
|
||||
/// <param name="sender">object</param>
|
||||
/// <param name="eventArgs">SurfaceLineThicknessEventArgs</param>
|
||||
private void LineThicknessChanged(object sender, SurfaceLineThicknessEventArgs eventArgs)
|
||||
{
|
||||
lineThicknessUpDown.Value = eventArgs.Thickness;
|
||||
_surface.FieldAggregator.GetField(FieldType.LINE_THICKNESS).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>
|
||||
/// <param name="sender">object</param>
|
||||
/// <param name="eventArgs">SurfaceShadowEventArgs</param>
|
||||
private void ShadowChanged(object sender, SurfaceShadowEventArgs eventArgs)
|
||||
{
|
||||
shadowButton.Checked = eventArgs.HasShadow;
|
||||
_surface.FieldAggregator.GetField(FieldType.SHADOW).Value = eventArgs.HasShadow;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue