forked from Brewtarget/brewtarget
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBtTextEdit.cpp
59 lines (51 loc) · 2.75 KB
/
BtTextEdit.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
48
49
50
51
52
53
54
55
56
57
58
59
/*╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
* BtTextEdit.cpp is part of Brewtarget, and is copyright the following authors 2009-2022:
* • Brian Rower <[email protected]>
* • Matt Anderson <[email protected]>
* • Matt Young <[email protected]>
* • Mik Firestone <[email protected]>
* • Philip Greggory Lee <[email protected]>
*
* Brewtarget is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later
* version.
*
* Brewtarget is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
* details.
*
* You should have received a copy of the GNU General Public License along with this program. If not, see
* <http://www.gnu.org/licenses/>.
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌*/
#include "BtTextEdit.h"
#include <QDebug>
#include <QSettings>
BtTextEdit::BtTextEdit([[maybe_unused]] QWidget * parent) : wasModified{false} {
// We will see if this works...
connect(this, &BtTextEdit::textChanged, this, &BtTextEdit::setTextChanged);
return;
}
BtTextEdit::BtTextEdit(QString const & text,
[[maybe_unused]] QWidget * parent) : wasModified{false} {
setPlainText(text);
// We will see if this works...
connect(this, &BtTextEdit::textChanged, this, &BtTextEdit::setTextChanged);
return;
}
// I don't have faith in this. The concept is to call the super and then clear
// the modified flag. The intent is that this is only done via the code, not
// the user (e.g., loads and things)
void BtTextEdit::setPlainText(const QString & text) {
QPlainTextEdit::setPlainText(text);
wasModified = false;
return;
}
void BtTextEdit::focusOutEvent([[maybe_unused]] QFocusEvent * e) {
if (wasModified) {
wasModified = false;
emit textModified();
}
return;
}
bool BtTextEdit::isModified() { return wasModified; }
void BtTextEdit::setTextChanged() { wasModified = true; }