private void displayDiagram_ShapeDoubleClick(object sender, DiagramPresenterShapeClickEventArgs e) { var shape = (FilterSetupShapeBase)e.Shape; // workaround: only modify the shape if it's currently selected. The diagram likes to // send click events to all shapes under the mouse, even if they're not active. if (!diagramDisplay.SelectedShapes.Contains(shape)) { return; } if (shape is NestingSetupShape) { NestingSetupShape s = (shape as NestingSetupShape); s.Expanded = !s.Expanded; } else if (shape is FilterShape) { FilterShape filterShape = shape as FilterShape; filterShape.RunSetup(); //changes were made to the filter so set _changesMade _changesMade = true; } if (shape is ElementNodeShape) { _ResizeAndPositionElementShapes(_elementsXPosition); } if (shape is ControllerShape) { _ResizeAndPositionControllerShapes(_controllersXPosition); } }
public override void CopyFrom(Shape source) { base.CopyFrom(source); if (source is NestingSetupShape) { NestingSetupShape src = (NestingSetupShape)source; ChildFilterShapes = new List <FilterSetupShapeBase>(src.ChildFilterShapes); } }
private void _ShowShapeAndChildren(NestingSetupShape nestingShape) { _ShowShape(nestingShape); foreach (var childFilterShape in nestingShape.ChildFilterShapes) { if (childFilterShape is NestingSetupShape) { _ShowShapeAndChildren((NestingSetupShape)childFilterShape); } } }
private void _ShowShapeAndChildren(NestingSetupShape nestingShape) { _ShowShape(nestingShape); foreach (var childFilterShape in nestingShape.ChildFilterShapes) { if (childFilterShape is NestingSetupShape) _ShowShapeAndChildren((NestingSetupShape)childFilterShape); } }