示例#1
0
    def temp():
        """
        sous-fonction qui permet de gérer un fichier temporaire qui contiendrat les informations en cours d'enregistrement
        cette sous-fonction est une boucle
        """
        try:  # on essaye d'enregistrer les informations
            read.remplacer_ligne(
                requetes, "temp.txt", 1,
                numero.get("current linestart", "current lineend"))
            read.remplacer_ligne(
                requetes, "temp.txt", 2,
                question_sql.get("current linestart", "current lineend"))

            # on efface toutes les autres lignes pour mettre la requete
            temporaire = read.lire_fichier(requetes + "/temp.txt", True)
            read.suppr_lignes(requetes + "/temp.txt",
                              *[i for i in range(3,
                                                 len(temporaire) + 1)])

            read.remplacer_ligne(
                requetes, "temp.txt", 3,
                requete.get("1.0",
                            "end"))  # on ajoute la requete en cours au fichier

            root.after(100, temp)  # On répète la fonction toutes les 0.1s
        except:  # si on ne peut pas, cela signifie qu'il n'y a plus de fentre et donc la fonction s'arrête
            pass
示例#2
0
    def validation():
        """
        sous-fonction permettant de :
            connaître les cases cochées
            retirer les requetes associée aux cases cochées
        """
        suppr = cases_cochees()

        if messagebox.askyesno(
                "Validation",
                "Est-tu sûr de vouloir supprimer (pour toujours) les questions :"
                + str(suppr)):
            alire = [0] + read.lire_fichier(
                "requetes/alire.md", True
            )  # l'ajout de la premiere valeur permet d'être en accrod sur le décompte avec la fonction read.suppr_lignes

            i_lignes = [
            ]  # on va stocker ici la liste des lignes à supprimer du document alire.md

            for n_question in suppr:  # on parcours chaque questions sélectionner

                # on avance le compteur l des indices tant qu'on n'est pas sur la bonne question
                l = 1
                while alire[l][:len(n_question)] != n_question:
                    l += 1

                # on supprime le fichier sql associé qui se trouve une ligne au dessus
                read.suppr_fichier("requetes/" + alire[l - 1], False)
                i_lignes += [l - 1]

                # la détection se fait par la précence de # donc on enleve manuellement le premier
                i_lignes += [l]
                l += 1

                # on ajoute les indices tant qu'on n'as pas fini la question
                while l < len(alire) and len(
                        alire[l]) > 0 and alire[l][0] != "#":
                    i_lignes += [l]
                    l += 1

            read.suppr_lignes(
                "requetes/alire.md", *i_lignes
            )  # une fois tous les indices de lignes récoltées, on supprime les lignes

            retour()  # on retourne au menu