Eulexis  1.2
mainwindow.h
Aller à la documentation de ce fichier.
1 #ifndef MAINWINDOW_H
2 #define MAINWINDOW_H
3 
4 #include <QMainWindow>
5 #include <QFile>
6 #include <QtWidgets>
7 #include <QRegExp>
8 #include <QPrintDialog>
9 #include <QPrinter>
10 #include <QProgressDialog>
11 #include <QDateTime>
12 
13 #include "lemmatiseur.h"
14 
23 class MainWindow;
24 
34 class EditLatin : public QTextEdit
35 {
36  Q_OBJECT
37 
38  private:
40 
41  protected:
42  void mouseReleaseEvent(QMouseEvent *e);
43 
44  public:
45  EditLatin(QWidget *parent);
46  bool event(QEvent *event);
47 };
48 
58 class MainWindow : public QMainWindow
59 {
60  Q_OBJECT
61 
62 public:
63  MainWindow(QWidget *parent = 0);
64  ~MainWindow();
65  void loadLemm();
66  QString bulle(QString mot);
67  QRegExp _reApostr;
68  QRegExp _reWordBoundary;
69 
70 private:
71  QStatusBar * _statusB;
72  QLabel * _blabla;
73  void createW();
74  void readSettings();
75  QString _rscrDir;
76  QString latin2greek(QString f);
77  QTextBrowser *_txtEdit;
78  QTextBrowser *_lemEdit;
79  QLineEdit *_lineEdit;
80  QLineEdit *_lineEdit2;
81  QPushButton *_lemmatiser;
82  QPushButton *_lemmatiser2;
83  QPushButton *_avant;
84  QPushButton *_apres;
85  QToolButton *_beta;
86 // QToolButton *_exact;
87  QAction *_exact;
88 
89  QAction *exportAct;
90  QAction *printAct;
91  QAction *quitAct;
92  QAction *balaiAct;
93  QAction *actionNouveau;
94  QAction *actionOuvrir;
95  QAction *actionSauver;
96  QAction *actionTxt2csv;
97  QAction *actionTextiColor;
98  QAction *actionApostr;
99  QAction *actionBOM;
100  QAction *actionA_propos;
101  QAction *actionConsulter;
102  QAction *actionBackward;
103  QAction *actionForward;
104  QAction *deZoomAct;
105  QAction *zoomAct;
106  QAction *LSJ;
107  QAction *Pape;
108  QAction *AbrBailly;
109  QAction *Bailly;
110  QAction *actLSJ;
111  QAction *actPape;
112  QAction *actAbrBailly;
113  QAction *actBailly;
114  QAction *actComInd;
115  QAction *actAnalyses;
116  QAction *actTrad;
117  QAction *betaAct;
118  QAction *consAct;
119  QAction *yeux;
120  QAction *lunettes;
121  QAction *lemTxt;
122  QAction *lemAlpha;
123  QActionGroup *groupeLang;
124  QAction *langAngl;
125  QAction *langAlld;
126  QAction *langFr;
127  QAction *fenCons;
128  QAction *fenLem;
129  QAction *fenTxt;
130  QAction *chxPolice;
131  QAction *findAct;
132  QAction *reFindAct;
133  QAction *auxAct;
134  QAction *toolsRestoreAct;
135 
136  QMenuBar *menuBar;
137  QMenu *menuFichier;
138  QMenu *menuEdition;
139  QMenu *menuDicos;
140  QMenu *menuFenetre;
141  QMenu *menuExtra;
142  QMenu *menuAide;
143 
144  QToolBar *mainToolBar;
145 
146  const QRegExp reLettres = QRegExp("[A-Za-z]");
147  int lireOptions();
148 
150 
152  QWidget* _second;
153  QWidget* _trois;
154  void createSecond();
155  void createTrois();
156  void connecter();
157  QString _entete; // Pour l'entête HTML avec style.
158  QStringList _historique; // Pour conserver les mots consultés
159  int _histItem; // Pour naviguer dans la liste précédente
160  QAction *effHistAct;
161 
162  QStringList _msg;
164  bool alerte(bool sauv = true);
165  QString rech;
166  QString repertoire;
167  bool plusPetit(QString g1, QString g2);
168  bool longs(QStringList sl);
169  QString _apostrophes;
170  int _lang;
171 
172  // Famille de variables pour le dialogue de vérification
173  QDialog * dVerif;
174  QLabel * dLemme;
175  QLabel * dBeta;
176  QLabel * dLemAv;
177  QLabel * dNum;
178  QLabel * dLemAp;
179  QLabel * dTrAv;
180  QLabel * dTrAp;
181  QLabel * dNb;
182 // QLabel * dOld;
183  QLineEdit * dTrEn;
184  QLineEdit * dTrFr;
185  QLineEdit * dTrDe;
186  QTextEdit * dTrB;
187 // QLineEdit * dTrB;
188  QLineEdit * dComment;
189  QComboBox *dLemB;
190 // QFile dFichier;
191 // QFile dListe;
192  QString dNomFic;
193  QTextStream dFlux;
194  void dSetUp();
195  void dAffiche(QString ligne);
196  bool dValide();
197  QAction * actVerif;
198  int opCode;
199  int indice;
200  int nbLem;
201  int numLem;
202  QRadioButton *choixEulexis; // Déclaré ici pour pouvoir lire l'état.
203  QRadioButton *choixBailly;
204  QRadioButton *choixRemis;
205  QPushButton *nextButton; // Déclaré ici pour changer le texte.
206  QPushButton *previousButton;
207 // QPushButton *undoButton;
208 // QPushButton *saveButton;
209  QStringList lg_Old;
210  QStringList lgOrig;
211  QStringList lgMod;
212  QStringList elements;
213  QStringList lemBailly;
214  QStringList trBailly;
215  QString css_vert = "background-color: #A0FFA0; selection-background-color: #009000;";
216  QString css_orange = "background-color: #FFC040; selection-background-color: #B06000;";
217  QString css_rouge = "background-color: #FF5040; selection-background-color: #A00020;";
218  QString css_gris = "background-color: #808080; selection-background-color: #808080;";
219  QString css_blanc = "background-color: #FFFFFF; selection-background-color: #000080;";
220 
221 private slots:
222  void exportPdf();
223  void imprimer();
224  void closeEvent(QCloseEvent *event);
225  void effaceRes();
226  void nouveau();
227  void ouvrir();
228  void sauver(QString nomFichier = "");
229  void aPropos();
230  void valider();
231  void actualiser();
232  void actualiser2();
233  void consulter(QString f = "", bool ajoute = true);
234  void majA();
235  void majAB(); // Pour l'abrégé du Bailly
236  void majB(); // Pour le Bailly 2020
237  void majC();
238  void majL();
239  void majP();
240  void majT();
241  void avance();
242  void recule();
243  void forward();
244  void backward();
245  void effaceHist();
246  void suivreLien(QUrl url);
247  void montrer();
248  void montrer3();
249  void lemmatTxt();
250  void lemmatAlpha();
251  void txt2csv();
252  void lFr();
253  void lAngl();
254  void lAlld();
255 
256  void avCons();
257  void avLem();
258  void avTxt();
259  void choixPolice();
260  void chercher();
261  void rechercher();
262  void auxilium();
263 
264  void toolsRestore ();
265 
266  // Famille de slots pour le dialogue de vérification.
267 // void dSkip(); // ne tient pas compte des changements, rend la main
268 // void dValid(); // Valide les changements.
269  void dNext();
270  void dPrev();
271  void dSave(); // Pour sauver l'ensemble des données sans changer de lemme.
272  void dUndo(); // Pour annuler les modifs
273  void dChgLem(int i); // Mettre à jour la traduction quand on change de lemme.
274  void verifT(); // Je définis une nouvelle action, d'où un slot.
275 
276 public slots:
277  void lemmatiser(QString f = "");
278 
279 };
280 
281 #endif // MAINWINDOW_H
QString css_orange
Definition: mainwindow.h:216
void dChgLem(int i)
change la traduction du Bailly, quand on choisit un autre lemme dans ce dictionnaire ...
Definition: mainwindow.cpp:3125
QMenu * menuExtra
Definition: mainwindow.h:141
QRadioButton * choixBailly
Definition: mainwindow.h:203
Lemmat * __lemmatiseur
Definition: mainwindow.h:149
QAction * effHistAct
Definition: mainwindow.h:160
bool dValide()
valide le choix de traduction pour le lemme en cours
Definition: mainwindow.cpp:2828
QTextBrowser * _txtEdit
Definition: mainwindow.h:77
QString repertoire
Definition: mainwindow.h:166
const QRegExp reLettres
Definition: mainwindow.h:146
void readSettings()
lecture des paramètres essentiels qui ont été sauvegardés lors de la dernière fermeture.
Definition: mainwindow.cpp:262
QAction * actAbrBailly
Definition: mainwindow.h:112
QPushButton * _avant
Definition: mainwindow.h:83
void forward()
avance dans l'historique de consultation
Definition: mainwindow.cpp:1144
void dSetUp()
crée la fenêtre pour vérifier les traductions et connecte les boutons aux slots
Definition: mainwindow.cpp:2692
void lemmatTxt()
lemmatisation du texte en respectant l'ordre des mots
Definition: mainwindow.cpp:1854
QWidget * _second
Definition: mainwindow.h:152
QString bulle(QString mot)
pour afficher une bulle d'aide avec la lemmatisation du mot sous le curseur
Definition: mainwindow.cpp:1329
void suivreLien(QUrl url)
suit le lien
Definition: mainwindow.cpp:1599
QStringList elements
Definition: mainwindow.h:212
void toolsRestore()
affiche à nouveau la barre d'outils
Definition: mainwindow.cpp:2562
QAction * _exact
Definition: mainwindow.h:87
void lemmatiser(QString f="")
affiche la lemmatisation de la forme dans la troisième fenêtre
Definition: mainwindow.cpp:1369
void createTrois()
création d'une troisième fenêtre, pour la lemmatisation
Definition: mainwindow.cpp:1677
bool plusPetit(QString g1, QString g2)
compare deux chaines en caractères grecs sans tenir compte des signes diacritiques.
Definition: mainwindow.cpp:2523
void avTxt()
met au premier plan la fenêtre de texte (l'ouvre si nécessaire)
Definition: mainwindow.cpp:2264
QString css_rouge
Definition: mainwindow.h:217
void mouseReleaseEvent(QMouseEvent *e)
Captation de la fin du clic de souris.
Definition: mainwindow.cpp:94
void majT()
mise à jour des traductions
Definition: mainwindow.cpp:763
QAction * fenTxt
Definition: mainwindow.h:129
QStringList lg_Old
Definition: mainwindow.h:209
EditLatin(QWidget *parent)
Créateur de la classe EditLatin, dérivée de QTextEdit afin de pouvoir redéfinir l'action connectée au...
Definition: mainwindow.cpp:16
~MainWindow()
destructeur de la classe MainWindow
Definition: mainwindow.cpp:171
QAction * actionA_propos
Definition: mainwindow.h:100
void ouvrir()
ouvre un texte dans la deuxième fenêtre
Definition: mainwindow.cpp:1040
QStatusBar * _statusB
Definition: mainwindow.h:71
void montrer()
montrer/masquer la deuxième fenêtre (pour le texte)
Definition: mainwindow.cpp:1719
QAction * reFindAct
Definition: mainwindow.h:132
void verifT()
lance la vérification des traductions
Definition: mainwindow.cpp:3151
QAction * actLSJ
Definition: mainwindow.h:110
void lFr()
met le français comme langue cible
Definition: mainwindow.cpp:2245
QAction * quitAct
Definition: mainwindow.h:91
QAction * langAngl
Definition: mainwindow.h:124
QAction * lemAlpha
Definition: mainwindow.h:122
QAction * actionForward
Definition: mainwindow.h:103
void actualiser()
actualise le contenu de la deuxième ligne de saisie et celui des boutons associés.
Definition: mainwindow.cpp:1418
QLineEdit * dTrFr
Definition: mainwindow.h:184
QAction * actionOuvrir
Definition: mainwindow.h:94
void majAB()
mise à jour de l'abrégé du Bailly
Definition: mainwindow.cpp:875
QString _entete
Definition: mainwindow.h:157
QMenu * menuFichier
Definition: mainwindow.h:137
QTextStream dFlux
Definition: mainwindow.h:193
QAction * actionTxt2csv
Definition: mainwindow.h:96
QLabel * dLemAv
Definition: mainwindow.h:176
QString css_vert
Definition: mainwindow.h:215
int nbLem
Definition: mainwindow.h:200
QAction * actionTextiColor
Definition: mainwindow.h:97
QAction * zoomAct
Definition: mainwindow.h:105
QLineEdit * dComment
Definition: mainwindow.h:188
void avance()
avance à l'article suivant des dictionnaires
Definition: mainwindow.cpp:1110
void montrer3()
montrer/masquer la troisième fenêtre (pour la lemmatisation)
Definition: mainwindow.cpp:1736
QLabel * dLemAp
Definition: mainwindow.h:178
void effaceHist()
efface l'historique
Definition: mainwindow.cpp:1159
int numLem
Definition: mainwindow.h:201
QString latin2greek(QString f)
convertit les caractères latins en caractères grecs
Definition: mainwindow.cpp:1474
QPushButton * nextButton
Definition: mainwindow.h:205
QAction * fenLem
Definition: mainwindow.h:128
QStringList _msg
Definition: mainwindow.h:162
QAction * actionConsulter
Definition: mainwindow.h:101
QAction * deZoomAct
Definition: mainwindow.h:104
QString _apostrophes
Definition: mainwindow.h:169
void dNext()
valide le choix de traduction et passe au lemme suivant
Definition: mainwindow.cpp:3079
int indice
Definition: mainwindow.h:199
QAction * LSJ
Definition: mainwindow.h:106
QAction * chxPolice
Definition: mainwindow.h:130
QAction * actAnalyses
Definition: mainwindow.h:115
QToolBar * mainToolBar
Definition: mainwindow.h:144
QAction * balaiAct
Definition: mainwindow.h:92
QAction * actionBackward
Definition: mainwindow.h:102
QStringList _historique
Definition: mainwindow.h:158
QAction * lemTxt
Definition: mainwindow.h:121
void valider()
valider ?
Definition: mainwindow.cpp:1632
void lAlld()
met l'allemand comme langue cible
Definition: mainwindow.cpp:2227
void majL()
mise à jour du LSJ
Definition: mainwindow.cpp:823
QLabel * dBeta
Definition: mainwindow.h:175
void closeEvent(QCloseEvent *event)
Vérifie que le travail est sauvé avant la fermeture de l'application.
Definition: mainwindow.cpp:202
QString css_gris
Definition: mainwindow.h:218
void imprimer()
Lance le dialogue d'impression pour la lemmatisation.
Definition: mainwindow.cpp:2392
QAction * AbrBailly
Definition: mainwindow.h:108
void connecter()
connecte les actions aux slots
Definition: mainwindow.cpp:636
int _lang
Definition: mainwindow.h:170
void majA()
mise à jour des analyses
Definition: mainwindow.cpp:728
QStringList lgOrig
Definition: mainwindow.h:210
QAction * exportAct
Definition: mainwindow.h:89
QDialog * dVerif
Definition: mainwindow.h:173
QLineEdit * dTrEn
Definition: mainwindow.h:183
QComboBox * dLemB
Definition: mainwindow.h:189
QLineEdit * dTrDe
Definition: mainwindow.h:185
void backward()
revient au dernier mot cherché dans les dictionnaires
Definition: mainwindow.cpp:1126
QMenu * menuEdition
Definition: mainwindow.h:138
QTextEdit * dTrB
Definition: mainwindow.h:186
QPushButton * _lemmatiser2
Definition: mainwindow.h:82
void majC()
mise à jour de l'index commun
Definition: mainwindow.cpp:1018
QMenu * menuAide
Definition: mainwindow.h:142
void rechercher()
poursuit la recherche
Definition: mainwindow.cpp:2453
QLabel * _blabla
Definition: mainwindow.h:72
QAction * actVerif
Definition: mainwindow.h:197
QAction * findAct
Definition: mainwindow.h:131
void dSave()
sauve les choix déjà faits et propose de continuer ou d'arrêter.
Definition: mainwindow.cpp:2652
QLabel * dNb
Definition: mainwindow.h:181
QPushButton * _lemmatiser
Definition: mainwindow.h:81
QStringList lemBailly
Definition: mainwindow.h:213
void sauver(QString nomFichier="")
sauve le travail en cours
Definition: mainwindow.cpp:1082
QAction * actPape
Definition: mainwindow.h:111
void loadLemm()
charge les analyses et les traductions
Definition: mainwindow.cpp:182
void avCons()
met au premier plan la fenêtre de consultation
Definition: mainwindow.cpp:2254
void avLem()
met au premier plan la fenêtre de lemmatisation (l'ouvre si nécessaire)
Definition: mainwindow.cpp:2281
void choixPolice()
ouvre une boîte de dialogue pour le choix de la police et l'applique
Definition: mainwindow.cpp:2342
QString css_blanc
Definition: mainwindow.h:219
QMenuBar * menuBar
Definition: mainwindow.h:136
QLineEdit * _lineEdit
Definition: mainwindow.h:79
MainWindow(QWidget *parent=0)
Créateur de la classe MainWindow.
Definition: mainwindow.cpp:123
QAction * printAct
Definition: mainwindow.h:90
QActionGroup * groupeLang
Definition: mainwindow.h:123
void auxilium()
ouvre l'index de l'aide utilisateur (dans le navigateur par défaut)
Definition: mainwindow.cpp:2554
void exportPdf()
exporte en pdf le contenu de la fenêtre de lemmatisation
Definition: mainwindow.cpp:2369
header pour la classe Lemmat
int lireOptions()
groupe le choix des dictionnaires en un entier
Definition: mainwindow.cpp:1547
QAction * actionBOM
Definition: mainwindow.h:99
QStringList lgMod
Definition: mainwindow.h:211
QAction * Pape
Definition: mainwindow.h:107
void majP()
mise à jour du Pape
Definition: mainwindow.cpp:979
void lAngl()
met l'anglais comme langue cible
Definition: mainwindow.cpp:2236
QMenu * menuDicos
Definition: mainwindow.h:139
QAction * actionSauver
Definition: mainwindow.h:95
QAction * actTrad
Definition: mainwindow.h:116
QAction * fenCons
Definition: mainwindow.h:127
QAction * consAct
Definition: mainwindow.h:118
void lemmatAlpha()
lemmatisation du texte avec les mots dans l'ordre alphabétique
Definition: mainwindow.cpp:1764
QAction * auxAct
Definition: mainwindow.h:133
QAction * lunettes
Definition: mainwindow.h:120
void majB()
mise à jour du Bailly
Definition: mainwindow.cpp:927
QString rech
Definition: mainwindow.h:165
void dAffiche(QString ligne)
affiche un nouveau lemme et ses traductions dans la fenêtre de vérification.
Definition: mainwindow.cpp:2969
QToolButton * _beta
Definition: mainwindow.h:85
QPushButton * _apres
Definition: mainwindow.h:84
void effaceRes()
efface le contenu de la fenêtre de lemmatisation
Definition: mainwindow.cpp:1560
QWidget * _trois
Definition: mainwindow.h:153
QString dNomFic
Definition: mainwindow.h:192
QLineEdit * _lineEdit2
Definition: mainwindow.h:80
QRadioButton * choixEulexis
Definition: mainwindow.h:202
QLabel * dTrAv
Definition: mainwindow.h:179
QAction * actionApostr
Definition: mainwindow.h:98
MainWindow * mainwindow
Definition: mainwindow.h:39
QAction * actBailly
Definition: mainwindow.h:113
void nouveau()
efface le texte dans la deuxième fenêtre
Definition: mainwindow.cpp:1026
QLabel * dLemme
Definition: mainwindow.h:174
void actualiser2()
actualise le contenu de la première ligne de saisie et celui des boutons associés.
Definition: mainwindow.cpp:1449
QAction * Bailly
Definition: mainwindow.h:109
QRegExp _reWordBoundary
Definition: mainwindow.h:68
QAction * toolsRestoreAct
Definition: mainwindow.h:134
QAction * langFr
Definition: mainwindow.h:126
QStringList trBailly
Definition: mainwindow.h:214
void aPropos()
Affiche une fenêtre de dialogue avec les remerciements.
Definition: mainwindow.cpp:704
void chercher()
cherche une chaine dans la fenêtre active
Definition: mainwindow.cpp:2420
void consulter(QString f="", bool ajoute=true)
pour consulter les dictionnaires
Definition: mainwindow.cpp:1178
La classe MainWindow crée l'interface graphique d'Eulexis.
Definition: mainwindow.h:58
La classe EditLatin est dérivée de QTextEdit afin de pouvoir redéfinir l'action connectée au survol d...
Definition: mainwindow.h:34
int _histItem
Definition: mainwindow.h:159
QAction * actionNouveau
Definition: mainwindow.h:93
QAction * betaAct
Definition: mainwindow.h:117
QTextBrowser * _lemEdit
Definition: mainwindow.h:78
bool _changements
Definition: mainwindow.h:163
QRegExp _reApostr
Definition: mainwindow.h:67
void createSecond()
Création d'un EditLatin pour afficher le texte.
Definition: mainwindow.cpp:1642
void txt2csv()
ouvre un fichier txt et produit un fichier csv avec sa lemmatisaton.
Definition: mainwindow.cpp:1966
QMenu * menuFenetre
Definition: mainwindow.h:140
bool alerte(bool sauv=true)
Dialogue pour confirmer la fermeture.
Definition: mainwindow.cpp:2320
La classe Lemmat regroupe les fonctions nécessaires à la lemmatisation et à la consultation des dicti...
Definition: lemmatiseur.h:62
void dUndo()
annule les modifications faites pour le lemme en cours
Definition: mainwindow.cpp:2589
QPushButton * previousButton
Definition: mainwindow.h:206
QAction * yeux
Definition: mainwindow.h:119
void createW()
Prépare la fenêtre principale.
Definition: mainwindow.cpp:323
QString _rscrDir
Chemin complet pour le répertoire des ressources.
Definition: mainwindow.h:75
bool longs(QStringList sl)
évalue la longueur de chaque article d'un même dictionnaire.
Definition: mainwindow.cpp:2540
QAction * langAlld
Definition: mainwindow.h:125
QLabel * dTrAp
Definition: mainwindow.h:180
QLabel * dNum
Definition: mainwindow.h:177
EditLatin * _texte
Definition: mainwindow.h:151
QRadioButton * choixRemis
Definition: mainwindow.h:204
void recule()
recule à l'article précédent des dictionnaires
Definition: mainwindow.cpp:1118
bool event(QEvent *event)
Captation du survol de la souris pour afficher une bulle d'aide.
Definition: mainwindow.cpp:31
QAction * actComInd
Definition: mainwindow.h:114
int opCode
Definition: mainwindow.h:198
void dPrev()
revient au lemme considéré précédemment
Definition: mainwindow.cpp:3101