src/FingersDance.ActionFactory/ActionFactory.cs
author PAMPHILE Jonathan <pamphile@efrei.fr>
Sun, 06 Sep 2009 19:53:24 +0200
changeset 38 fe84b5081ba2
parent 36 b54f552f14ce
child 39 0efa1d506f28
permissions -rw-r--r--
Test des menus
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
35
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     1
using System;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     2
using System.Collections.Generic;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     3
using System.Linq;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     4
using System.Text;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     5
using FingersDance.Control.Player;
38
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
     6
using FingersDance.Actions;
35
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     7
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     8
namespace FingersDance.ActionFactory
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     9
{
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    10
    public class ActionFactory
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    11
    {
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    12
        private Dictionary<String, Type> actionDict = new Dictionary<string, Type>();
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    13
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    14
        public ActionFactory()
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    15
        {
36
b54f552f14ce Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 35
diff changeset
    16
            actionDict.Add("ActionPlayMedia", Type.GetType("FingersDance.Actions.ActionPlayMedia"));
35
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    17
        }
38
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    18
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    19
        public ActionBase GetAction(string T, object Args)
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    20
        {
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    21
            try
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    22
            {
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    23
                return (ActionBase)Activator.CreateInstance(actionDict[T]);
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    24
            }
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    25
            catch (Exception)
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    26
            {
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    27
                return null;
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    28
            }
fe84b5081ba2 Test des menus
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 36
diff changeset
    29
        }
35
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    30
    }
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    31
}