Exemplo n.º 1
0
        private MainHandler()
        {
            if (Settings.Default.ClickedAnswers == null)
            {
                Settings.Default.ClickedAnswers = new StringCollection();
            }
            if (Settings.Default.ShowedAnswers == null)
            {
                Settings.Default.ShowedAnswers = new StringCollection();
            }

            switch (DateTime.Now.DayOfWeek)
            {
            case DayOfWeek.Sunday:
                _notifyIcon.BalloonTipText = Resources.SkeetFactSunday;
                break;

            case DayOfWeek.Monday:
                _notifyIcon.BalloonTipText = Resources.SkeetFactMonday;
                break;

            case DayOfWeek.Tuesday:
                _notifyIcon.BalloonTipText = Resources.SkeetFactTuesday;
                break;

            case DayOfWeek.Wednesday:
                _notifyIcon.BalloonTipText = Resources.SkeetFactWednesday;
                break;

            case DayOfWeek.Thursday:
                _notifyIcon.BalloonTipText = Resources.SkeetFactThursday;
                break;

            case DayOfWeek.Friday:
                _notifyIcon.BalloonTipText = Resources.SkeetFactFriday;
                break;

            case DayOfWeek.Saturday:
                _notifyIcon.BalloonTipText = Resources.SkeetFactSaturday;
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }

            _notifyIcon.ShowBalloonTip(1000);

            var contextMenu = new ContextMenuStrip {
                ShowImageMargin = false
            };

            var exitMenuItem = new ToolStripButton("Close")
            {
                Image = Resources.Exit, AutoToolTip = false
            };

            exitMenuItem.Click += (s, a) => System.Windows.Forms.Application.Exit();

            var refreshMenuItem = new ToolStripButton("Refresh")
            {
                Image = Resources.Refresh, AutoToolTip = false
            };

            refreshMenuItem.Click += (s, a) => _backgroundWorker.RunWorker();

            var autostartMenuItem = new ToolStripButton("Autostart")
            {
                Image = Resources.AutoStart, AutoToolTip = false, Checked = AutoStart.GetAutoStart(Application.ProductName)
            };

            autostartMenuItem.Click += (s, a) =>
            {
                AutoStart.SetAutoStart(!autostartMenuItem.Checked, Application.ProductName, Application.ExecutablePath);
                autostartMenuItem.Checked = AutoStart.GetAutoStart(Application.ProductName);
            };

            _notifyIcon.ContextMenuStrip = contextMenu;

            contextMenu.Items.AddRange(new ToolStripItem[] { new ToolStripSeparator(), refreshMenuItem, autostartMenuItem, exitMenuItem });

            // Timer
            _updateTimer.Tick += (s, a) => _backgroundWorker.RunWorker();

            // Worker
            _backgroundWorker.DoWork             += BackgroundWorkerDoWork;
            _backgroundWorker.RunWorkerCompleted += BackgroundWorkerRunWorkerCompleted;
            _backgroundWorker.RunWorker();
        }