public object Handle(DebugInspectorAction action, ReflectedObject reflected)
        {
            if (reflected == null || action != DebugInspectorAction.Format)
            {
                return(null);
            }

            if (!(reflected.Target is TextEvent text))
            {
                return(null);
            }

            IText textSource = Engine.GlobalExchange?.Resolve <ITextFormatter>()?.Format(text.ToId());

            return(textSource?.ToString());
        }
        public void Handle(DebugInspectorAction action, Reflector.ReflectedObject reflected)
        {
            if (reflected?.Parent == null)
            {
                return;
            }

            if (!(reflected.Parent.Object is SpriteInstanceData[] array))
            {
                return;
            }

            switch (action)
            {
            case DebugInspectorAction.Hover: array[reflected.CollectionIndex].Flags |= SpriteFlags.RedTint; break;

            case DebugInspectorAction.Blur: array[reflected.CollectionIndex].Flags &= ~SpriteFlags.RedTint; break;
            }
        }
        public object Handle(DebugInspectorAction action, ReflectedObject reflected)
        {
            if (reflected == null || action != DebugInspectorAction.Format)
            {
                return(null);
            }

            if (!(reflected.Target is QueryEvent query))
            {
                return(null);
            }

            var querier      = Engine.GlobalExchange?.Resolve <IQuerier>();
            var eventManager = Engine.GlobalExchange?.Resolve <IEventManager>();

            if (querier == null || eventManager == null)
            {
                return(null);
            }

            return(querier.QueryDebug(query).ToString());
        }