summaryrefslogtreecommitdiff
path: root/src/modinfodialogtab.cpp
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2019-06-23 03:03:41 -0400
committerisanae <14251494+isanae@users.noreply.github.com>2019-07-02 10:10:18 -0400
commitcbdc4cc3284f13477bfbf292d15c4a5742627091 (patch)
tree7f50bb71db03fed7a57df70bc217a3ffd63d597a /src/modinfodialogtab.cpp
parent8d1c121f648f2f6a8e0a5e2ad76cd245e318290d (diff)
split notes tab
added new HTMLEditor that triggers an editingFinished() on focus our, used by notes tab
Diffstat (limited to 'src/modinfodialogtab.cpp')
-rw-r--r--src/modinfodialogtab.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/modinfodialogtab.cpp b/src/modinfodialogtab.cpp
index ae0de5e8..b59f4dcc 100644
--- a/src/modinfodialogtab.cpp
+++ b/src/modinfodialogtab.cpp
@@ -1,4 +1,6 @@
#include "modinfodialogtab.h"
+#include "ui_modinfodialog.h"
+#include "texteditor.h"
ModInfoDialogTab::ModInfoDialogTab(
OrganizerCore& oc, PluginContainer& plugin,
@@ -73,3 +75,40 @@ void ModInfoDialogTab::emitModOpen(QString name)
{
emit modOpen(name);
}
+
+
+NotesTab::NotesTab(
+ OrganizerCore& oc, PluginContainer& plugin,
+ QWidget* parent, Ui::ModInfoDialog* ui)
+ : ModInfoDialogTab(oc, plugin, parent, ui)
+{
+ connect(ui->commentsEdit, &QLineEdit::editingFinished, [&]{ onComments(); });
+ connect(ui->notesEdit, &HTMLEditor::editingFinished, [&]{ onNotes(); });
+}
+
+void NotesTab::clear()
+{
+ ui->commentsEdit->clear();
+ ui->notesEdit->clear();
+}
+
+void NotesTab::update()
+{
+ ui->commentsEdit->setText(mod()->comments());
+ ui->notesEdit->setText(mod()->notes());
+}
+
+void NotesTab::onComments()
+{
+ mod()->setComments(ui->commentsEdit->text());
+}
+
+void NotesTab::onNotes()
+{
+ // Avoid saving html stub if notes field is empty.
+ if (ui->notesEdit->toPlainText().isEmpty()) {
+ mod()->setNotes({});
+ } else {
+ mod()->setNotes(ui->notesEdit->toHtml());
+ }
+}