Exemple #1
0
        /// <summary>
        /// Button find envent handler.
        /// </summary>
        /// <param name="sender">The sender object.</param>
        /// <param name="e">The event arguments.</param>
        private void btnFind_Click(object sender, EventArgs e)
        {
            string from = this.txtFrom.Text;
            string to = this.txtTo.Text;
            string message = this.txtMessage.Text;
            string subject = this.txtSubject.Text;
            bool attachemnt = this.chkAttachments.Checked;

            string dateFrom = string.Empty;
            if (this.chkFromDate.Checked)
            {
                dateFrom = this.datePickerFrom.Text;
            }

            string dateTo = string.Empty;
            if (this.chkToDate.Checked)
            {
                dateTo = this.datePickerTo.Text;
            }

            this._findSettings = new FindSettings(from, to, subject, message, 
                dateFrom, dateTo, attachemnt);

            this.DialogResult = DialogResult.OK;
        }
Exemple #2
0
        /// <summary>
        /// Load the fields according the find settings.
        /// </summary>
        /// <param name="findSettings">The FindSettings object.</param>
        public void LoadFindSettings(FindSettings findSettings)
        {
            this.txtFrom.Text = findSettings.From;
            this.txtTo.Text = findSettings.To;
            this.txtMessage.Text = findSettings.Message;
            this.txtSubject.Text = findSettings.Subject;
            this.chkAttachments.Checked = findSettings.Attachemnt;

            if (findSettings.DateFrom.Equals(string.Empty))
            {
                this.chkFromDate.Checked = false;
            }
            else
            {
                this.chkFromDate.Checked = true;
                this.datePickerFrom.Text = findSettings.DateFrom;
            }

            if (findSettings.DateTo.Equals(string.Empty))
            {
                this.chkToDate.Checked = false;
            }
            else
            {
                this.chkToDate.Checked = true;
                this.datePickerTo.Text = findSettings.DateTo;
            }
        }
Exemple #3
0
        /// <summary>
        /// Method for filter the messages.
        /// </summary>
        /// <param name="findSettings">The filter settings.</param>
        public void FilterMessages(FindSettings findSettings)
        {
            this.dataGridView.CurrentCell = null;

            CurrencyManager cm = (CurrencyManager)this.dataGridView.BindingContext[this.dataGridView.DataSource];

            cm.SuspendBinding();

            foreach (DataGridViewRow row in this.dataGridView.Rows)
            {
                MailMessage mailMessage = (MailMessage)row.DataBoundItem;

                if (findSettings.IsMessageFiltered(mailMessage))
                {
                    row.Visible = false;
                }
                else
                {
                    row.Visible = true;
                }
            }

            cm.ResumeBinding();

            this.Invalidate(true);
        }
Exemple #4
0
        /// <summary>
        /// Load the fields according the find settings.
        /// </summary>
        /// <param name="findSettings">The FindSettings object.</param>
        public void LoadFindSettings(FindSettings findSettings)
        {
            this.txtFrom.Text           = findSettings.From;
            this.txtTo.Text             = findSettings.To;
            this.txtMessage.Text        = findSettings.Message;
            this.txtSubject.Text        = findSettings.Subject;
            this.chkAttachments.Checked = findSettings.Attachemnt;

            if (findSettings.DateFrom.Equals(string.Empty))
            {
                this.chkFromDate.Checked = false;
            }
            else
            {
                this.chkFromDate.Checked = true;
                this.datePickerFrom.Text = findSettings.DateFrom;
            }

            if (findSettings.DateTo.Equals(string.Empty))
            {
                this.chkToDate.Checked = false;
            }
            else
            {
                this.chkToDate.Checked = true;
                this.datePickerTo.Text = findSettings.DateTo;
            }
        }
Exemple #5
0
        /// <summary>
        /// Button find envent handler.
        /// </summary>
        /// <param name="sender">The sender object.</param>
        /// <param name="e">The event arguments.</param>
        private void btnFind_Click(object sender, EventArgs e)
        {
            string from       = this.txtFrom.Text;
            string to         = this.txtTo.Text;
            string message    = this.txtMessage.Text;
            string subject    = this.txtSubject.Text;
            bool   attachemnt = this.chkAttachments.Checked;

            string dateFrom = string.Empty;

            if (this.chkFromDate.Checked)
            {
                dateFrom = this.datePickerFrom.Text;
            }

            string dateTo = string.Empty;

            if (this.chkToDate.Checked)
            {
                dateTo = this.datePickerTo.Text;
            }

            this._findSettings = new FindSettings(from, to, subject, message,
                                                  dateFrom, dateTo, attachemnt);

            this.DialogResult = DialogResult.OK;
        }
