internal void menage(MenageEnCours dlg) { dlg.pourcentage(30); // Purger les alternatives non associees a un film supprimeAlternativesOrphelines(); dlg.pourcentage(60); // Compression de la base executeNonQueryAsync("VACUUM"); dlg.pourcentage(100); }
/////////////////////////////////////////////////////////////////////////////////////////// /// <summary> /// Fermeture de la fenetre principale /// </summary> /// <param name="sender"></param> /// <param name="e"></param> /////////////////////////////////////////////////////////////////////////////////////////// private void onFormClosing(object sender, FormClosingEventArgs e) { if (e.CloseReason == CloseReason.WindowsShutDown) { return; } // Si une copie de fichier est en cours, on demande confirmation avant de fermer le programme if (_copieFichiers?.copieEnCours == true) { System.Media.SystemSounds.Question.Play(); // Confirm user wants to close switch (MessageBox.Show(this, "Une copie de fichier est en cours, voulez-vous vraiment quitter le programme?\nLa copie sera annuléé", "Fermeture du programme", MessageBoxButtons.YesNo)) { case DialogResult.Yes: _copieFichiers.stop(); break; default: // Annuler la fermeture de la fenetre e.Cancel = true; return; } } _actionsDifferees.Stop(); if (Configuration.menageALaFin) { using (MenageEnCours dlg = new MenageEnCours()) { dlg.Show(this); dlg.Update(); BaseFilms.instance.menage(dlg); } } }