Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
* Made *sleep() methods static.
authorArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Tue, 27 Apr 2010 15:34:13 +0000 (17:34 +0200)
committerArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Tue, 27 Apr 2010 15:44:40 +0000 (17:44 +0200)
* Recoded to UTF8.
* Added lost mainpage.

CHANGES
Doxyfile
DrawingWindow.cpp
DrawingWindow.h
chateaux/chateaux.cpp
exemple.cpp
htaccess
mainpage [new file with mode: 0644]
mandel/mandel.cpp
test/hello.cpp

diff --git a/CHANGES b/CHANGES
index 3556d29..d5a9b76 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,8 @@
+-- Tue, 27 Apr 2010 17:30:13 +0200
+
+        * Made *sleep() methods static.
+        * Recoded to UTF8.
+
 -- Wed, 20 Jan 2010 19:20:49 +0100
 
         * Added DrawingWindow::waitMousePress().
index b4b15e2..13ff2ea 100644 (file)
--- a/Doxyfile
+++ b/Doxyfile
@@ -20,7 +20,7 @@
 # iconv built into libc) for the transcoding. See
 # http://www.gnu.org/software/libiconv for the list of possible encodings.
 
-DOXYFILE_ENCODING      = ISO-8859-1
+DOXYFILE_ENCODING      = UTF-8
 
 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded
 # by quotes) that should identify the project.
@@ -578,7 +578,7 @@ INPUT                  = mainpage \
 # into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
 # the list of possible encodings.
 
-INPUT_ENCODING         = ISO-8859-1
+INPUT_ENCODING         = UTF-8
 
 # If the value of the INPUT tag contains directories, you can use the
 # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
index e5ab690..ae740b7 100644 (file)
 #include <QTimerEvent>
 
 /*! \class DrawingWindow
- *  \brief Fenêtre de dessin.
+ *  \brief Fenêtre de dessin.
  *
  * \author Arnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
  * \date 2007-2010
  *
- * Cette classe décrit un widget Qt permettant d'écrire des
- * applications graphiques simples.  Pour cela, il faut définir une
+ * Cette classe décrit un widget Qt permettant d'écrire des
+ * applications graphiques simples.  Pour cela, il faut définir une
  * fonction de dessin.  Cette fonction ne retourne rien et prend comme
- * unique paramètre une référence vers un objet de class
+ * unique paramètre une référence vers un objet de class
  * DrawingWindow.
  *
- * La fonction devra ensuite être passée en paramètre pour les
+ * La fonction devra ensuite être passée en paramètre pour les
  * constructeurs de la classe, ainsi que les dimension requises pour
- * la fenêtre graphique.  Le programme est ensuite compilé comme
+ * la fenêtre graphique.  Le programme est ensuite compilé comme
  * n'importe quel programme Qt.
  *
- * Concrètement, la fonction sera exécutée dans un nouveau thread,
+ * Concrètement, la fonction sera exécutée dans un nouveau thread,
  * tandis que le thread principal s'occupera de la gestion des
- * évènements et du rendu dans la fenêtre.
+ * évènements et du rendu dans la fenêtre.
  *
- * <b>NB.</b> Pour toutes les méthodes de dessin, le coin en haut à gauche
- * de la fenêtre a les coordonnées (0, 0).  Le coin en bas à droite de
- * la fenêtre a les coordonnées (largeur - 1, hauteur - 1), si la
- * fenêtre est de dimension largeur × hauteur.
+ * <b>NB.</b> Pour toutes les méthodes de dessin, le coin en haut à gauche
+ * de la fenêtre a les coordonnées (0, 0).  Le coin en bas à droite de
+ * la fenêtre a les coordonnées (largeur - 1, hauteur - 1), si la
+ * fenêtre est de dimension largeur × hauteur.
  *
- * Un appui sur la touche &lt;Esc&gt; provoque la fermeture de la fenêtre.
- * Comme pour la plupart des applications, il est également possible
- * de fermer la fenêtre via le gestionnaire de fenêtres.
+ * Un appui sur la touche &lt;Esc&gt; provoque la fermeture de la fenêtre.
+ * Comme pour la plupart des applications, il est également possible
+ * de fermer la fenêtre via le gestionnaire de fenêtres.
  *
- * Il est possible, dans une application, d'ouvrir plusieurs fenêtres,
- * avec des fonctions de dessin éventuellement différentes.
- * L'application se terminera normalement lorsque la dernière fenêtre
- * sera fermée.
+ * Il est possible, dans une application, d'ouvrir plusieurs fenêtres,
+ * avec des fonctions de dessin éventuellement différentes.
+ * L'application se terminera normalement lorsque la dernière fenêtre
+ * sera fermée.
  */
 
 /*! \example hello.cpp
  *
- * Voir le code source à la fin de la page.  Pour compiler et exécuter
+ * Voir le code source à la fin de la page.  Pour compiler et exécuter
  * ce programme, il faut :
  *
- * <b>1. Créer le fichier \c hello.pro</b>
+ * <b>1. Créer le fichier \c hello.pro</b>
  *
  * Pour simplifier, ce fichier contient la liste des fichiers sources
  * composant le programme.
  *
  * \include hello.pro
  *
- * <b>2. Créer le fichier \c Makefile avec la commande :</b>
+ * <b>2. Créer le fichier \c Makefile avec la commande :</b>
  *
  * \verbatim qmake-qt4 hello.pro \endverbatim
  * ou tout simplement :
@@ -93,7 +93,7 @@
  * ou tout simplement :
  * \verbatim make \endverbatim
  *
- * <b>4. Exécuter le programme avec la commande :</b>
+ * <b>4. Exécuter le programme avec la commande :</b>
  *
  * \verbatim ./hello \endverbatim
  *
 
 /*! \example exemple.cpp
  *
- * Un exemple un peu plus sophistiqué.
+ * Un exemple un peu plus sophistiqué.
  */
 
 //! Classe de thread.
