Add highlighting of all messages from a certain user (#564)

* Rework to use controllers

* Rework to use controllers

* Add doHighlight

* Cherry pick?

* Fixes per PR

* Remove file
This commit is contained in:
DatGuy1
2018-07-05 16:58:20 +03:00
committed by fourtf
parent eb69cbf5f5
commit 9c7c99928f
7 changed files with 135 additions and 0 deletions
@@ -4,6 +4,7 @@
#include "controllers/highlights/HighlightBlacklistModel.hpp"
#include "controllers/highlights/HighlightController.hpp"
#include "controllers/highlights/HighlightModel.hpp"
#include "controllers/highlights/UserHighlightModel.hpp"
#include "debug/Log.hpp"
#include "singletons/Settings.hpp"
#include "util/LayoutCreator.hpp"
@@ -88,6 +89,29 @@ HighlightingPage::HighlightingPage()
HighlightBlacklistUser{"blacklisted user", false});
});
}
auto pingUsers = tabs.appendTab(new QVBoxLayout, "Highlight on message");
{
EditableModelView *view =
pingUsers.emplace<EditableModelView>(app->highlights->createUserModel(nullptr))
.getElement();
view->setTitles({"Username", "Flash taskbar", "Play sound", "Regex"});
view->getTableView()->horizontalHeader()->setSectionResizeMode(QHeaderView::Fixed);
view->getTableView()->horizontalHeader()->setSectionResizeMode(
0, QHeaderView::Stretch);
// fourtf: make class extrend BaseWidget and add this to dpiChanged
QTimer::singleShot(1, [view] {
view->getTableView()->resizeColumnsToContents();
view->getTableView()->setColumnWidth(0, 200);
});
view->addButtonPressed.connect([] {
getApp()->highlights->highlightedUsers.appendItem(
HighlightPhrase{"highlighted user", true, false, false});
});
}
}
// MISC