#include "NicknamesPage.hpp" #include "controllers/nicknames/NicknamesModel.hpp" #include "singletons/Settings.hpp" #include "singletons/WindowManager.hpp" #include "util/LayoutCreator.hpp" #include "widgets/Window.hpp" #include "widgets/helper/EditableModelView.hpp" #include #include namespace chatterino { NicknamesPage::NicknamesPage() { LayoutCreator layoutCreator(this); auto layout = layoutCreator.setLayoutType(); layout.emplace( "Nicknames do not work with features such as search or user highlights." "\nWith those features you will still need to use the user's original " "name."); EditableModelView *view = layout .emplace( (new NicknamesModel(nullptr)) ->initialized(&getSettings()->nicknames)) .getElement(); view->setTitles({"Username", "Nickname", "Enable regex", "Case-sensitive"}); view->getTableView()->horizontalHeader()->setSectionResizeMode( QHeaderView::Fixed); view->getTableView()->horizontalHeader()->setSectionResizeMode( 0, QHeaderView::Stretch); view->getTableView()->horizontalHeader()->setSectionResizeMode( 1, QHeaderView::Stretch); view->addButtonPressed.connect([] { getSettings()->nicknames.append( Nickname{"Username", "Nickname", false, false}); }); QTimer::singleShot(1, [view] { view->getTableView()->resizeColumnsToContents(); view->getTableView()->setColumnWidth(0, 200); }); } } // namespace chatterino