@@ -124,8 +124,8 @@ private:
 
 enum UserEvents {
     SyncRequest = QEvent::User, //!< Demande de synchronisation.
-    CloseRequest,               //!< Demande de fermeture de la fenêtre.
-    DrawTextRequest,            //!< Demande d'écriture de texte.
+    CloseRequest,               //!< Demande de fermeture de la fenêtre.
+    DrawTextRequest,            //!< Demande d'écriture de texte.
 };
 
 //! Demande de synchronisation.
@@ -135,14 +135,14 @@ public:
     { }
 };
 
-//! Demande de fermeture de fenêtre.
+//! Demande de fermeture de fenêtre.
 class CloseRequestEvent: public QEvent {
 public:
     CloseRequestEvent(): QEvent(static_cast<QEvent::Type>(CloseRequest))
     { }
 };
 
-//! Demande de tracé de texte. 
+//! Demande de tracé de texte. 
 class DrawTextEvent: public QEvent {
 public:
     const int x;
@@ -162,19 +162,19 @@ public:
  */
 
 /*! \typedef DrawingWindow::ThreadFunction
- *  \brief Type de la fonction de dessin, passée en paramètre de construction.
+ *  \brief Type de la fonction de dessin, passée en paramètre de construction.
  */
 /*! \var DrawingWindow::DEFAULT_WIDTH
- *  \brief Largeur par défaut de la fenêtre.
+ *  \brief Largeur par défaut de la fenêtre.
  */
 /*! \var DrawingWindow::DEFAULT_HEIGHT
- *  \brief Hauteur par défaut de la fenêtre.
+ *  \brief Hauteur par défaut de la fenêtre.
  */
 /*! \var DrawingWindow::width
- *  \brief Largeur de la fenêtre.
+ *  \brief Largeur de la fenêtre.
  */
 /*! \var DrawingWindow::height
- *  \brief Hauteur de la fenêtre.
+ *  \brief Hauteur de la fenêtre.
  */
 /*! \var DrawingWindow::paintInterval
  *  \brief Intervalle de temps entre deux rendus (ms).
@@ -182,13 +182,13 @@ public:
 
 //! Constructeur.
 /*!
- * Construit une nouvelle fenêtre de dessin avec les dimensions
- * passées en paramètres.  La fonction fun sera exécutée dans un
+ * Construit une nouvelle fenêtre de dessin avec les dimensions
+ * passées en paramètres.  La fonction fun sera exécutée dans un
  * nouveau thread.
  *
  * \param fun           fonction de dessin
- * \param width_        largeur de la fenêtre
- * \param height_       hauteur de la fenêtre
+ * \param width_        largeur de la fenêtre
+ * \param height_       hauteur de la fenêtre
  *
  * \see QWidget
  */
@@ -202,14 +202,14 @@ DrawingWindow::DrawingWindow(ThreadFunction fun, int width_, int height_)
 
 //! Constructeur.
 /*!
- * Construit un nouveau widget de dessin avec les dimensions passées
- * en paramètres.  La fonction fun sera exécutée dans un nouveau
+ * Construit un nouveau widget de dessin avec les dimensions passées
+ * en paramètres.  La fonction fun sera exécutée dans un nouveau
  * thread.
  *
  * \param parent        widget parent
  * \param fun           fonction de dessin
- * \param width_        largeur de la fenêtre
- * \param height_       hauteur de la fenêtre
+ * \param width_        largeur de la fenêtre
+ * \param height_       hauteur de la fenêtre
  *
  * \see QWidget
  */
@@ -224,15 +224,15 @@ DrawingWindow::DrawingWindow(QWidget *parent,
 
 //! Constructeur.
 /*!
- * Construit un nouveau widget de dessin avec les dimensions passées
- * en paramètres.  La fonction fun sera exécutée dans un nouveau
+ * Construit un nouveau widget de dessin avec les dimensions passées
+ * en paramètres.  La fonction fun sera exécutée dans un nouveau
  * thread.
  *
  * \param parent        widget parent
- * \param flags         flags passés au constructeur de QWidget
+ * \param flags         flags passés au constructeur de QWidget
  * \param fun           fonction de dessin
- * \param width_        largeur de la fenêtre
- * \param height_       hauteur de la fenêtre
+ * \param width_        largeur de la fenêtre
+ * \param height_       hauteur de la fenêtre
  *
  * \see QWidget
  */
@@ -255,7 +255,7 @@ DrawingWindow::~DrawingWindow()
 
 //! Change la couleur de dessin.
 /*!
- * La couleur est un entier, tel que retourné par getPointColor.
+ * La couleur est un entier, tel que retourné par getPointColor.
  * Normalement de la forme #00RRGGBB.
  *
  * \param color         couleur
@@ -286,9 +286,9 @@ void DrawingWindow::setColor(const char *name)
 
 //! Change la couleur de dessin.
 /*!
- * Les composantes de rouge, vert et bleu de la couleur doivent être
- * compris entre 0 et 1.  Si le trois composantes sont à 0, on obtient
- * du noir; si les trois composantes sont à 1, on obtient du blanc.
+ * Les composantes de rouge, vert et bleu de la couleur doivent être
+ * compris entre 0 et 1.  Si le trois composantes sont à 0, on obtient
+ * du noir; si les trois composantes sont à 1, on obtient du blanc.
  *
  * \param red           composante de rouge
  * \param green         composante de vert
@@ -345,9 +345,9 @@ void DrawingWindow::setBgColor(float red, float green, float blue)
     setBgColor(QColor::fromRgbF(red, green, blue));
 }
 
-//! Efface la fenêtre.
+//! Efface la fenêtre.
 /*!
- * La fenêtre est effacée avec la couleur de fond courante.
+ * La fenêtre est effacée avec la couleur de fond courante.
  *
  * \see setBgColor
  */
@@ -361,10 +361,10 @@ void DrawingWindow::clearGraph()
 
 //! Dessine un point.
 /*!
- * Dessine un point (pixel) aux coordonnées (x, y), avec la couleur de
+ * Dessine un point (pixel) aux coordonnées (x, y), avec la couleur de
  * dessin courante.
  *
- * \param x, y          coordonnées du point
+ * \param x, y          coordonnées du point
  *
  * \see setColor
  */
@@ -378,11 +378,11 @@ void DrawingWindow::drawPoint(int x, int y)
 
 //! Dessine un segment.
 /*!
- * Dessine un segement de droite entre les coordonnées (x1, y1) et
+ * Dessine un segement de droite entre les coordonnées (x1, y1) et
  * (x2, y2), avec la couleur de dessin courante.
  *
- * \param x1, y1        coordonnées d'une extrémité du segment
- * \param x2, y2        coordonnées de l'autre extrémité du segment
+ * \param x1, y1        coordonnées d'une extrémité du segment
+ * \param x2, y2        coordonnées de l'autre extrémité du segment
  *
  * \see setColor
  */
@@ -396,12 +396,12 @@ void DrawingWindow::drawLine(int x1, int y1, int x2, int y2)
 
 //! Dessine un rectangle.
 /*!
- * Dessine le rectangle parallèle aux axes et défini par les
- * coordonnées de deux sommets opposés (x1, y1) et (x2, y2).  Utilise
+ * Dessine le rectangle parallèle aux axes et défini par les
+ * coordonnées de deux sommets opposés (x1, y1) et (x2, y2).  Utilise
  * la couleur de dessin courante.
  *
- * \param x1, y1        coordonnées d'un sommet du rectangle
- * \param x2, y2        coordonnées du sommet opposé du rectangle
+ * \param x1, y1        coordonnées d'un sommet du rectangle
+ * \param x2, y2        coordonnées du sommet opposé du rectangle
  *
  * \see fillRect, setColor
  */
@@ -419,12 +419,12 @@ void DrawingWindow::drawRect(int x1, int y1, int x2, int y2)
 
 //! Dessine un rectangle plein.
 /*!
- * Dessine le rectangle plein parallèle aux axes et défini par les
- * coordonnées de deux sommets opposés (x1, y1) et (x2, y2).  Utilise
+ * Dessine le rectangle plein parallèle aux axes et défini par les
+ * coordonnées de deux sommets opposés (x1, y1) et (x2, y2).  Utilise
  * la couleur de dessin courante.
  *
- * \param x1, y1        coordonnées d'un sommet du rectangle
- * \param x2, y2        coordonnées du sommet opposé du rectangle
+ * \param x1, y1        coordonnées d'un sommet du rectangle
+ * \param x2, y2        coordonnées du sommet opposé du rectangle
  *
  * \see drawRect, setColor
  */
@@ -440,7 +440,7 @@ void DrawingWindow::fillRect(int x1, int y1, int x2, int y2)
  * Dessine un cercle de centre (x, y) et de rayon r.  Utilise la
  * couleur de dessin courante.
  *
- * \param x, y          coordonnées du centre du cercle
+ * \param x, y          coordonnées du centre du cercle
  * \param r             rayon du cercle
  *
  * \see fillCircle, setColor
@@ -461,7 +461,7 @@ void DrawingWindow::drawCircle(int x, int y, int r)
  * Dessine un disque (cercle plein) de centre (x, y) et de rayon r.
  * Utilise la couleur de dessin courante.
  *
- * \param x, y          coordonnées du centre du disque
+ * \param x, y          coordonnées du centre du disque
  * \param r             rayon du disque
  *
  * \see drawCircle, setColor
@@ -473,18 +473,18 @@ void DrawingWindow::fillCircle(int x, int y, int r)
     painter->setBrush(Qt::NoBrush);
 }
 
-//! Écrit du texte.
+//! Écrit du texte.
 /*!
- * Écrit le texte text, aux coordonnées (x, y) et avec les paramètres
- * d'alignement flags.  Le texte est écrit avec la couleur de dessin
+ * Écrit le texte text, aux coordonnées (x, y) et avec les paramètres
+ * d'alignement flags.  Le texte est écrit avec la couleur de dessin
  * courante.  Les flags sont une combinaison (ou binaire) de
  * Qt::AlignLeft, Qt::AligneRight, Qt::AlignHCenter, Qt::AlignTop,
- * Qt::AlignBottom, Qt::AlignVCenter, Qt::AlignCenter.  Par défaut, le
- * texte est aligné en haut à gauche.
+ * Qt::AlignBottom, Qt::AlignVCenter, Qt::AlignCenter.  Par défaut, le
+ * texte est aligné en haut à gauche.
  *
- * \param x, y          coordonnées du texte
- * \param text          texte à écrire
- * \param flags         paramètres d'alignement
+ * \param x, y          coordonnées du texte
+ * \param text          texte à écrire
+ * \param flags         paramètres d'alignement
  *
  * \see drawTextBg, setColor
  * \see QPainter::drawText
@@ -499,14 +499,14 @@ void DrawingWindow::drawText(int x, int y, const char *text, int flags)
     safeUnlock(syncMutex);
 }
 
-//! Écrit du texte sur fond coloré.
+//! Écrit du texte sur fond coloré.
 /*!
- * Écrit du texte comme drawText, mais l'arrière-plan est coloré avec
+ * Écrit du texte comme drawText, mais l'arrière-plan est coloré avec
  * la couleur de fond courante.
  *
- * \param x, y          coordonnées du texte
- * \param text          texte à écrire
- * \param flags         paramètres d'alignement
+ * \param x, y          coordonnées du texte
+ * \param text          texte à écrire
+ * \param flags         paramètres d'alignement
  *
  * \see drawText, setColor, setColorBg
  */
@@ -520,11 +520,11 @@ void DrawingWindow::drawTextBg(int x, int y, const char *text, int flags)
 
 //! Retourne la couleur d'un pixel.
 /*!
- * Retourne la couleur du pixel de coordonnées (x, y).  La valeur
- * retournée peut servir de paramètres à setColor(unsigned int) ou
+ * Retourne la couleur du pixel de coordonnées (x, y).  La valeur
+ * retournée peut servir de paramètres à setColor(unsigned int) ou
  * setBgColor(unsigned int).
  *
- * \param x, y          coordonnées du pixel
+ * \param x, y          coordonnées du pixel
  * \return              couleur du pixel
  *
  * \see setColor(unsigned int), setBgColor(unsigned int)
@@ -537,16 +537,16 @@ unsigned int DrawingWindow::getPointColor(int x, int y)
 //! Attend l'appui sur un des boutons de la souris.
 /*!
  * Attend l'appui sur un des boutons de la souris.  Retourne le bouton
- * qui a été pressé et les coordonnées du pointeur de souris à ce
- * moment-là.
+ * qui a été pressé et les coordonnées du pointeur de souris à ce
+ * moment-là.
  *
- * \param x, y          coordonnées du pointeur de souris
- * \param button        numéro du bouton qui a été pressé
+ * \param x, y          coordonnées du pointeur de souris
+ * \param button        numéro du bouton qui a été pressé
  *                      (1: gauche, 2: droit, 3: milieu, 0 sinon)
- * \param time          durée maximale de l'attente
- * \return              true si un bouton a été pressé
+ * \param time          durée maximale de l'attente
+ * \return              true si un bouton a été pressé
  *
- * \bug                 expérimental
+ * \bug                 expérimental
  */
 bool DrawingWindow::waitMousePress(int &x, int &y, int &button,
                                    unsigned long time)
@@ -574,16 +574,16 @@ bool DrawingWindow::waitMousePress(int &x, int &y, int &button,
     return pressed;
 }
 
-//! Synchronise le contenu de la fenêtre.
+//! Synchronise le contenu de la fenêtre.
 /*!
- * Pour des raisons d'efficacités, le résultat des fonctions de dessin
- * n'est pas affiché immédiatement.  L'appel à sync permet de
- * synchroniser le contenu de la fenêtre.  Autrement dit, cela bloque
- * l'exécution du programme jusqu'à ce que le contenu de la fenêtre
- * soit à jour.
+ * Pour des raisons d'efficacités, le résultat des fonctions de dessin
+ * n'est pas affiché immédiatement.  L'appel à sync permet de
+ * synchroniser le contenu de la fenêtre.  Autrement dit, cela bloque
+ * l'exécution du programme jusqu'à ce que le contenu de la fenêtre
+ * soit à jour.
  *
- * \param time          durée maximale de l'attente
- * \return              true si la fenêtre a pu être synchronisée
+ * \param time          durée maximale de l'attente
+ * \return              true si la fenêtre a pu être synchronisée
  */
 bool DrawingWindow::sync(unsigned long time)
 {
@@ -599,13 +599,13 @@ bool DrawingWindow::sync(unsigned long time)
     return synced;
 }
 
-//! Ferme la fenêtre graphique.
+//! Ferme la fenêtre graphique.
 void DrawingWindow::closeGraph()
 {
     qApp->postEvent(this, new CloseRequestEvent());
 }
 
-//! Suspend l'exécution pendant un certain temps.
+//! Suspend l'exécution pendant un certain temps.
 /*!
  * \param secs          temps d'attente en seconde
  */
@@ -614,7 +614,7 @@ void DrawingWindow::sleep(unsigned long secs)
     DrawingThread::sleep(secs);
 }
 
