summary refs log tree commit diff
path: root/src/MainWindow.cc
diff options
context:
space:
mode:
authorKonstantinos Sideris <sideris.konstantin@gmail.com>2017-04-11 17:45:47 +0300
committerKonstantinos Sideris <sideris.konstantin@gmail.com>2017-04-11 17:45:47 +0300
commit6468faa39eda494d83310bec4a557d29bf037f8a (patch)
treec4a2632730c99500871fbc3a8f5d746585507089 /src/MainWindow.cc
parentMake the timer single shot (diff)
downloadnheko-6468faa39eda494d83310bec4a557d29bf037f8a.tar.xz
Use only a MatrixClient as a shared pointer
Diffstat (limited to 'src/MainWindow.cc')
-rw-r--r--src/MainWindow.cc43
1 files changed, 8 insertions, 35 deletions
diff --git a/src/MainWindow.cc b/src/MainWindow.cc

index 146c4954..d0d01bcb 100644 --- a/src/MainWindow.cc +++ b/src/MainWindow.cc
@@ -25,13 +25,15 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui_(new Ui::MainWindow) - , welcome_page_(new WelcomePage(parent)) - , login_page_(new LoginPage(parent)) - , register_page_(new RegisterPage(parent)) - , chat_page_(new ChatPage(parent)) - , matrix_client_(new MatrixClient("matrix.org", parent)) { ui_->setupUi(this); + client_ = QSharedPointer<MatrixClient>(new MatrixClient("matrix.org")); + + welcome_page_ = new WelcomePage(this); + + login_page_ = new LoginPage(client_, this); + register_page_ = new RegisterPage(client_, this); + chat_page_ = new ChatPage(client_, this); // Initialize sliding widget manager. sliding_stack_ = new SlidingStackWidget(this); @@ -46,39 +48,16 @@ MainWindow::MainWindow(QWidget *parent) connect(welcome_page_, SIGNAL(userRegister()), this, SLOT(showRegisterPage())); connect(login_page_, SIGNAL(backButtonClicked()), this, SLOT(showWelcomePage())); - connect(login_page_, - SIGNAL(userLogin(const QString &, const QString &, const QString &)), - this, - SLOT(matrixLogin(const QString &, const QString &, const QString &))); - connect(register_page_, SIGNAL(backButtonClicked()), this, SLOT(showWelcomePage())); - connect(register_page_, - SIGNAL(registerUser(const QString &, const QString &, const QString &)), - this, - SLOT(matrixRegister(const QString &, const QString &, const QString &))); connect(chat_page_, SIGNAL(close()), this, SLOT(showWelcomePage())); - connect(matrix_client_, - SIGNAL(registerError(const QString &)), - register_page_, - SLOT(registerError(const QString &))); - - connect(matrix_client_, SIGNAL(loginError(QString)), login_page_, SLOT(loginError(QString))); - connect(matrix_client_, + connect(client_.data(), SIGNAL(loginSuccess(QString, QString, QString)), this, SLOT(showChatPage(QString, QString, QString))); } -void MainWindow::matrixLogin(const QString &username, const QString &password, const QString &home_server) -{ - qDebug() << "Logging in..." << username; - - matrix_client_->setServer(home_server); - matrix_client_->login(username, password); -} - void MainWindow::showChatPage(QString userid, QString homeserver, QString token) { QSettings settings; @@ -93,12 +72,6 @@ void MainWindow::showChatPage(QString userid, QString homeserver, QString token) chat_page_->bootstrap(userid, homeserver, token); } -void MainWindow::matrixRegister(const QString &username, const QString &password, const QString &server) -{ - qDebug() << "Registering" << username << "at" << server; - matrix_client_->registerUser(username, password, server); -} - void MainWindow::showWelcomePage() { int index = sliding_stack_->getWidgetIndex(welcome_page_);