public bool Apply(bool disposeController) { // we have to call apply for all dirty topics foreach (var node in _dirtyTopics) { var desc = (IOptionPanelDescriptor)node.Tag; var ctrl = desc.OptionPanel; if (null != ctrl && !ctrl.Apply()) { _currentNode = node; _view.SetSelectedNode(_currentNode); _view.InitializeTopicView(desc.Label, ctrl.ViewObject); _view.InitializeTopicViewDirtyIndicator(2); return(false); } } return(true); }