Nous avons oublier de faire une QAction pour créer un nouveau fichier, nous allons donc remédier à ce petit oubli.
On rajoute l'action dans le fichier TextEditor.h :
1
2
3
4
5
|
QAction* p_actionQuitter;
QAction* p_actionNouveau; QAction* p_actionOuvrir;
QAction* p_actionEnregistrer;
QAction* p_actionEnregistrerSous;
|
Ensuite on ajoute (toujours dans le fichier TextEditor.h, un nouveau slot :
1
2
3
4
5
|
private slots:
void nouveau(); void ouvrir();
void enregistrer();
void enregistrerSous();
|
On écrit le nouveau slot dans le fichier TextEditor.cpp :
1
2
3
4
5
6
7
|
void TextEditor::nouveau(){
if(p_lastFileOpen != ""){
saveFile(p_lastFileOpen);
}
p_textEditor->setText("");
p_lastFileOpen = "";
}
|
On alloue la QAction et on la connecte à son slot :
1
2
3
|
p_actionNouveau = new QAction("Nouveau", this);
p_actionNouveau->setShortcut(tr("Ctrl+N"));
connect(p_actionNouveau, SIGNAL(triggered()), this, SLOT(nouveau()));
|
Enfin on ajoute la QAction dans le menu fichier :
1
2
3
4
5
6
7
8
9
|
void TextEditor::initialisationMenuTextEditor(){
QMenu *menuFichier = menuBar()->addMenu("Fichier");
menuFichier->addAction(p_actionNouveau);
menuFichier->addAction(p_actionOuvrir);
menuFichier->addAction(p_actionEnregistrer);
menuFichier->addAction(p_actionEnregistrerSous);
menuFichier->addSeparator();
menuFichier->addAction(p_actionQuitter);
}
|
Voilà, notre oubli est réparé.
|