-//! Suspend l'exécution pendant un certain temps.
+//! Suspend l'exécution pendant un certain temps.
 /*!
  * \param msecs          temps d'attente en millisecondes
  */
@@ -623,7 +623,7 @@ void DrawingWindow::msleep(unsigned long msecs)
     DrawingThread::msleep(msecs);
 }
 
-//! Suspend l'exécution pendant un certain temps.
+//! Suspend l'exécution pendant un certain temps.
 /*!
  * \param usecs          temps d'attente en microsecondes
  */
@@ -677,7 +677,7 @@ void DrawingWindow::customEvent(QEvent *ev)
 /*!
  * \see QWidget
  *
- * \bug                 expérimental
+ * \bug                 expérimental
  */
 void DrawingWindow::mousePressEvent(QMouseEvent *ev)
 {
@@ -749,7 +749,7 @@ void DrawingWindow::timerEvent(QTimerEvent *ev)
 
 //! Fonction d'initialisation.
 /*!
- * Fonction appelée par les différents constructeurs.
+ * Fonction appelée par les différents constructeurs.
  *
  * \param fun           fonction de dessin
  */
@@ -817,10 +817,10 @@ QColor DrawingWindow::getBgColor()
 
 //! Verrouille un mutex.
 /*!
- * S'assure que le thread courant ne peut pas être terminé s'il
- * détient un mutex.  Pendant de safeUnlock.
+ * S'assure que le thread courant ne peut pas être terminé s'il
+ * détient un mutex.  Pendant de safeUnlock.
  *
- * \param mutex         le mutex à verrouiller
+ * \param mutex         le mutex à verrouiller
  *
  * \see safeUnlock
  */
@@ -832,12 +832,12 @@ void DrawingWindow::safeLock(QMutex &mutex)
     mutex.lock();
 }
 
