Example #1
0
            public override bool Equals(object obj)
            {
                RoutedEventKey other = obj as RoutedEventKey;

                return(Object.ReferenceEquals(this, other) || !Object.ReferenceEquals(other, null) &&
                       Object.Equals(this.Owner, other.Owner) &&
                       Object.Equals(this.Name, other.Name));
            }
Example #2
0
        public static void AddOwner(RoutedEvent routedEvent, Type ownerType)
        {
            RoutedEventKey key = new RoutedEventKey(ownerType, routedEvent.Name);

            if (registeredRoutedEvents.ContainsKey(key))
            {
                throw new Granular.Exception("Type \"{0}\" is already an owner of RoutedEvent \"{1}\"", key.Owner.Name, routedEvent);
            }

            registeredRoutedEvents.Add(key, routedEvent);
        }
Example #3
0
        public static void AddOwner(RoutedEvent routedEvent, Type ownerType)
        {
            RoutedEventKey key = new RoutedEventKey(ownerType, routedEvent.Name);

            if (registeredRoutedEvents.ContainsKey(key))
            {
                throw new Granular.Exception("Type \"{0}\" is already an owner of RoutedEvent \"{1}\"", key.Owner.Name, routedEvent);
            }

            registeredRoutedEvents.Add(key, routedEvent);
        }
Example #4
0
        public static RoutedEvent RegisterRoutedEvent(string name, RoutingStrategy routingStrategy, Type handlerType, Type ownerType)
        {
            RoutedEventKey key = new RoutedEventKey(ownerType, name);

            if (registeredRoutedEvents.ContainsKey(key))
            {
                throw new Granular.Exception("RoutedEvent {0}.{1} is already registered", ownerType.Name, name);
            }

            RoutedEvent routedEvent = new RoutedEvent(name, routingStrategy, handlerType, ownerType);

            registeredRoutedEvents.Add(key, routedEvent);

            return(routedEvent);
        }
 public static RoutedEvent RegisterRoutedEvent(string name, RoutingStrategy routingStrategy, Type handlerType, Type ownerType) {
     if (string.IsNullOrEmpty(name))
         throw new ArgumentException("name");
     if (null == handlerType)
         throw new ArgumentNullException("handlerType");
     if (null == ownerType)
         throw new ArgumentNullException("ownerType");
     //
     RoutedEventKey key = new RoutedEventKey(name, ownerType);
     if (routedEvents.ContainsKey(key)) {
         throw new InvalidOperationException("This routed event is already registered.");
     }
     RoutedEvent routedEvent = new RoutedEvent(handlerType, name, ownerType, routingStrategy);
     RoutedEventInfo routedEventInfo = new RoutedEventInfo(routedEvent);
     routedEvents.Add(key, routedEventInfo);
     return routedEvent;
 }
Example #6
0
        public static RoutedEvent RegisterRoutedEvent(string name, RoutingStrategy routingStrategy, Type handlerType, Type ownerType)
        {
            RoutedEventKey key = new RoutedEventKey(ownerType, name);

            if (registeredRoutedEvents.ContainsKey(key))
            {
                throw new Granular.Exception("RoutedEvent {0}.{1} is already registered", ownerType.Name, name);
            }

            RoutedEvent routedEvent = new RoutedEvent(name, routingStrategy, handlerType, ownerType);

            registeredRoutedEvents.Add(key, routedEvent);

            return routedEvent;
        }