public bool DispatchEvent(EventContext context)
        {
            EventBridge bridge  = TryGetEventBridge(context.type);
            EventBridge gBridge = null;

            if ((this is DisplayObject) && ((DisplayObject)this).gOwner != null)
            {
                gBridge = ((DisplayObject)this).gOwner.TryGetEventBridge(context.type);
            }

            EventDispatcher savedSender = context.sender;

            if (bridge != null && !bridge.isEmpty)
            {
                bridge.CallCaptureInternal(context);
                bridge.CallInternal(context);
            }

            if (gBridge != null && !gBridge.isEmpty)
            {
                gBridge.CallCaptureInternal(context);
                gBridge.CallInternal(context);
            }

            context.sender = savedSender;
            return(context._defaultPrevented);
        }
        internal bool InternalDispatchEvent(string strType, EventBridge bridge, object data)
        {
            EventBridge gBridge = null;

            if ((this is DisplayObject) && ((DisplayObject)this).gOwner != null)
            {
                gBridge = ((DisplayObject)this).gOwner.TryGetEventBridge(strType);
            }

            bool b1 = bridge != null && !bridge.isEmpty;
            bool b2 = gBridge != null && !gBridge.isEmpty;

            if (b1 || b2)
            {
                EventContext context = EventContext.Get();
                context.initiator         = this;
                context._stopsPropagation = false;
                context._defaultPrevented = false;
                context.type = strType;
                context.data = data;

                if (b1)
                {
                    bridge.CallCaptureInternal(context);
                    bridge.CallInternal(context);
                }

                if (b2)
                {
                    gBridge.CallCaptureInternal(context);
                    gBridge.CallInternal(context);
                }

                EventContext.Return(context);
                context.initiator = null;
                context.sender    = null;
                context.data      = null;

                return(context._defaultPrevented);
            }
            else
            {
                return(false);
            }
        }