diff options
| author | Xavier Del Campo Romero <xavi.dcr@tutanota.com> | 2023-06-12 23:47:17 +0200 |
|---|---|---|
| committer | Xavier Del Campo Romero <xavi.dcr@tutanota.com> | 2023-06-29 14:09:46 +0200 |
| commit | 05b2584fa4d773f5a88ed3ce98f5dd8304e11c34 (patch) | |
| tree | f72e73c3259b8100e886f49f67ecc669b7667502 /accounts.cpp | |
| parent | 3b8fafc4122848219898245d52dabd669cacb4ba (diff) | |
| download | xxcc-05b2584fa4d773f5a88ed3ce98f5dd8304e11c34.tar.gz | |
First commit
Diffstat (limited to 'accounts.cpp')
| -rw-r--r-- | accounts.cpp | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/accounts.cpp b/accounts.cpp new file mode 100644 index 0000000..b0d2f97 --- /dev/null +++ b/accounts.cpp @@ -0,0 +1,39 @@ +#include "accounts.h" +#include "account.h" +#include "login.h" +#include <utility> +#include <QListWidgetItem> +#include <QScroller> + +Accounts::Accounts(const QList<Client *> &accounts, + QWidget *const parent) : + QDialog(parent) +{ + ui.setupUi(this); + QScroller::grabGesture(ui.accounts_list, QScroller::TouchGesture); + + for (const auto &a : accounts) + add(a); + + connect(ui.add, &QPushButton::released, this, + [this] + { + Login l(this); + + l.connect(&l, &Login::auth_success, this, + [this] (Client *c) + { + add(c); + Q_EMIT new_account(c); + }); + + l.exec(); + }); + + showMaximized(); +} + +void Accounts::add(Client *c) +{ + new Account(c, ui.accounts_list, this); +} |