-//! Déverrouille un mutex.
+//! Déverrouille un mutex.
 /*!
- * S'assure que le thread courant ne peut pas être terminé s'il
- * détient un mutex.  Pendant de safeLock.
+ * S'assure que le thread courant ne peut pas être terminé s'il
+ * détient un mutex.  Pendant de safeLock.
  *
- * \param mutex         le mutex à déverrouiller
+ * \param mutex         le mutex à déverrouiller
  *
  * \see safeLock
  */
@@ -849,7 +849,7 @@ void DrawingWindow::safeUnlock(QMutex &mutex)
         thread->setTerminationEnabled(true);
 }
 
-//! Marque l'image entière comme non à jour.
+//! Marque l'image entière comme non à jour.
 inline
 void DrawingWindow::dirty()
 {
@@ -857,9 +857,9 @@ void DrawingWindow::dirty()
     dirtyRect = image->rect();
 }
 
-//! Marque un point de l'image comme non à jour.
+//! Marque un point de l'image comme non à jour.
 /*!
- * \param x, y          coordonnées du point
+ * \param x, y          coordonnées du point
  */
 inline
 void DrawingWindow::dirty(int x, int y)
@@ -867,13 +867,13 @@ void DrawingWindow::dirty(int x, int y)
     dirty(QRect(x, y, 1, 1));
 }
 
