#include "accountspage.hpp" #include "application.hpp" #include "const.hpp" #include "controllers/accounts/accountcontroller.hpp" #include "controllers/accounts/accountmodel.hpp" #include "util/layoutcreator.hpp" #include "widgets/helper/editablemodelview.hpp" #include "widgets/logindialog.hpp" #include #include #include #include #include namespace chatterino { namespace widgets { namespace settingspages { AccountsPage::AccountsPage() : SettingsPage("Accounts", ":/images/accounts.svg") { auto *app = getApp(); util::LayoutCreator layoutCreator(this); auto layout = layoutCreator.emplace().withoutMargin(); helper::EditableModelView *view = *layout.emplace(app->accounts->createModel(nullptr)); view->setTitles({"Name"}); view->getTableView()->horizontalHeader()->setStretchLastSection(true); view->addButtonPressed.connect([] { static auto loginWidget = new LoginWidget(); loginWidget->show(); }); // auto buttons = layout.emplace(); // { // this->addButton = buttons->addButton("Add", QDialogButtonBox::YesRole); // this->removeButton = buttons->addButton("Remove", QDialogButtonBox::NoRole); // } // layout.emplace(this).assign(&this->accSwitchWidget); // ---- // QObject::connect(this->addButton, &QPushButton::clicked, []() { // static auto loginWidget = new LoginWidget(); // loginWidget->show(); // }); // QObject::connect(this->removeButton, &QPushButton::clicked, [this] { // auto selectedUser = this->accSwitchWidget->currentItem()->text(); // if (selectedUser == ANONYMOUS_USERNAME_LABEL) { // // Do nothing // return; // } // getApp()->accounts->Twitch.removeUser(selectedUser); // }); } } // namespace settingspages } // namespace widgets } // namespace chatterino