controller package

Submodules

controller.manager module

controller.manager.ajouter_edge() None[source]

Ajoute un sommet ou une arête dans le graphe en fonction des champs remplis dans l’interface graphique.

Args:

Aucun.

Returns:

None.

controller.manager.audio_btn() None[source]

Joue un fichier audio lorsqu’un bouton est pressé.

Paramètres :

Aucun

Retour :

Aucun

controller.manager.btn_bellman_ford_event() None[source]

Effectue l’algorithme de Bellman-Ford et affiche la représentation graphique du résultat.

Returns:

None

controller.manager.btn_bfs_event() None[source]

Lance l’événement du bouton BFS.

Cette fonction récupère le texte de l’entrée de source BFS et vérifie si elle n’est pas vide et si elle est présente dans le graphe. Si elle est valide, cette fonction ferme la fenêtre d’affichage BFS précédente, crée un nouveau graphique pour afficher le BFS du graphe à partir du nœud source donné, puis affiche le graphique créé et définit le texte de la note pour indiquer que le BFS est représenté. Si le texte de l’entrée de source BFS est vide, cette fonction crée un graphique vide et définit le texte de la note pour indiquer que le champ est vide. Si l’entrée de source BFS n’est pas un sommet du graphe, cette fonction crée un graphique vide et définit le texte de la note pour indiquer que l’entrée n’est pas un sommet du graphe.

controller.manager.btn_delete_event(db: DBG)[source]

Supprime un graphe de la base de données.

Args:

db (DBG): Objet DBG contenant les informations de la base de données.

Returns:

None

controller.manager.btn_dfs_event() None[source]

Représente le parcours en profondeur (DFS) à partir d’un sommet donné sur le graphe.

Returns:

None

controller.manager.btn_dijkstra_event() None[source]

Événement déclenché lors du clic sur le bouton « Dijkstra ». Représente le résultat de l’algorithme de Dijkstra sur le graphe s’il est pondéré et que les champs « source » et « point final » sont remplis. Sinon, affiche un message d’erreur et un graphe vide. Si le graphe n’est pas pondéré, affiche un message d’erreur spécifique et un graphe vide.

controller.manager.btn_genere_pdf_bare_event()[source]

Affiche le cadre du PDF et configure les options en fonction des caractéristiques du graphe.

Si le graphe n’est pas orienté, connexe et pondéré, certaines options seront désactivées.

Si le graphe est pondéré, les options pour l’algorithme de Prim et Dijkstra seront activées.

return:

Aucune valeur de retour.

controller.manager.btn_home_bare_event()[source]

Affiche le cadre de la représentation graphique et exécute l’événement de la représentation graphique.

Returns:

None

controller.manager.btn_info_graphe_bare_event() None[source]

Affiche les informations générales du graphe dans la fenêtre d’information.

Args:

Aucun

Returns:

None

controller.manager.btn_kruskal_event() None[source]

Représente le graphe kruskal du graphe courant à partir du sommet source saisi par l’utilisateur.

Returns:

None

controller.manager.btn_matrix_bare_event()[source]

Affiche le frame pour la matrice du graphe et remplit les tableaux de la matrice adjacente et incidence avec les valeurs correspondantes.

controller.manager.btn_pdf_event()[source]

Fonction gérant l’événement du bouton PDF.

Cette fonction effectue les actions suivantes : Appelle la fonction audio_btn().

Vérifie si le graphe est vide.

Vérifie si un dossier a été choisi.

Affiche le graphe initial.

Affiche le graphe BFS si le sommet source est valide.

Affiche le graphe DFS si le sommet source est valide.

Affiche le graphe de Prim si le graphe est non orienté, connexe et pondéré et le sommet source est valide.

Affiche le graphe de Warshall si le graphe est orienté.

Affiche le graphe de Bellman-Ford si le graphe est pondéré et les sommets source et destination sont valides.

Génère le PDF avec les informations fournies.

Réinitialise les champs de saisie des sommets pour Bellman-Ford.

Returns: None

controller.manager.btn_prim_event() None[source]

Fonction qui représente le graphe sous forme d’un arbre couvrant minimal avec l’algorithme de Prim.

Returns:

Aucune valeur de retour.

controller.manager.btn_recherche_event()[source]

Met en évidence la ligne correspondant à l’ID de graphe entré dans le champ de recherche en changeant sa couleur de police en rouge tandis que toutes les autres lignes ont leur couleur de police en noir. Réinitialise également le champ de note_table_db.

Args:

None

Returns:

None

controller.manager.btn_utiliser_event(db: DBG)[source]

Fonction qui permet d’utiliser le graphe correspondant à l’identifiant entré dans l’interface.

Args:

db (DBG): une instance de la classe DBG qui permet d’effectuer des requêtes sur la base de données.

