private static string GetDefaultPage(string pageName, string alternatePageName, string defaultValue) { if (string.IsNullOrEmpty(pageName) && string.IsNullOrEmpty(alternatePageName)) { throw new ArgumentNullException("pageName & alternatePageName"); } try { string result = string.Empty; IHxIndex namedUrlIndex = (IHxIndex)session.GetNavigationInterface("!DefaultNamedUrlIndex", "", ref IndexGuid); IHxTopicList topics = namedUrlIndex.GetTopicsFromString(pageName, 0); if (topics.Count == 0 && !string.IsNullOrEmpty(alternatePageName)) { topics = namedUrlIndex.GetTopicsFromString(alternatePageName, 0); } if (topics.Count > 0) { result = topics.ItemAt(1).URL; } if (string.IsNullOrEmpty(result)) { result = defaultValue; } return(result); } catch (System.Runtime.InteropServices.COMException) { return(defaultValue); } }
public static IHxTopicList GetMatchingTopicsForDynamicHelp(string searchTerm) { if (dynamicHelpIsBusy || dynamicHelp == null || string.IsNullOrEmpty(searchTerm)) { return(null); } IHxTopicList topics; try { dynamicHelpIsBusy = true; topics = dynamicHelp.GetTopicsFromString(searchTerm, 0); LoggingService.Info("Help 2.0: Dynamic Help called"); } catch (System.Runtime.InteropServices.COMException) { LoggingService.Error("Help 2.0: Dynamic Help search failed"); topics = null; } finally { dynamicHelpIsBusy = false; } return(topics); }