diff options
| -rw-r--r-- | src/loglist.cpp | 15 | ||||
| -rw-r--r-- | src/loglist.h | 4 |
2 files changed, 18 insertions, 1 deletions
diff --git a/src/loglist.cpp b/src/loglist.cpp index 26aea682..01cbf6ce 100644 --- a/src/loglist.cpp +++ b/src/loglist.cpp @@ -45,6 +45,13 @@ void LogModel::add(MOBase::log::Entry e) emit entryAdded(std::move(e));
}
+void LogModel::clear()
+{
+ beginResetModel();
+ m_entries.clear();
+ endResetModel();
+}
+
const std::deque<MOBase::log::Entry>& LogModel::entries() const
{
return m_entries;
@@ -199,12 +206,18 @@ void LogList::copyToClipboard() QApplication::clipboard()->setText(QString::fromStdString(s));
}
+void LogList::clear()
+{
+ static_cast<LogModel*>(model())->clear();
+}
+
QMenu* LogList::createMenu(QWidget* parent)
{
auto* menu = new QMenu(parent);
- menu->addAction(tr("Copy& Log"), [&]{ copyToClipboard(); });
+ menu->addAction(tr("&Copy"), [&]{ copyToClipboard(); });
menu->addSeparator();
+ menu->addAction(tr("C&lear"), [&]{ clear(); });
auto* levels = new QMenu(tr("&Level"));
menu->addMenu(levels);
diff --git a/src/loglist.h b/src/loglist.h index ae827ca7..0b25dfd1 100644 --- a/src/loglist.h +++ b/src/loglist.h @@ -34,6 +34,8 @@ public: static LogModel& instance();
void add(MOBase::log::Entry e);
+ void clear();
+
const std::deque<MOBase::log::Entry>& entries() const;
protected:
@@ -65,6 +67,8 @@ public: void setCore(OrganizerCore& core);
void copyToClipboard();
+ void clear();
+
QMenu* createMenu(QWidget* parent=nullptr);
private:
|
