public override void EndSession(ISearchContext context) { if (m_CurrentSelector == null) { return; } var selectorArgs = new AdvancedObjectSelectorParameters(context); m_CurrentSelector.handler(AdvancedObjectSelectorEventType.EndSession, selectorArgs); m_CurrentSelector = null; }
static bool TryGetValidHandler(ObjectSelectorSearchContext context, out AdvancedObjectSelector selector) { selector = null; foreach (var searchSelector in GetActiveSelectors()) { if (searchSelector.validator.handler(context)) { selector = searchSelector; return(true); } } return(false); }
public override void BeginSession(ISearchContext context) { m_CurrentSelector = null; var objectSelectorContext = context as ObjectSelectorSearchContext; if (objectSelectorContext == null) { return; } if (!TryGetValidHandler(objectSelectorContext, out m_CurrentSelector)) { return; } var selectorArgs = new AdvancedObjectSelectorParameters(objectSelectorContext); m_CurrentSelector.handler(AdvancedObjectSelectorEventType.BeginSession, selectorArgs); }