-//! Marque une zone de l'image comme non à jour.
+//! Marque une zone de l'image comme non à jour.
 /*!
- * La zone est définie par un rectangle dont les coordonnées de deux
- * sommets oppposés sont données.
+ * La zone est définie par un rectangle dont les coordonnées de deux
+ * sommets oppposés sont données.
  *
- * \param x1, y1        coordonnées d'un sommet du rectangle
- * \param x2, y2        coordonnées du sommet opposé du rectangle
+ * \param x1, y1        coordonnées d'un sommet du rectangle
+ * \param x2, y2        coordonnées du sommet opposé du rectangle
  */
 inline
 void DrawingWindow::dirty(int x1, int y1, int x2, int y2)
@@ -883,9 +883,9 @@ void DrawingWindow::dirty(int x1, int y1, int x2, int y2)
     dirty(r.normalized());
 }
 
-//! Marque une zone de l'image comme non à jour.
+//! Marque une zone de l'image comme non à jour.
 /*!
- * \param rect          rectangle délimitant la zone
+ * \param rect          rectangle délimitant la zone
  */
 void DrawingWindow::dirty(const QRect &rect)
 {
@@ -897,9 +897,9 @@ void DrawingWindow::dirty(const QRect &rect)
     }
 }
 
-//! Génère un update si besoin.
+//! Génère un update si besoin.
 /*!
- * Génère une demande de mise à jour de la fenêtre (appel à update)
+ * Génère une demande de mise à jour de la fenêtre (appel à update)
  * s'il y en a besoin.
  */
 void DrawingWindow::mayUpdate()
