diff options
author | Joanna Hulboj <joanna.hulboj@isode.com> | 2017-02-24 09:24:36 (GMT) |
---|---|---|
committer | Kevin Smith <kevin.smith@isode.com> | 2017-03-03 14:41:29 (GMT) |
commit | ae0c4b8fe9a21f758f06461a52c3bb7a66be0c45 (patch) | |
tree | a8a475bcedeef913fd534aa241ffeb0e4d2bd761 | |
parent | 5fa6933f9cc3e6d0df8c6896871cbe6cc09a9492 (diff) | |
download | swift-ae0c4b8fe9a21f758f06461a52c3bb7a66be0c45.zip swift-ae0c4b8fe9a21f758f06461a52c3bb7a66be0c45.tar.bz2 |
Change Enter Room... QWidget to QDialog
Test-Information:
Tested under Linux i3 tiling windows manager.
Run Swift, from the menu choose Actions, Enter Room... Enter Room...
dialog is displayed as a floating window in a tiling manager.
Change-Id: I31dc4f8caa04fe137e89f2bcb12852cd0b709bab
-rw-r--r-- | Swift/QtUI/QtJoinMUCWindow.cpp | 6 | ||||
-rw-r--r-- | Swift/QtUI/QtJoinMUCWindow.h | 4 | ||||
-rw-r--r-- | Swift/QtUI/QtJoinMUCWindow.ui | 2 |
3 files changed, 7 insertions, 5 deletions
diff --git a/Swift/QtUI/QtJoinMUCWindow.cpp b/Swift/QtUI/QtJoinMUCWindow.cpp index 400d1bf..13de1c9 100644 --- a/Swift/QtUI/QtJoinMUCWindow.cpp +++ b/Swift/QtUI/QtJoinMUCWindow.cpp @@ -40,37 +40,37 @@ void QtJoinMUCWindow::handleJoin() { if (ui.room->text().isEmpty() || !ui.room->hasAcceptableInput()) { QToolTip::showText(ui.room->mapToGlobal(QPoint()), tr("Please enter a valid room address."), ui.room); return; } if (ui.nickName->text().isEmpty() || !ui.nickName->hasAcceptableInput()) { QToolTip::showText(ui.nickName->mapToGlobal(QPoint()), tr("Please enter a valid nickname."), ui.nickName); return; } lastSetNick = Q2PSTRING(ui.nickName->text()); std::string password = Q2PSTRING(ui.password->text()); JID room(Q2PSTRING(ui.room->text())); uiEventStream->send(std::make_shared<JoinMUCUIEvent>(room, password, lastSetNick, ui.joinAutomatically->isChecked(), !ui.instantRoom->isChecked())); hide(); } void QtJoinMUCWindow::handleSearch() { onSearchMUC(); } void QtJoinMUCWindow::setNick(const std::string& nick) { ui.nickName->setText(P2QSTRING(nick)); lastSetNick = nick; } void QtJoinMUCWindow::setMUC(const std::string& nick) { ui.room->setText(P2QSTRING(nick)); } void QtJoinMUCWindow::show() { - QWidget::show(); - QWidget::activateWindow(); - QWidget::raise(); + QDialog::show(); + QDialog::activateWindow(); + QDialog::raise(); ui.password->setText(""); } } diff --git a/Swift/QtUI/QtJoinMUCWindow.h b/Swift/QtUI/QtJoinMUCWindow.h index c2e8068..2fa1152 100644 --- a/Swift/QtUI/QtJoinMUCWindow.h +++ b/Swift/QtUI/QtJoinMUCWindow.h @@ -1,75 +1,77 @@ /* * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once #include <string> +#include <QDialog> #include <QValidator> #include <Swift/Controllers/UIInterfaces/JoinMUCWindow.h> #include <Swift/QtUI/QtSwiftUtil.h> #include <Swift/QtUI/ui_QtJoinMUCWindow.h> namespace Swift { class UIEventStream; class NickValidator : public QValidator { Q_OBJECT public: NickValidator(QObject* parent) : QValidator(parent) { } virtual QValidator::State validate(QString& input, int& /*pos*/) const { if (input.isEmpty()) { return QValidator::Intermediate; } JID test("alice", "wonderland.lit", Q2PSTRING(input)); return test.isValid() ? QValidator::Acceptable : QValidator::Invalid; } }; class RoomJIDValidator : public QValidator { Q_OBJECT public: RoomJIDValidator(QObject* parent) : QValidator(parent) { } virtual QValidator::State validate(QString& input, int& /*pos*/) const { if (input.isEmpty()) { return QValidator::Intermediate; } JID roomJID(Q2PSTRING(input)); if (roomJID.getNode().empty() || roomJID.getDomain().empty()) { return QValidator::Intermediate; } return (roomJID.getResource().empty() && !roomJID.getNode().empty() && !roomJID.getDomain().empty() && roomJID.isValid()) ? QValidator::Acceptable : QValidator::Invalid; } }; - class QtJoinMUCWindow : public QWidget, public JoinMUCWindow { + class QtJoinMUCWindow : public QDialog, public JoinMUCWindow { + Q_OBJECT public: QtJoinMUCWindow(UIEventStream* uiEventStream); virtual void setNick(const std::string& nick); virtual void setMUC(const std::string& nick); virtual void show(); private slots: void handleJoin(); void handleSearch(); private: Ui::QtJoinMUCWindow ui; std::string lastSetNick; UIEventStream* uiEventStream; }; } diff --git a/Swift/QtUI/QtJoinMUCWindow.ui b/Swift/QtUI/QtJoinMUCWindow.ui index f294f8c..24d6ab8 100644 --- a/Swift/QtUI/QtJoinMUCWindow.ui +++ b/Swift/QtUI/QtJoinMUCWindow.ui @@ -1,34 +1,34 @@ <?xml version="1.0" encoding="UTF-8"?> <ui version="4.0"> <class>QtJoinMUCWindow</class> - <widget class="QWidget" name="QtJoinMUCWindow"> + <widget class="QDialog" name="QtJoinMUCWindow"> <property name="geometry"> <rect> <x>0</x> <y>0</y> <width>410</width> <height>224</height> </rect> </property> <property name="sizePolicy"> <sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="windowTitle"> <string>Enter Room</string> </property> <layout class="QVBoxLayout" name="verticalLayout"> <item> <layout class="QGridLayout" name="gridLayout"> <item row="0" column="0"> <widget class="QLabel" name="label_4"> <property name="text"> <string>Room Address:</string> </property> </widget> </item> <item row="0" column="2"> <widget class="QToolButton" name="searchButton"> <property name="text"> |