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(); }
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)); }
/// <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; } }
/// <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; } }