forked from felixmt/LO21
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ArticleEditeur.cpp
47 lines (38 loc) · 1.41 KB
/
ArticleEditeur.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include "ArticleEditeur.h"
ArticleEditeur::ArticleEditeur(Note* a, QWidget* parent) : NotesEditeur(a) {
article = dynamic_cast<Article*>(a);
setWindowState(Qt::WindowMaximized);
text = new QTextEdit;
text->setText(article->getText());
layout->addWidget(title);
layout->addWidget(text);
layout->addLayout(buttonLayout);
title->setText(a->getTitle());
setLayout(layout);
QObject::connect(save, SIGNAL(clicked()), this, SLOT(saveNote()));
QObject::connect(title, SIGNAL(textEdited(QString)), this, SLOT(updateNote()));
QObject::connect(text, SIGNAL(textChanged()), this, SLOT(updateNote()));
QObject::connect(text, SIGNAL(textChanged()), this, SLOT(activerSave()));
QObject::connect(title, SIGNAL(textEdited(QString)), this, SLOT(activerSave(QString)));
save->setEnabled(false);
}
void ArticleEditeur::saveNote() {
article->setTitle(title->text());
article->setText(text->toPlainText());
NotesManager::getInstance().saveNote(*article);
QMessageBox::information(this, "Sauvegarde", "Votre article a bien été sauvé");
save->setEnabled(false);
saved=true;
}
void ArticleEditeur::updateNote() {
article->setTitle(title->text());
article->setText(text->toPlainText());
activerSave();
}
void ArticleEditeur::activerSave(QString str) {
save->setEnabled(true);
saved=false;
}
Article* ArticleEditeur::getNote() const {
return article;
}