Auto hide shape options menu when not needed

This commit is contained in:
Jaex 2016-10-01 10:05:39 +03:00
parent 48aaa5f56e
commit 3b9122b326

View file

@ -185,8 +185,9 @@ public bool NodesVisible
private RegionCaptureForm form;
private Form menuForm;
private ToolStripEx tsMain;
private ToolStripSeparator tssObjectOptions, tssShapeOptions;
private ToolStripSeparator tssObjectActions, tssShapeOptions;
private ToolStripButton tsbDeleteSelected, tsbDeleteAll;
private ToolStripDropDownButton tsddbShapeOptions;
private ToolStripMenuItem tsmiBorderColor, tsmiFillColor, tsmiHighlightColor, tsmiQuickCrop;
private ToolStripLabeledNumericUpDown tslnudBorderSize, tslnudCornerRadius, tslnudBlurRadius, tslnudPixelateSize;
private bool isLeftPressed, isRightPressed, isUpPressed, isDownPressed;
@ -448,8 +449,8 @@ private void CreateMenu()
#region Selected object
tssObjectOptions = new ToolStripSeparator();
tsMain.Items.Add(tssObjectOptions);
tssObjectActions = new ToolStripSeparator();
tsMain.Items.Add(tssObjectActions);
tsbDeleteSelected = new ToolStripButton(Resources.ShapeManager_CreateContextMenu_Delete_selected_object);
tsbDeleteSelected.DisplayStyle = ToolStripItemDisplayStyle.Image;
@ -470,7 +471,7 @@ private void CreateMenu()
tssShapeOptions = new ToolStripSeparator();
tsMain.Items.Add(tssShapeOptions);
ToolStripDropDownButton tsddbShapeOptions = new ToolStripDropDownButton("Shape options");
tsddbShapeOptions = new ToolStripDropDownButton("Shape options");
tsddbShapeOptions.DisplayStyle = ToolStripItemDisplayStyle.Image;
tsddbShapeOptions.Image = Resources.layer__pencil;
tsMain.Items.Add(tsddbShapeOptions);
@ -828,7 +829,7 @@ private void UpdateMenu()
ShapeType shapeType = CurrentShapeType;
tssObjectOptions.Visible = tsbDeleteAll.Visible = Shapes.Count > 0;
tssObjectActions.Visible = tsbDeleteAll.Visible = Shapes.Count > 0;
tsbDeleteSelected.Visible = CurrentShape != null;
foreach (ToolStripButton tsb in tsMain.Items.OfType<ToolStripButton>().Where(x => x.Tag is ShapeType))
@ -917,6 +918,7 @@ private void UpdateMenu()
{
default:
tssShapeOptions.Visible = false;
tsddbShapeOptions.Visible = false;
break;
case ShapeType.RegionRoundedRectangle:
case ShapeType.DrawingRectangle:
@ -932,6 +934,7 @@ private void UpdateMenu()
case ShapeType.EffectPixelate:
case ShapeType.EffectHighlight:
tssShapeOptions.Visible = true;
tsddbShapeOptions.Visible = true;
break;
}