예제 #1
0
    public override bool duplicateElement(DataControl dataControl)
    {
        if (!(dataControl is ActionDataControl))
        {
            return(false);
        }


        Action            newElement;
        ActionDataControl adc;

        if (((Action)(dataControl.getContent())).getType() == Action.CUSTOM || ((Action)(dataControl.getContent())).getType() == Action.CUSTOM_INTERACT)
        {
            newElement = (CustomAction)(((CustomAction)(dataControl.getContent())).Clone());
            adc        = new CustomActionDataControl((CustomAction)newElement);
        }
        else
        {
            newElement = (Action)(((Action)(dataControl.getContent())));
            adc        = new ActionDataControl(newElement);
        }
        actionsList.Add(newElement);
        actionsDataControlList.Add(adc);
        return(true);
    }
예제 #2
0
    public override bool moveElementDown(DataControl dataControl)
    {
        bool elementMoved = false;
        int  elementIndex = actionsList.IndexOf((Action)dataControl.getContent());

        if (elementIndex < actionsList.Count - 1)
        {
            Action            e = actionsList[elementIndex];
            ActionDataControl c = actionsDataControlList[elementIndex];
            actionsList.RemoveAt(elementIndex);
            actionsDataControlList.RemoveAt(elementIndex);
            actionsList.Insert(elementIndex + 1, e);
            actionsDataControlList.Insert(elementIndex + 1, c);
            controller.dataModified();
            elementMoved = true;
        }

        return(elementMoved);
    }