コード例 #1
0
        protected override void _activate(MacroTriggerWithArguments triggerWithArguments)
        {
            object[] argumentObjects = triggerWithArguments.ArgumentObjects;
            Timer    timer           = argumentObjects[0] as Timer;

            if (timer == null)
            {
                return;
            }
            int timeValue = (int)argumentObjects[1];

            if (timeValue < 0)
            {
                return;
            }
            PropertyChangedTwoValuesDelegate <Timer, int> timerSecondsChangedHandler = (i, ov, nv) => {
                if (nv == timeValue)
                {
                    triggerWithArguments.Fire();
                }
            };

            timer.SecondsChanged += timerSecondsChangedHandler;
            ActivationData activationData = new ActivationData(timer, timerSecondsChangedHandler);

            triggerWithArguments.Activated(activationData);
        }
コード例 #2
0
        protected override void _activate(MacroTriggerWithArguments triggerWithArguments)
        {
            object[] argumentObjects = triggerWithArguments.ArgumentObjects;
            Router   router          = argumentObjects[0] as Router;

            if (router == null)
            {
                return;
            }
            Router.CrosspointChangedDelegate routerCrosspointChangedHandler = (i, ov, nv) => {
                triggerWithArguments.Fire();
            };
            router.CrosspointChanged += routerCrosspointChangedHandler;
            ActivationData activationData = new ActivationData(router, routerCrosspointChangedHandler);

            triggerWithArguments.Activated(activationData);
        }
コード例 #3
0
        protected override void _activate(MacroTriggerWithArguments triggerWithArguments)
        {
            object[] argumentObjects = triggerWithArguments.ArgumentObjects;
            Router   router          = argumentObjects[0] as Router;

            if (router == null)
            {
                return;
            }
            RouterOutput routerOutput = argumentObjects[1] as RouterOutput;

            if (routerOutput == null)
            {
                return;
            }
            RouterOutput.CurrentInputChangedDelegate routerOutputCurrentInputChangedHandler = (ro, ri) => triggerWithArguments.Fire();
            routerOutput.CurrentInputChanged += routerOutputCurrentInputChangedHandler;
            ActivationData activationData = new ActivationData(routerOutput, routerOutputCurrentInputChangedHandler);

            triggerWithArguments.Activated(activationData);
        }
コード例 #4
0
 public MacroTriggerWithArgumentsProxy(MacroTriggerWithArguments original)
 {
     Trigger = original;
 }
コード例 #5
0
 protected override void _deactivate(MacroTriggerWithArguments triggerWithArguments, ActivationData activationData)
 {
     activationData.RouterOutput.CurrentInputChanged -= activationData.RouterOutputCurrentInputChangedHandler;
     triggerWithArguments.Deactivated();
 }
コード例 #6
0
 protected override void _deactivate(MacroTriggerWithArguments triggerWithArguments, ActivationData activationData)
 {
     activationData.Router.CrosspointChanged -= activationData.RouterCrosspointChangedHandler;
     triggerWithArguments.Deactivated();
 }
コード例 #7
0
 protected override void _deactivate(MacroTriggerWithArguments triggerWithArguments, ActivationData activationData)
 {
     activationData.Timer.SecondsChanged -= activationData.TimerSecondsChangedHandler;
     triggerWithArguments.Deactivated();
 }