예제 #1
0
        internal void start(PointF point, FlowChart fc)
        {
            cycleRoots.Clear();
            affectedArrows.Clear();
            startPoint = currentPoint = point;

            if (action == Action.Split)
            {
                invalidRect = currentObject.getRepaintRect(true);
                return;
            }

            if (action == Action.Create)
            {
                fc.raiseInitEvent(currentObject);
                currentObject.startCreate(point);
            }

            if (action == Action.Modify)
            {
                fc.fireBeginModifyEvent(currentObject, point, selectionHandle);
                currentObject.startModify(point, selectionHandle, this);
            }

            invalidRect = currentObject.getRepaintRect(action == Action.Modify);
        }