Modifications entre les versions 4 et 8 (s'étendant sur 4 versions)
Version 4 à la date du 2009-05-27 10:05:06
Taille: 913
Éditeur: SergheiMihai
Commentaire:
Version 8 à la date du 2011-09-28 16:19:37
Taille: 2785
Commentaire:
Texte supprimé. Texte ajouté.
Ligne 3: Ligne 3:
 . ''Excellent ça ! Tu peux le mettre sur git.auf.org, STP, qu'on puisse tous en profiter ? (voir aussi participer) -- ProgFou''
Ligne 14: Ligne 15:
 *  * ''__init__'': Crée la fenêtre graphique, associe les signaux définis dans le fichier glade et appelle la méthode ''getDistrosList''
 * ''ouvrirCdrom'': le nom parle pour soi
 * ''desactiverButton'': désactive le button "Graver/OuvrirCDrom" dans le cas ou aucune image n'est sélectionnée
 * ''getFileTitle'': vérifie s'il existe un fichier de description pour l'image sélectionnée et renvoie la première ligne en tant que "titre" de l'image, sinon, renvoie le nom de l'image
 * ''getDistrosList'': parcours le répertoire des images et les ajoute à la liste graphique de l'application
 * ''getDistInfo'': appelé au clique sur une image dans la liste, affiche le contenu du fichier descriptif dans la zone d'information(à droite)
 * ''graver'': lance dans un nouveau thread la methode graverDist, car en lancement direct l'application "freeze" temps que la gravure soit terminée, et permet pas de "bouger" la barre de progression
 * ''graverDist'': lance la gravure. Wodim est utilisé pour graver l'image. La sortie erreur est captée et affichée sur l'écran. A la fin de gravure, appele ''reinit''
 * ''reinit'': reinitialise l'application après la gravure(ferme le cdrom, désactive le bouton, desélectionne l'image précédemment sélectionnée dans la liste)

Le démarrage se fait un peu bizarrement, mais c'est tout ce que j'ai pu faire pour le moment:
dans le inittab j'ai mis: ''1:2345:respawn:/home/kiosk/graveur/start''.

Désactiver l'authentification de X dans /usr/bin/startx

Le fichier ''/home/kiosk/graveur/start'' démarre juste le serveur X. Après, dans le ''.xinitrc'' de root(''/root/.xinitrc'') je lance le programme Python

Pas très grande philosophie, ni grande ingéniosité...

Une nouvelle version du graveur des distributions Ubuntu et Debian Linux. J'ai décidé de l'écrire en PyGTK: l'implémentation de l'interface graphique est faite en Glade et le moteur en Python.

  • Excellent ça ! Tu peux le mettre sur git.auf.org, STP, qu'on puisse tous en profiter ? (voir aussi participer) -- ProgFou

Donc l'application est divisée en trois parties:

  • "graveur.glade" - le fichier Glade avec l'interface "désinée"
  • "config.py" - des configurations comme les chemins vers les images, l'extension de fichiers d'information, etc
  • "test.py" - le programme Python

La partie principale est évidemment le programme lui-même. Il est organisé dans une classe(ça sert pas à grand chose, vue que c'est un seul programme qui n'interactionne avec d'autres, mais je suis parti du principe "orienté objet"). Alors la classe LB(Linux Burner) contient tout, à la fin il reste qu'a instancier l'objet et c'est tout

Alors la classe(y la doc dedans, mais je vais spécifier ici aussi un p'tit peu ):

  • init: Crée la fenêtre graphique, associe les signaux définis dans le fichier glade et appelle la méthode getDistrosList

  • ouvrirCdrom: le nom parle pour soi

  • desactiverButton: désactive le button "Graver/OuvrirCDrom" dans le cas ou aucune image n'est sélectionnée

  • getFileTitle: vérifie s'il existe un fichier de description pour l'image sélectionnée et renvoie la première ligne en tant que "titre" de l'image, sinon, renvoie le nom de l'image

  • getDistrosList: parcours le répertoire des images et les ajoute à la liste graphique de l'application

  • getDistInfo: appelé au clique sur une image dans la liste, affiche le contenu du fichier descriptif dans la zone d'information(à droite)

  • graver: lance dans un nouveau thread la methode graverDist, car en lancement direct l'application "freeze" temps que la gravure soit terminée, et permet pas de "bouger" la barre de progression

  • graverDist: lance la gravure. Wodim est utilisé pour graver l'image. La sortie erreur est captée et affichée sur l'écran. A la fin de gravure, appele reinit

  • reinit: reinitialise l'application après la gravure(ferme le cdrom, désactive le bouton, desélectionne l'image précédemment sélectionnée dans la liste)

Le démarrage se fait un peu bizarrement, mais c'est tout ce que j'ai pu faire pour le moment: dans le inittab j'ai mis: 1:2345:respawn:/home/kiosk/graveur/start.

Désactiver l'authentification de X dans /usr/bin/startx

Le fichier /home/kiosk/graveur/start démarre juste le serveur X. Après, dans le .xinitrc de root(/root/.xinitrc) je lance le programme Python

Pas très grande philosophie, ni grande ingéniosité...

SergheiMihai/GraveurPyGTK (dernière édition le 2011-09-28 16:19:37 par NdimbyAndriantsoavina)