Exemple #6
0
        /// <summary>
        /// MainForm constructor.
        /// </summary>
        private MainForm()
        {
            SplashForm splash = new SplashForm();

            splash.ShowSplashScreen();

            Facade facade = Facade.GetInstance();

            // Retrieve messages from inbox mailbox.
            facade.LoadMessageStore(Constants.Inbox, facade.GetMessageStore());

            // Retrieve messages from sent item mailbox.
            facade.LoadMessageStore(Constants.SentItems, facade.GetMessageStoreSent());

            // Retrieve messages from delete item mailbox.
            facade.LoadMessageStore(Constants.DeletedItems, facade.GetMessageStoreDelete());

            // Retrieve messages from custom items mailbox.
            facade.LoadMessageStore(Constants.CustomFolders, facade.GetMessageStoreCustom());

            // retrieve the messages from inbox mailbox.
            facade.RetrieveMessages(Constants.Inbox);

            // set the flag for load first message.
            loadFirstMessageFlag = true;

            // Use system fonts
            this.Font = SystemFonts.IconTitleFont;

            this._findSettings = new FindSettings();

            // Designer Generated Code
            this.InitializeComponent();

            // select the mail button.
            this.leftSpine1.toolStripButtonMail_Click(this, EventArgs.Empty);

            // closes the splash.
            splash.CloseSplashScreen();

            // if there is no mail accounts.
            if (Facade.GetInstance().GetDefaultAccountInfo() == null)
            {
                SettingsReminderForm settingsReminderForm = new SettingsReminderForm();
                DialogResult         dr = settingsReminderForm.ShowDialog();
                if (dr == DialogResult.OK)
                {
                    AccountSettingsForm frm = new AccountSettingsForm();
                    frm.ShowDialog();
                }
            }
        }
Exemple #7
0
        /// <summary>
        /// Button find event handler
        /// </summary>
        /// <param name="sender">The sender object.</param>
        /// <param name="e">The event arguments.</param>
        private void toolStripButtonFind_Click(object sender, EventArgs e)
        {
            FindForm frm = new FindForm();

            frm.LoadFindSettings(this._findSettings);
            DialogResult dr = frm.ShowDialog();

            if (dr == DialogResult.OK)
            {
                this._findSettings = frm.FindSettings;
                this.messageArea1.MessageList.FilterMessages(this._findSettings);
            }
        }
Exemple #8
0
        /// <summary>
        /// MainForm constructor.
        /// </summary>
        private MainForm()
		{
            SplashForm splash = new SplashForm();
            splash.ShowSplashScreen();

            Facade facade = Facade.GetInstance();

            // Retrieve messages from inbox mailbox.
            facade.LoadMessageStore(Constants.Inbox, facade.GetMessageStore());

            // Retrieve messages from sent item mailbox.
            facade.LoadMessageStore(Constants.SentItems, facade.GetMessageStoreSent());

            // Retrieve messages from delete item mailbox.
            facade.LoadMessageStore(Constants.DeletedItems, facade.GetMessageStoreDelete());

            // Retrieve messages from custom items mailbox.
            facade.LoadMessageStore(Constants.CustomFolders, facade.GetMessageStoreCustom());

            // retrieve the messages from inbox mailbox.
            facade.RetrieveMessages(Constants.Inbox);

            // set the flag for load first message.
            loadFirstMessageFlag = true;

            // Use system fonts
            this.Font = SystemFonts.IconTitleFont;

            this._findSettings = new FindSettings();

            // Designer Generated Code
			this.InitializeComponent();

            // select the mail button.
            this.leftSpine1.toolStripButtonMail_Click(this, EventArgs.Empty);
            
            // closes the splash.
            splash.CloseSplashScreen();

            // if there is no mail accounts.
            if (Facade.GetInstance().GetDefaultAccountInfo() == null)
            {
                SettingsReminderForm settingsReminderForm = new SettingsReminderForm();
                DialogResult dr = settingsReminderForm.ShowDialog();
                if (dr == DialogResult.OK)
                {
                    AccountSettingsForm frm = new AccountSettingsForm();
                    frm.ShowDialog();
                }
            }
        }
        /// <summary>
        /// Method for filter the messages.
        /// </summary>
        /// <param name="findSettings">The filter settings.</param>
        public void FilterMessages(FindSettings findSettings)
        {
            this.dataGridView.CurrentCell = null;

            CurrencyManager cm = (CurrencyManager)this.dataGridView.BindingContext[this.dataGridView.DataSource];
            cm.SuspendBinding();

            foreach (DataGridViewRow row in this.dataGridView.Rows)
            {
                MailMessage mailMessage = (MailMessage)row.DataBoundItem;

                if (findSettings.IsMessageFiltered(mailMessage))
                {
                    row.Visible = false;
                }
                else
                {
                    row.Visible = true;
                }
            }

            cm.ResumeBinding();

            this.Invalidate(true);
        }
Exemple #10
0
 /// <summary>
 /// Button find event handler
 /// </summary>
 /// <param name="sender">The sender object.</param>
 /// <param name="e">The event arguments.</param>
 private void toolStripButtonFind_Click(object sender, EventArgs e)
 {
     FindForm frm = new FindForm();
     frm.LoadFindSettings(this._findSettings);
     DialogResult dr = frm.ShowDialog();
     if (dr == DialogResult.OK)
     {
         this._findSettings = frm.FindSettings;
         this.messageArea1.MessageList.FilterMessages(this._findSettings);
     }
 }
Exemple #11
0
 /// <summary>
 /// Button cancel envent handler.
 /// Reset the filter.
 /// </summary>
 /// <param name="sender">The sender object.</param>
 /// <param name="e">The event arguments.</param>
 private void btnCancel_Click(object sender, EventArgs e)
 {
     this._findSettings = new FindSettings();
     this.DialogResult = DialogResult.OK;
 }
Exemple #12
0
 /// <summary>
 /// Button cancel envent handler.
 /// Reset the filter.
 /// </summary>
 /// <param name="sender">The sender object.</param>
 /// <param name="e">The event arguments.</param>
 private void btnCancel_Click(object sender, EventArgs e)
 {
     this._findSettings = new FindSettings();
     this.DialogResult  = DialogResult.OK;
 }