public void BeginAddTask(WorkPathModel shapeModel)
        {
            MachineTask task = new MachineTask(shapeModel.Shape, ActiveKnifeTool);

            shapeModel.PathChanged += OnPathChanged;

            TaskModel.ThePath      = shapeModel;
            TaskModel.CurrentTask  = task;
            TaskModel.TheKnifeTool = new KnifeToolModel(ActiveKnifeTool);

            OnModelChanged(EnumModelType.MT_Task, EnumDataChange.DC_ADD);
        }
        public void BeginEditTask(MachineTask task, WorkPathModel shapeModel)
        {
            ActiveKnifeTool = task.Tool;

            shapeModel.PathChanged += OnPathChanged;

            TaskModel.ThePath      = shapeModel;
            TaskModel.CurrentTask  = task;
            TaskModel.TheKnifeTool = new KnifeToolModel(ActiveKnifeTool);

            KnifeShape.UpdateKnifeTool(ActiveKnifeTool);

            OnModelChanged(EnumModelType.MT_Task, EnumDataChange.DC_MODIFIED);
        }