@@ -938,7 +938,7 @@ void DrawingWindow::realSync()
 
 //! Fonction bas-niveau pour drawText.
 /*!
- * Le rendu de texte doit être fait dans le thread principal.  D'où
+ * Le rendu de texte doit être fait dans le thread principal.  D'où
  * les manipulations tordues et la synchronisation qui s'en suit.
  *
  * \param x, y, text, flags     cf. drawText
@@ -991,7 +991,7 @@ DrawingThread::DrawingThread(DrawingWindow &w, DrawingWindow::ThreadFunction f)
 {
 }
 
-//! Démarre le thread si ce n'a pas encore été fait.
+//! Démarre le thread si ce n'a pas encore été fait.
 void DrawingThread::start_once(Priority priority)
 {
     if (!started_once) {
index 732183a..4e96105 100644 (file)
@@ -63,9 +63,9 @@ public:
 
     void closeGraph();
 
-    void sleep(unsigned long secs);
-    void msleep(unsigned long msecs);
-    void usleep(unsigned long usecs);
+    static void sleep(unsigned long secs);
+    static void msleep(unsigned long msecs);
+    static void usleep(unsigned long usecs);
 
 protected:
     void closeEvent(QCloseEvent *ev);
index 875fa4b..8726d26 100644 (file)
@@ -6,8 +6,8 @@
 #include <cstdlib>
 #include <sstream>
 
-/* Note : les coordonnées réelles vont de -100 à +100 en abscisse, et
- *  de -10 à +140 en ordonnée
+/* Note : les coordonnées réelles vont de -100 à +100 en abscisse, et
+ *  de -10 à +140 en ordonnée
  */
 
 const float PI = 4.0 * atan(1.0);
@@ -42,8 +42,8 @@ float largeurMont;
 float hauteurMont;
 float wnd;
 
-/* Retourne un nombre pseudo-aléatoire compris entre le paramètre
- * 'min' (inclus) et le paramètre 'max' (exclus)
+/* Retourne un nombre pseudo-aléatoire compris entre le paramètre
+ * 'min' (inclus) et le paramètre 'max' (exclus)
  */
 float frand(float min, float max)
 {
@@ -60,7 +60,7 @@ float deg2rad(float deg)
     return deg * PI / 180.0;
 }
 
