source: trunk/geant4/interfaces/basic/include/wframe.h @ 562

Last change on this file since 562 was 562, checked in by garnier, 17 years ago

r565@mac-90108: laurentgarnier | 2007-08-14 14:18:03 +0200
mise a jour suite au plantage de svk (cheksum error) suite au crash du DD en juin

File size: 3.9 KB
Line 
1#ifndef WFRAME_H
2#define WFRAME_H
3
4#include <QtGui/qmainwindow.h>
5
6class WFrame : public QMainWindow
7{
8  // macro Q_OBJECT indispensable pour sp&eacute;cifier &agrave; Qt l'utilisation du m&eacute;canisme interne de
9  // communication entre les classes.
10
11    public:
12
13  /**
14   * @brief Constructeur de notre classe.
15   * Initialise les menus, la toolbar et les zones images et d'information.
16   * @param parent : parent de cette fen&ecirc;tre : ici 0 signifie que c'est la fen&ecirc;tre principale
17   * @param applicationPath : chemin absolu de lancement de cette application
18   */
19  WFrame(QMainWindow* parent = 0,const QString& applicationPath= "", Qt::WFlags = Qt::Window );
20
21  /**
22   * @brief Destructeur de classe.
23   */
24  virtual ~WFrame();
25
26 private:
27
28  /** @brief Pointeur sur le widget de la palette  */
29  Palette* m_palette;
30
31  /** @brief Pointeur sur le widget de la visu */       
32  Visu2D* m_visu2d;
33
34  /** @brief Pointeur sur le widget des statistiques */ 
35  WStatistiques *m_wStatistiques;
36
37  /** @brief Pointeur sur notre image  */
38  Image *m_pImage;
39
40  /** @brief chemin absolu de lancement de cette application */
41  QString m_applicationPath;
42
43  /** @brief Classe d'&eacute;venements associ&eacute;s au bouton Rectangle  */
44  QAction *m_actionRectangle;
45
46  /** @brief Classe d'&eacute;venements associ&eacute;s au bouton Ellipse */
47  QAction *m_actionEllipse;
48
49  /** @brief Classe d'&eacute;venements associ&eacute;s au bouton Carre  */
50  QAction *m_actionCarre;
51
52  /** @brief Classe d'&eacute;venements associ&eacute;s au bouton Cercle  */
53  QAction *m_actionCercle;
54
55  /** @brief Classe d'&eacute;venements associ&eacute;s au bouton Polygone  */
56  QAction *m_actionPolygone;
57
58  /** @brief Pointeur utilisé pour mémoriser la forme en cours ; pas de bouton directement associé */
59  QAction *m_actionFormeEnCours;
60
61  /** @brief Classe d'&eacute;venements associ&eacute;s au mode déplacement de la forme */
62  QAction *m_actionDeplaceForme;
63
64  /** @brief Classe d'&eacute;venements associ&eacute;s au mode selection de la couleur */
65  QAction *m_actionSelectCouleur;
66
67  /** @brief Classe d'&eacute;venements associ&eacute;s au bouton d'effacement des formes représentées */
68  QAction *m_actionEffaceFormes;
69
70  /** @brief Classe d'&eacute;venements associ&eacute;s au mode ajoute nouvelle forme */
71  QAction *m_actionModeAjoute;
72
73  /** @brief Label associ&eacute; &agrave; la barre de status  */
74  QLabel* m_label;
75
76  public slots:
77  /**
78   * @brief M&eacute;thode appel&eacute;e lors de la selection d'une nouvelle image.
79   * @return true si l'image est correcte, false sinon
80   */
81  bool OuvreImage();
82
83  /**
84   * @brief M&eacute;thode appel&eacute;e par visu2d lorsque un changement de la barre d'info est n&eacute;cessaire
85   * @param s nouvelle string &agrave; affecter &agrave; la barre d'infos
86   */
87  void MAJBarreInfo(const QString& s);
88
89  /**
90   * @brief M&eacute;thode appel&eacute;e lors du clic sur le bouton Rectangle de la toolbar
91   */
92  void ClicRectangle();
93
94  /**
95   * @brief M&eacute;thode appel&eacute;e lors du clic sur le bouton Ellipse de la toolbar
96   */
97  void ClicEllipse();
98
99  /**
100   * @brief M&eacute;thode appel&eacute;e lors du clic sur le bouton Carre de la toolbar
101   */
102  void ClicCarre();
103
104  /**
105   * @brief M&eacute;thode appel&eacute;e lors du clic sur le bouton Cercle de la toolbar
106   */
107  void ClicCercle();
108
109  /**
110   * @brief M&eacute;thode appel&eacute;e lors du clic sur le bouton Polygone de la toolbar
111   */
112  void ClicPolygone();
113
114  /**
115   * @brief Methode appel&eacute;e lors de la mise à jour de la palette.
116   */
117  void MAJPalette();
118
119  /**
120   * @brief Appelée lorsque la sélection a changé ; pour mettre à jour la fenêtre de stat.
121   */
122  void MAJStatistiques(Selection*, int);
123
124 protected:
125  /** @brief Initialise les menus */
126  void InitMenus();
127
128  /** @brief Initialise la barre d'outils  */
129  void InitToolBar();
130
131  /** @brief Change le type de forme sélectionné  */
132  void SetType(QAction* tb, TYPE_FORME type);
133};
134
135#endif // WFRAME_H
Note: See TracBrowser for help on using the repository browser.