private void SetDispalyFeeds(DisplayFeedsType type, IRSSCategory category)
        {
            RSSFeedsContainer feeds = FeedsGroup.FirstOrDefault();

            if (feeds != null)
            {
                switch (type)
                {
                case DisplayFeedsType.All:
                    DisplayFeeds     = feeds.GetFeeds().Where(feed => !feed.Disabled).ToList();
                    DisplayFeedsName = "All Feeds";
                    break;

                case DisplayFeedsType.Active:
                    DisplayFeeds = (from feed in feeds.GetFeeds()
                                    where (feed.Active && !feed.Disabled)
                                    select feed).ToList();
                    DisplayFeedsName = "All Active Feeds";
                    break;

                case DisplayFeedsType.NonActive:
                    DisplayFeeds = (from feed in feeds.GetFeeds()
                                    where (!feed.Active && !feed.Disabled)
                                    select feed).ToList();
                    DisplayFeedsName = "All Non Active Feeds";
                    break;

                case DisplayFeedsType.Privates:
                    DisplayFeeds     = feeds.GetFeeds().Where(feed => !feed.Disabled && feed.IsPersonalFeed).ToList();
                    DisplayFeedsName = "All Private Feeds";
                    break;

                case DisplayFeedsType.Disabled:
                    DisplayFeeds     = feeds.GetFeeds().Where(feed => feed.Disabled).ToList();
                    DisplayFeedsName = "All Disabled Feeds";
                    break;

                case DisplayFeedsType.NotInCategory:
                    DisplayFeeds =
                        feeds.GetFeeds().Where(feed => !feed.Disabled && feed.BelongsToCategories.Count == 0).ToList
                            ();
                    DisplayFeedsName = "All Feeds not in any Category";
                    break;

                case DisplayFeedsType.InSomeCategory:
                    if (category != null)
                    {
                        DisplayFeeds = (from feed in feeds.GetFeeds()
                                        where feed.BelongsToCategories.Contains(category)
                                        select feed).ToList();
                        DisplayFeedsName = "All Feeds in Category: " + category.CategoryName;
                    }
                    break;
                }
                // tpFeeds.Text = string.Format("Feeds Viewer (Selected Feeds: {0})", DisplayFeedsName);
            }
        }
Exemple #2
0
        public static IEnumerable <IRSSPost> Search(RSSFeedsContainer feedsContainer, string text)
        {
            IEnumerable <IRSSPost> allMatchedPosts = new List <IRSSPost>();

            if (feedsContainer != null)
            {
                allMatchedPosts = SearchInFeeds(feedsContainer.GetFeeds(), text);
            }
            return(allMatchedPosts);
        }
Exemple #3
0
        public FollowUpPosts(RSSFeedsContainer feedsContainer, AppSettings settings)
        {
            InitializeComponent();
            FeedsContainer = feedsContainer;
            ToolTip ttBtns = new ToolTip();

            ttBtns.SetToolTip(btnToggleState, "toggle post's marked for later read status");

            Settings = settings;
        }
Exemple #4
0
        public FeedInformationDialog(RSSFeedsContainer feedsContainer, IRSSFeed feed, AppSettings settings, bool suppressErrorDisplay)
        {
            InitializeComponent();
            FeedsContainer = feedsContainer;
            ToolTip ttBtns = new ToolTip();

            ttBtns.SetToolTip(btnDelete, "Delete the selected post");
            ttBtns.SetToolTip(btnHide, "Hide/Show the selected post");
            Feed     = feed;
            Settings = settings;
            this.SuppressErrorDisplay = suppressErrorDisplay;
        }
Exemple #5
0
        //TODO
        // private OutlookConnection OutlookConnection { get; set; }

        #endregion

        #region Ctor

        public SettingsDialog(RSSFeedsContainer feedsGroup, AppSettings settings, bool gotoRSSPanel = false)
        {
            InitializeComponent();

            rbtnPerUsers.Text = "Per User (files will be saved in the following folder: " + Path.Combine(Environment.GetFolderPath(System.Environment.SpecialFolder.UserProfile),
                                                                                                         @"AppData\local\LB Desktop Aggregator)");
            FeedsContainer             = feedsGroup;
            Settings                   = settings;
            pnlGeneralSettings.Visible = true;
            pnlGeneralSettings.Dock    = DockStyle.Fill;

            pnlRSSSettings.Visible = false;
            pnlRSSSettings.Dock    = DockStyle.Fill;

            pnlRSScategories.Visible = false;
            pnlRSScategories.Dock    = DockStyle.Fill;

            pnlOutlook.Visible = false;
            pnlOutlook.Dock    = DockStyle.Fill;


            cbCodepages.DisplayMember = Util.Reflection.GetPropertyName((Util.EncodingsCodes.DisplayItem <int> list) => list.FullName);
            cbCodepages.ValueMember   = Util.Reflection.GetPropertyName((Util.EncodingsCodes.DisplayItem <int> list) => list.Value);
            cbCodepages.DataSource    = Util.EncodingsCodes.EncodingsCodeList;
            LoadSettings();
            LoadFeeds();
            LoadFeedsForCategories();

            if (gotoRSSPanel)
            {
                lvItems.Items[1].Selected = true;
            }

            #region Events subscribing
            btnSaveSettings.Click += (sener, e) =>
            {
                try
                {
                    SaveSettings(true);
                    MessageShow.ShowMessage(this, "The settings were saved successfully.",
                                            "Operation completed successfully",
                                            MessageBoxButtons.OK,
                                            MessageBoxIcon.Information);
                    Close();
                }
                catch (System.Exception ex)
                {
                    MessageShow.ShowException(this, ex);
                }
            };

            cbCodepages.Click          += (sender, e) => rbcodepage.Checked = true;
            btnUnselectAll.Click       += (sender, e) => SelectDeselectAllFeeds(false);
            btnSelectAll.Click         += (sender, e) => SelectDeselectAllFeeds(true);
            btnClearAllHistories.Click += (sender, e) =>
            {
                DialogResult result = MessageShow.ShowMessage(this,
                                                              "Are you sure you want to clear all the feeds cached posts?",
                                                              "Erasing confirmation",
                                                              MessageBoxButtons.YesNo,
                                                              MessageBoxIcon.
                                                              Exclamation);
                if (result == DialogResult.Yes)
                {
                    ClearHistories();
                }
            };

            #endregion
        }