-// conversion coordonnées réelles -> coordonnées fenêtre
+// conversion coordonnées réelles -> coordonnées fenêtre
 int rtowX(const DrawingWindow& w, float rx)
 {
     return (int )roundf((w.width - 1) * (rx - rXMin) / (rXMax - rXMin));
@@ -71,7 +71,7 @@ int rtowY(const DrawingWindow& w, float ry)
     return (int )roundf((w.height - 1) * (rYMax - ry) / (rYMax - rYMin));
 }
 
-// conversion coordonnées fenêtre -> coordonnées réelles
+// conversion coordonnées fenêtre -> coordonnées réelles
 float wtorX(const DrawingWindow& w, int wx)
 {
     return (rXMax - rXMin) * wx / (w.width - 1) + rXMin;
@@ -222,8 +222,8 @@ void initialise(DrawingWindow& w)
                Qt::AlignHCenter);
 }
 
-/* Retour : numéro du perdant, 0 sinon
-   x et y contiennent les coordonnées de la collision
+/* Retour : numéro du perdant, 0 sinon
+   x et y contiennent les coordonnées de la collision
 */
 int tir(DrawingWindow& w,
         float x0, float y0, float v0, float alpha, float& x, float &y)
@@ -296,7 +296,7 @@ int jeu1(DrawingWindow& w)
         } else {
             alpha = frand(10, 90);
             v0 = frand(10, 100);
-            std::cout << " [ " << (int )alpha << "° ; " << (int )v0 << " ]"
+            std::cout << " [ " << (int )alpha << "° ; " << (int )v0 << " ]"
                       << std::endl;
         }
 
@@ -317,7 +317,7 @@ int jeu1(DrawingWindow& w)
     std::stringstream msg;
     msg << " Joueur " << perdant;
     if (perdant == joueur)
-        msg << " s'est suicidé ! ";
+        msg << " s'est suicidé ! ";
     else
         msg << " a perdu ! ";
     w.setColor("darkred");
index 0b50b85..923b6ce 100644 (file)
@@ -1,8 +1,8 @@
 /*
- * Pour compiler et exécuter
+ * Pour compiler et exécuter
  * =========================
  *
- * 1. Créer le fichier exemple.pro :
+ * 1. Créer le fichier exemple.pro :
  *      +------------------------------------------------------------+
  *      |TEMPLATE = app                                              |
  *      |TARGET = exemple                                              |
@@ -13,7 +13,7 @@
  *      |SOURCES += exemple.cpp                                      |
  *      +------------------------------------------------------------+
  *
- * 2. Créer le fichier Makefile avec la commande :
+ * 2. Créer le fichier Makefile avec la commande :
  *      $ qmake-qt4 exemple.pro
  *    ou tout simplement :
  *      $ qmake-qt4
@@ -23,7 +23,7 @@
  *    ou tou simplement :
  *      $ make
  *
- * 4. Exécuter le programme avec la commande :
+ * 4. Exécuter le programme avec la commande :
  *      $ ./exemple
  */
 
index 0d219ce..1e8733f 100644 (file)
--- a/htaccess
+++ b/htaccess
@@ -1,2 +1,2 @@
 AddType text/plain    cpp h pro
-AddCharset iso-8859-1 cpp h pro
+AddCharset utf-8 cpp h pro
diff --git a/mainpage b/mainpage
new file mode 100644 (file)
index 0000000..55b1a32
--- /dev/null
+++ b/mainpage
@@ -0,0 +1,47 @@
+/*! \mainpage Petite bibliothèque graphique
+ *
+ * Voici quelques lignes de codes devant permettre d'écrire de manière
+ * assez simples des petites applications graphiques en C++.  Le code
+ * s'appuie sur la bibliothèque <a
+ * href="http://trolltech.com/products/qt">Qt</a>.
+ *
+ * Voir la documentation et les exemples fournis pour en comprendre
+ * l'utilisation.
+ *
+ * \section Documentation
+ *
+ * La documentation se trouve \link DrawingWindow par ici\endlink...
+ * Des exemples d'utilisation sont <a href="./examples.html">par
+ * là</a>.
+ *
+ * \section Télécharger
+ *
+ * Le code source...
+ * <ul>
+ * <li> <a href="DrawingWindow.h"><tt>DrawingWindow.h</tt></a>
+ * <li> <a href="DrawingWindow.cpp"><tt>DrawingWindow.cpp</tt></a>
+ * </ul>
+ *
+ * Un exemple d'utilisation...
+ * <ul>
+ * <li> <a href="exemple.cpp"><tt>exemple.cpp</tt></a>
+ * <li> <a href="exemple.pro"><tt>exemple.pro</tt></a>
+ * </ul>
+ *
+ * \section Contacts
+ *
+ * Tous commentaires, suggestions, rapports de bugs, etc. peuvent
+ * m'être envoyés à l'adresse &lt;arnaud.giersch@iut-bm.univ-fcomte.fr&gt;.
+ *
+ * \section Modifications
+ *
+ * \verbinclude CHANGES
+ *
+ * \section Copyright
+ *
+ * \verbinclude COPYRIGHT
+ */
+
+// Local variables:
+// mode: c++
+// End:
index 8c525ee..61e8e3c 100644 (file)
@@ -6,14 +6,14 @@
 #include <sys/wait.h>
 
 struct parameters {
-    // nombre max d'itérations
+    // nombre max d'itérations
     int maxiter;
-    // zone d'intérêt par défaut
+    // zone d'intérêt par défaut
     double Rmin;
     double Rmax;
     double Imin;
     double Imax;
-    // facteur d'échelle
+    // facteur d'échelle
     double Rscale;
     double Iscale;
 };
