Esempio n. 1
0
        // Fonction chargeant le fond lié à la variable id dans l'array fichiers
        private void ChargerFond(bool retry = false)
        {
            if (id >= 0 && id < fichiers.Length)
            {
                // On prépare l'application du fond
                Wallpaper fond = new Wallpaper(fichiers[id].FullName, Func.ConvertirAffichage(affichage), Func.ConvertirCouleur(couleur));

                // Si le fichier actuel n'est pas listé dans les fichiers illisibles
                if (!mauvaisFichiers.Contains(fichiers[id].FullName))
                {
                    labelNom.ForeColor = Color.Black;
                    infobulleNom.SetToolTip(this.labelNom, string.Empty);
                    labelNom.Text = Texte.Chargement;
                    this.Refresh();

                    // On compte le nombre de fond affichés
                    Registre.CompterFond();

                    try { fond.Afficher(conversion); } // On tente d'afficher le fond
                    catch // Si il y a eu une erreur
                    {
                        SupprimerFichier(true); // On demande à l'utilisateur si il veut supprimer le fichier (et on le liste en tant que fichier illisible

                        labelNom.ForeColor = Color.Red;
                        this.Refresh();

                        // On compte l'erreur
                        Registre.CompterErreur();
                    }

                    // On recharge les infos
                    RechargerInfo();
                }
                else // Si le fichier est listé en tant que fichier illisible
                {
                    if (!retry)
                    {
                        // On affiche son nom en rouge, et on ne le l'affiche pas
                        labelNom.ForeColor = Color.Red;
                        RechargerInfo();
                    }
                    else
                    {
                        try
                        {
                            fond.Afficher(conversion);
                            labelNom.ForeColor = Color.Black;
                            mauvaisFichiers    = mauvaisFichiers.Where(val => val != fichiers[id].FullName).ToArray();
                            RechargerInfo();
                            Registre.CompterFond();
                        }
                        catch {}
                    }
                }
            }
        }
Esempio n. 2
0
        // Fonction qui réaffiche le fond d'écran initial
        public static void AncienFond()
        {
            try // On essaye de remettre le fond
            {
                if (File.Exists(cheminAncienFond))
                {
                    Wallpaper fond = new Wallpaper(cheminAncienFond, Func.ConvertirAffichage(ancienAffichage), ancienneCouleur);
                    fond.Afficher(false);
                }
                else
                {
                    Wallpaper fond = new Wallpaper(null, Func.ConvertirAffichage(ancienAffichage), ancienneCouleur);
                    fond.Afficher(false, true);

                    if (!string.IsNullOrEmpty(cheminAncienFond))
                    {
                        MessageBox.Show(Texte.AncienFondSupprimé, Texte.ErreurTitre, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                }
            }
            catch (Exception e) // Si il y a eu une erreur, on l'affiche
            {
                MessageBox.Show(Texte.ErreurAncienFond + "\n\n" +
                                "DEBUG :\nFichier : " + cheminAncienFond + "\nMode : " + ancienAffichage + "\nCouleur :" + ancienneCouleur + "\n\n" + Texte.ErreurTitre + " :\n" + e
                                , Texte.ErreurTitre, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
        }