public void Triggered(MacroTriggerWithArguments source) { string logMessage = string.Format("Macro #{0} ({1}) triggered. Event: {2}.", ID, Name, source.HumanReadable); LogDispatcher.I(LOG_TAG, logMessage); _run(); }
public virtual void Register(MacroTriggerWithArguments triggerWithArguments) { if (!registeredTriggersWithArguments.Contains(triggerWithArguments)) { registeredTriggersWithArguments.Add(triggerWithArguments); } }
public void AddTrigger(MacroTriggerWithArguments trigger) { if (!triggers.Contains(trigger)) { triggers.Add(trigger); } trigger.Macro = this; }
public virtual void Activate(MacroTriggerWithArguments triggerWithArguments) { if (triggerWithArguments.Trigger != this) { return; } if (triggerWithArguments.ArgumentObjects.Length != Arguments.Length) { return; } _activate(triggerWithArguments); }
public virtual void Deactivate(MacroTriggerWithArguments triggerWithArguments) { if (triggerWithArguments.Trigger != this) { return; } TActivationData activationData = triggerWithArguments.ActivationData as TActivationData; if (activationData == null) { return; } _deactivate(triggerWithArguments, activationData); }
public XElement SerializeItem(object item, object parentItem) { MacroTriggerWithArguments triggerWA = item as MacroTriggerWithArguments; if (triggerWA == null) { return(null); } XElement xmlElement = new XElement(TAG_NAME); xmlElement.SetAttributeValue(ATTRIBUTE_CODE, triggerWA.TriggerCode); foreach (string argumentStr in triggerWA.ArgumentKeys) { XElement argElement = new XElement(TAG_NAME_ARGUMENT); argElement.SetAttributeValue(ATTRIBUTE_ARGUMENT_KEY, argumentStr); xmlElement.Add(argElement); } return(xmlElement); }
public virtual void Unregister(MacroTriggerWithArguments triggerWithArguments) { registeredTriggersWithArguments.Remove(triggerWithArguments); }
public void RemoveTrigger(MacroTriggerWithArguments trigger) { triggers.Remove(trigger); trigger.Macro = null; }
protected abstract void _deactivate(MacroTriggerWithArguments triggerWithArguments, TActivationData activationData);
protected abstract void _activate(MacroTriggerWithArguments triggerWithArguments);