public void HandleSelectedNode(ApplicationPresenter presenter) { var nodeHandler = DeviareNodeHandler.ForProcesses( processNode => { var collector = new Collector(); processNode.Accept(collector); presenter.SelectedProcessesChanged( collector.CollectedProcesses); return(true); }, processGroupNode => { var collector = new Collector(); processGroupNode.Accept(collector); presenter.SelectedProcessesChanged( collector.CollectedProcesses); return(true); }, processCategoryNode => false, presenter.ClearSelectedProcesses); SelectedDeviareNode().Accept(nodeHandler); }
public void HandleSelectedNode(Func <ModuleNode, bool> aModuleHandler, Action noSelection) { var aVisitor = DeviareNodeHandler.ForModules(aModuleHandler, noSelection); aVisitor.Visit(SelectedDeviareNode); }