コード例 #1
0
        public frmWeCleared()
        {
            InitializeComponent();

            // Classe d'enregistrement des parametres
            Settings = new SettingsClass(this);
            Settings.ReadMainSettings();

            // Attribution du WoWPath
            WoWPath = MainSettings["WoWPath"];
            if (IsWoWPathValid(WoWPath))
            {
                lblPath.Text = WoWPath;
            }

            // Addons Parser class
            AddonsParser = new AddonsParser(this);

            // Zip Class
            ZipClass = new ZipClass(this);

            // Démarrer le timer général.
            tmrRefresh.Start();
            tmrRefresh_Tick(this, EventArgs.Empty);

            // Notify Icon
            NIcon = new NotifyIcon
            {
                BalloonTipIcon  = ToolTipIcon.Info,
                BalloonTipText  = "Vous pouvez réouvrir We Cleared Client via le system tray.",
                BalloonTipTitle = "We Cleared minimisé.",
                Icon            = Properties.Resources.Icon,
                Text            = "Cliquez pour réouvrir We Cleared.",
                Visible         = false
            };
            NIcon.MouseClick += NIcon_Click;

            // Mises à jour de l'UI
            dataGridAddons.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True;
            dataGridAddons.RowTemplate.Height            = 50;
            btnUpdate.BackColor = Settings.GetEnabled("AutoUpdate") ? Color.DarkGreen : Color.DarkRed;
            DefineTooltips();

            // ISharpUpdatable UI
            lblUpdateClient.Text = ApplicationAssembly.GetName().Version.ToString();
            Updater = new SharpUpdater(this);
            Updater.DoUpdate();
        }
コード例 #2
0
ファイル: Startup.cs プロジェクト: CodeMySofts/WeClearedTeam
        public void Configuration(IAppBuilder app)
        {
            ConfigureAuth(app);


            // Assignation de hangfire
            GlobalConfiguration.Configuration.UseSqlServerStorage("Hangfire");
            app.UseHangfireServer();
            app.UseHangfireDashboard();

            // tâches en arrière-plan
            // Ajout de la classe de parsing en arrière-plan
            Addons = new AddonsParser();
            BackgroundJob.Enqueue(() => Addons.Parse());
            RecurringJob.AddOrUpdate("UpdateAddons", () => Addons.Parse(), Cron.HourInterval(6));
            // Ajout de la tache de Xml building
            RecurringJob.AddOrUpdate("CreateXml", () => XmlRefreshClass.CreateXmlFiles(), Cron.MinuteInterval(1));
        }
コード例 #3
0
        /// <summary>
        /// Executée par le Timer.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void tmrRefresh_Tick(object sender, EventArgs e)
        {
            Updater?.DoUpdate();
            if (IsWoWPathValid(WoWPath))
            {
                AddonsParser.Parse();

                if (AddonsParser.Addons.Count > 0)
                {
                    dataGridAddons.DataSource = AddonsParser.AddonsList;
                    cmbSelectAddon.Items.Clear();
                    foreach (var l_Addon in AddonsParser.Addons)
                    {
                        cmbSelectAddon.Items.Add(l_Addon.Nom);
                    }
                    if (cmbSelectAddon.Text == string.Empty)
                    {
                        cmbSelectAddon.Text = AddonsParser.Addons[0].Nom;
                        if (Settings.GetEnabled(AddonsParser.Addons[0].Nom))
                        {
                            btnActivateAddon.Text      = "X";
                            btnActivateAddon.BackColor = Color.DarkGreen;
                        }
                        else
                        {
                            btnActivateAddon.Text      = "";
                            btnActivateAddon.BackColor = Color.DarkRed;
                        }
                    }
                    // Effectuer les mises à jour automatiquement si l'option est activée.
                    if (Settings.GetEnabled("AutoUpdate"))
                    {
                        AddonsParser.ApplyUpdates();
                    }
                    ExceptionString = string.Empty;
                }
                lblInfo.Text = ExceptionString;
            }
            else
            {
                ExceptionString = "Addons non trouvés, vérifiez le Dossier WoW.";
                lblInfo.Text    = ExceptionString;
            }
        }
コード例 #4
0
        /// <summary>
        /// Événements du bouton Update
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnUpdate_MouseDown(object sender, MouseEventArgs e)
        {
            switch (e.Button)
            {
            case MouseButtons.Right:
                Settings.SetEnabled("AutoUpdate", !Settings.GetEnabled("AutoUpdate"));
                btnUpdate.BackColor = Settings.GetEnabled("AutoUpdate") ? Color.DarkGreen : Color.DarkRed;
                break;

            case MouseButtons.Left:
                if (!AddonsParser.Updating)
                {
                    AddonsParser.ApplyUpdates();
                }
                break;

            default:
                break;
            }
        }