@@ -79,10 +79,10 @@ void set_color(DrawingWindow& w, parameters& p, int i)
 }
 
 // Fonction de dessin de l'ensemble de Madelbrot, dans la zone
-// spécifiée, et avec la précision souhgaitée.
+// spécifiée, et avec la précision souhgaitée.
 void do_mandel(DrawingWindow& w, parameters& p)
 {
-    int x, y;                   // le pixel considéré
+    int x, y;                   // le pixel considéré
     double cr, ci;              // le complexe correspondant
     int iprev = -1;
 
@@ -119,7 +119,7 @@ void do_mandel(DrawingWindow& w, parameters& p)
     }
 }
     
-// Fonction de dessin principale, calcule la zone d'intérêt, appelle
+// Fonction de dessin principale, calcule la zone d'intérêt, appelle
 // do_mandel(), pour dessiner l'ensemle, et permet le zoom.
 void mandel(DrawingWindow &w)
 {
@@ -136,12 +136,12 @@ void mandel(DrawingWindow &w)
         int button;
         w.waitMousePress(x, y, button);
 
-        // calcul des coordonnées du point cliqué
+        // calcul des coordonnées du point cliqué
         double Tr = p.Rmin + x * p.Rscale;
         double Ti = p.Imax - y * p.Rscale;
 
-        // calcul de la nouvelle zone d'intérêt :
-        // zoom ×2 en direction du point cliqué
+        // calcul de la nouvelle zone d'intérêt :
+        // zoom ×2 en direction du point cliqué
         const int zoom = 2;
         double Rmin2 = p.Rmin / zoom;
         double Rmax2 = p.Rmax / zoom;
@@ -154,7 +154,7 @@ void mandel(DrawingWindow &w)
         Imin2 += Ishift;
         Imax2 += Ishift;
 
-        // affichage d'un rectangle autour de la nouvelle zone d'intérêt
+        // affichage d'un rectangle autour de la nouvelle zone d'intérêt
         w.setColor("white");
         w.drawRect((Rmin2 - p.Rmin) / p.Rscale, (p.Imax - Imin2) / p.Iscale,
                    (Rmax2 - p.Rmin) / p.Rscale, (p.Imax - Imax2) / p.Iscale);
index f8afa0d..ae6c0f3 100644 (file)
@@ -2,14 +2,14 @@
  * Pour compiler
  * =============
  *
- * 1. Créer le fichier hello.pro :
+ * 1. Créer le fichier hello.pro :
  *      +------------------------------------------------------------+
  *      |TARGET = hello                                              |
  *      |CONFIG += qt debug                                          |
  *      |SOURCES += hello.cc                                         |
  *      +------------------------------------------------------------+
  *
- * 2. Créer le fichier Makefile avec la commande :
+ * 2. Créer le fichier Makefile avec la commande :
  *      $ qmake -makefile hello.pro
  *    ou tout simplement :
  *      $ qmake -makefile
@@ -50,7 +50,7 @@ void flip(DrawingWindow &w)
 
 void mandel(DrawingWindow &w)
 {
-    /* paramètres par défaut */
+    /* paramètres par défaut */
     int larg = w.width;
     int haut = w.height;
     float Rmin = -2.05;
@@ -60,7 +60,7 @@ void mandel(DrawingWindow &w)
 
     int maxiter = 100;
 
-    int x, y;                   /* le pixel considéré */
+    int x, y;                   /* le pixel considéré */
     float cr, ci;               /* le complexe correspondant */
     float zr, zi;               /* pour calculer la suite */
     float zr2, zi2;
@@ -89,7 +89,7 @@ void mandel(DrawingWindow &w)
                 zi = 2*zr*zi + ci;
                 zr = zr2 - zi2 + cr;
             }
-                /* on est sorti trop tôt du for(...):
+                /* on est sorti trop tôt du for(...):
                    on affiche le pixel d'un couleur en fonction 
                    de i */
                  if (i <= maxiter / 2) {