Returns:

None

Cette fonction réalise les actions suivantes :

récupère les informations du graphe correspondant à l’identifiant entré dans la base de données.

modifie le graphe de l’application en fonction des caractéristiques du graphe récupéré.

affiche le nouveau graphe dans l’interface.

active ou désactive les champs liés aux poids des arêtes en fonction du type de graphe.

met à jour les notes de l’interface pour donner un feedback à l’utilisateur.

controller.manager.btn_warshall_bare_event()[source]

Affiche le cadre de l’algorithme de Warshall et exécute l’événement de l’algorithme de Warshall.

Returns:

None

controller.manager.btn_warshall_event()[source]

Effectue l’algorithme de Warshall et affiche la représentation graphique du résultat.

Returns:

None

controller.manager.dateTime() list[source]

Renvoie la date et l’heure actuelles sous forme de liste.

Paramètres :

Aucun

Retour :

Une liste contenant la date au format “AAAA-MM-JJ” en tant que première valeur, et l’heure au format “HH:MM:SS” en tant que deuxième valeur.

controller.manager.enregistrer_graphe_event()[source]

Enregistre le graphe dans la base de donnees.

Returns:

None

controller.manager.graphe_rep()[source]

Affiche le graphe représenté par le réseau networkx dans une fenêtre graphique.

controller.manager.initialiser() None[source]

Initialise le graphe en appelant la méthode init() de l’objet graphe. Affiche un message pour confirmer que l’initialisation est terminée et met à jour la représentation du graphe ainsi que les informations associées.

Args:

None

Returns:

None

controller.manager.patron_db(func, arg: bool)[source]

Affiche un message d’erreur si le champ d’ID est vide ou si aucun graphe ne correspond à l’ID spécifié. Exécute la fonction passée en paramètre en fonction de la valeur booléenne arg.

Args: - func : fonction à exécuter. - arg : valeur booléenne qui indique si la fonction func prend un argument ou non.

Returns: None

controller.manager.showDialog()[source]

Affiche une boîte de dialogue pour choisir un dossier.

controller.manager.show_data_historique()[source]

Affiche les données de l’historique du graphe dans le tableau “table_historique_graphe”. Si la table est vide, affiche un message de notification en vert.

controller.manager.show_frame(frame: QFrame) None[source]

Cette fonction permet d’afficher un frame spécifique en cachant les autres frames qui sont déjà affichés.

Args:

frame (QFrame): Le frame à afficher.

Returns:

None

controller.manager.show_frame_sound(frame: QFrame) None[source]

Affiche le frame donné et joue un son de bouton.

Args:

frame (QFrame): le frame à afficher.

Returns:

None

controller.manager.show_info_graph() None[source]

Affiche les informations sur le graphe dans la fenêtre d’informations.

Si la fenêtre d’informations est visible, cette fonction met à jour les informations. Si la fenêtre de parcours BFS est visible, cette fonction lance la fonction d’affichage du parcours BFS. Si la fenêtre de parcours DFS est visible, cette fonction lance la fonction d’affichage du parcours DFS.

controller.manager.supprimer_edge() None[source]

Supprime un sommet ou une arête du graphe en fonction des valeurs entrées dans les champs de texte.

Si les champs de texte sont vides, affiche un message d’erreur. Si seul le champ de texte « Sommet de départ » est rempli, supprime ce sommet du graphe. Si seul le champ de texte « Sommet d’arrivée » est rempli, supprime ce sommet du graphe. Si les deux champs de texte sont remplis, supprime l’arête entre les deux sommets du graphe.

Affiche un message de confirmation si l’opération s’est bien déroulée et met à jour la représentation graphique du graphe ainsi que les informations affichées dans l’interface utilisateur.

controller.manager.type_graphe_activited() None[source]

Change le type du graphe en fonction de l’option sélectionnée dans le menu déroulant type_graphe. Si l’option « Orientés » est sélectionnée, le graphe est transformé en un graphe orienté. Si l’option « Non-orientés » est sélectionnée, le graphe est transformé en un graphe non orienté. Si l’option « Non-orientés pondérés » est sélectionnée, le graphe est transformé en un graphe non orienté pondéré. Si l’option « Orientés pondérés » est sélectionnée, le graphe est transformé en un graphe orienté pondéré. La fonction met également à jour l’affichage du graphe ainsi que les informations sur le graphe.

Args:

Aucun.

Returns:

None.

controller.manager.update_info_graphe() None[source]

Met à jour les informations du graphe dans le cadre d’informations s’il est visible, et met à jour les cadres de parcours BFS et DFS s’ils sont visibles.

controller.manager.viderInputChamps()[source]

Vide les champs de saisie.

Module contents