Esempio n. 1
0
 public void CallbackEvent2(object sender, SandboxEventArguments eventData)
 {
     Dictionary<string, object> data = eventData.Data;
     string property1 = (string)data["property1"];
     float property2 = Convert.ToSingle(data["property2"]);
     Console.WriteLine("CallbackEvent2 handler receive data \"[{0}, {1}]\"", property1, property2);
 }
Esempio n. 2
0
 public void FireEventWithDelay(string name, SandboxEventArguments eventData, float delay)
 {
     lock (((ICollection)_eventObserver).SyncRoot)
     {
         EventHolder holder;
         _eventObserver.TryGetValue(name, out holder);
         if (holder != null)
         {
             throw new NotImplementedException();
         }
     }
 }
Esempio n. 3
0
 public void FireEvent(string name, SandboxEventArguments eventData)
 {
     lock (((ICollection)_eventObserver).SyncRoot)
     {
         EventHolder holder;
         _eventObserver.TryGetValue(name, out holder);
         if (holder != null)
         {
             eventData.EventName = name;
             holder.Fire(eventData);
             Console.WriteLine("Event named {0} has been fired", name);
         }
     }
 }
Esempio n. 4
0
        public void SimpleEventSubscriptionAndFire()
        {
            EventManager eventManager = EventManager.Instance;

            string eventName = "eventName";
            eventManager.SubscribeToEvent(eventName, CallbackEvent1);
            eventManager.SubscribeToEvent(eventName, CallbackEvent2);

            Dictionary<string, object> data = new Dictionary<string, object>();
            data.Add("property1", "I'am a property in this data");
            data.Add("property2", 3.14);

            SandboxEventArguments args = new SandboxEventArguments(this,data );

            eventManager.UnsubscribeToEvent(eventName, CallbackEvent2);
            eventManager.FireEvent(eventName, args);
        }
Esempio n. 5
0
 public void Fire(SandboxEventArguments arguments)
 {
     if (EventDelegates != null)
     {
         EventDelegates(arguments.Sender, arguments);
     }
 }