/// <summary> /// /// </summary> /// <param name="useFavorites"></param> /// <param name="favoriteParameter"></param> /// <returns></returns> private static dynamic UseFavorite(ListGenerator.ListGenerator.FilterOnFavorites useFavorites, IParameter favoriteParameter) { return((useFavorites == ListGenerator.ListGenerator.FilterOnFavorites.All) || ((favoriteParameter != null) && (useFavorites == ListGenerator.ListGenerator.FilterOnFavorites.No) && !favoriteParameter.Value) || ((favoriteParameter != null) && (useFavorites == ListGenerator.ListGenerator.FilterOnFavorites.Yes) && favoriteParameter.Value)); }
/// <summary> /// /// </summary> /// <param name="ignoreInit"></param> /// <param name="filterOnText"></param> /// <param name="filterText"></param> /// <param name="caseSensitive"></param> /// <param name="useFavorites"></param> /// <param name="filterDescription"></param> /// <returns></returns> public bool UseInList( bool ignoreInit, bool filterOnText, string filterText, bool caseSensitive, ListGenerator.ListGenerator.FilterOnFavorites useFavorites, bool filterDescription) { // Check ignore. var usePatch = (!ignoreInit || !IsEmptyOrInit); // Check text filtering. usePatch &= FilterOnText(filterOnText, filterText, caseSensitive, filterDescription); usePatch &= CheckFavorite(useFavorites, usePatch); return(usePatch); }
/// <summary> /// /// </summary> /// <param name="useFavorites"></param> /// <param name="usePatch"></param> /// <returns></returns> private bool CheckFavorite(ListGenerator.ListGenerator.FilterOnFavorites useFavorites, bool usePatch) { var areFavoritesSupported = PcgRoot.AreFavoritesSupported; if (areFavoritesSupported) { var favoriteParameter = (this is IProgram) ? ((IProgram)this).GetParam(ParameterNames.ProgramParameterName.Favorite) : (this is ICombi) ? ((ICombi)this).GetParam(ParameterNames.CombiParameterName.Favorite) : null; // TODO: Fix this ugly code usePatch &= PcgRoot.AreFavoritesSupported && UseFavorite(useFavorites, favoriteParameter); } return(usePatch); }