src/FingersDance.ActionFactory/ActionGenerator.cs
author cavaliet
Wed, 07 Oct 2009 17:16:46 +0200
changeset 135 84b3bf5ee3d2
parent 75 99d003723474
child 138 61ba19954ed4
permissions -rw-r--r--
First step of drag and drop annotation from a timeline to an other player

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using FingersDance.Actions;

namespace FingersDance.ActionFactory
{
    public class ActionGenerator
    {
        private Dictionary<String, Type> actionDict = new Dictionary<string, Type>();

        public ActionGenerator()
        {
            actionDict.Add("ActionPlayMedia", typeof(FingersDance.Actions.ActionPlayMedia));
            actionDict.Add("ActionShowMessage", typeof(FingersDance.Actions.ActionShowMessage));
            actionDict.Add("ActionOpenMedia", typeof(FingersDance.Actions.ActionOpenMedia));
            actionDict.Add("ActionStopMedia", typeof(FingersDance.Actions.ActionStopMedia));

            actionDict.Add("ActionStartOrEndAnnotation", typeof(FingersDance.Actions.ActionStartOrEndAnnotation));
            actionDict.Add("ActionAddAnnotation", typeof(FingersDance.Actions.ActionAddAnnotation));
        }

        public ActionBase GetAction(String T, Object Args)
        {

            try
            {
                ActionBase ab = (ActionBase)Activator.CreateInstance(actionDict[T], Args);
                return ab;
            }
            catch (Exception ex) { }
            return null;
        }
    }
}