コード例 #1
0
 internal HandlerRules(IHandlers <TObject, TBaseStatus> handlers, TBaseStatus status, TBaseStatus overridden, bool effect)
 {
     this.handlers   = handlers;
     this.status     = status;
     this.overridden = overridden;
     this.effect     = effect;
 }
コード例 #2
0
 public CommandDispatcher(ICommandParser parser, IHandlers handlers, IEnvironmentCollection environments, EngineState state, IOutput output)
 {
     Parser       = parser;
     Handlers     = handlers;
     Environments = environments;
     State        = state;
     Output       = output;
 }
コード例 #3
0
 public static void UnHookUIControll(object ctrl, IHandlers handler)
 {
     if (ctrl != null)
     {
         var contrlType = ctrl.GetType().Name;
         switch (contrlType)
         {
         case "UIButton":
             ((UIButton)ctrl).TouchUpInside -= handler.ControlsHandler;
             break;
         }
     }
 }
コード例 #4
0
        public Engine(IHandlers handlers, IEnvironmentCollection environments, ICommandParser parser, IOutput output, EngineEventCatalog eventCatalog, EngineSettings settings)
        {
            Assert.ArgumentNotNull(handlers, nameof(handlers));
            Assert.ArgumentNotNull(environments, nameof(environments));
            Assert.ArgumentNotNull(parser, nameof(parser));
            Assert.ArgumentNotNull(output, nameof(output));
            Assert.ArgumentNotNull(eventCatalog, nameof(eventCatalog));

            Environments  = environments;
            _handlers     = handlers;
            _eventCatalog = eventCatalog;
            _settings     = settings;
            _parser       = parser;
            Output        = output;
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: JacobCWard/People
        static void Main() {
            IHandlers[] handlers = new IHandlers[] { 
                new InitialData(), 
                new MappingHandlers(), 
                new PartialHandlers(), 
                new MainHandlers(),
                new OntologyMap()
            };

            foreach (IHandlers handler in handlers) {
                handler.Register();
            }

            DefaultStyles styles = new DefaultStyles();

            styles.ApplyIfEmpty();
        }
コード例 #6
0
 public static void UnHookUIControll(object ctrl, IHandlers handler)
 {
     if (ctrl != null)
     {
         var contrlType = ctrl.GetType().Name;
         if (ActionDictionary.ContainsKey(contrlType))
         {
             var eventName     = ActionDictionary [contrlType];
             var eventInstance = ctrl.GetType().GetEvent(eventName);
             if (eventInstance != null)
             {
                 var tDelegate = eventInstance.EventHandlerType;
                 var miHandler = handler.GetType().GetMethod("ControlsHandler", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Public);
                 if (miHandler != null)
                 {
                     var             addHandler     = eventInstance.GetRemoveMethod();
                     var             d              = Delegate.CreateDelegate(tDelegate, handler, miHandler);
                     System.Object[] addHandlerArgs = { d };
                     addHandler.Invoke(ctrl, addHandlerArgs);
                 }
             }
         }
     }
 }
コード例 #7
0
ファイル: HelpHandler.cs プロジェクト: Whiteknight/StoneFruit
 public HelpHandler(IOutput output, IHandlers commands, IArguments args)
 {
     _output   = output;
     _commands = commands;
     _args     = args;
 }
コード例 #8
0
 internal StatusHandlers(IHandlers <TObject, TBaseStatus> handlers, TBaseStatus status, TBaseStatus overridden)
 {
     Messages = new HandlerRules(handlers, status, overridden, false);
     Effects  = new HandlerRules(handlers, status, overridden, true);
 }
コード例 #9
0
 public override void Visit(IHandlers handlers)
 {
     handlers.HandleSubClassA(this);
 }
コード例 #10
0
 public abstract void Visit(IHandlers handlers);