1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00
qTox/src/widget/androidgui.cpp

125 lines
3.1 KiB
C++
Raw Normal View History

/*
Copyright © 2015 by The qTox Project
This file is part of qTox, a Qt-based graphical interface for Tox.
qTox is libre software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
qTox is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with qTox. If not, see <http://www.gnu.org/licenses/>.
*/
#include "androidgui.h"
#include "ui_android.h"
#include "friendlistwidget.h"
#include "maskablepixmapwidget.h"
#include "src/core/core.h"
#include "src/friend.h"
#include "src/friendlist.h"
#include "src/group.h"
#include "src/grouplist.h"
2015-06-06 07:44:47 +08:00
#include "src/persistence/settings.h"
#include "src/misc/style.h"
#include "src/nexus.h"
#include "src/widget/friendwidget.h"
#include "src/widget/groupwidget.h"
2015-02-23 02:08:18 +08:00
#include <QDebug>
#include <QKeyEvent>
#include <QLabel>
#include <QMenu>
2015-02-23 06:32:14 +08:00
#include <QFontDatabase>
#include <QFont>
AndroidGUI::AndroidGUI(QWidget *parent) :
QWidget(parent),
ui{new Ui::Android}
{
ui->setupUi(this);
2015-02-23 06:32:14 +08:00
QFontDatabase::addApplicationFont(":/res/android/Roboto-Bold.ttf");
QFont font("Roboto1200310", 24);
qDebug() << "Font: "<<font.family();
ui->headTitle->setFont(font);
2015-02-23 06:32:14 +08:00
Q_INIT_RESOURCE(android);
}
AndroidGUI::~AndroidGUI()
{
2015-02-23 06:32:14 +08:00
}
void AndroidGUI::reloadTheme()
{
2015-02-23 06:32:14 +08:00
}
void AndroidGUI::onSelfAvatarLoaded(const QPixmap& pic)
{
2015-02-23 06:32:14 +08:00
}
void AndroidGUI::onConnected()
{
if (beforeDisconnect == Status::Offline)
emit statusSet(Status::Online);
else
emit statusSet(beforeDisconnect);
}
void AndroidGUI::onDisconnected()
{
emit statusSet(Status::Offline);
}
void AndroidGUI::onUsernameChanged(const QString& newUsername, const QString& oldUsername)
{
setUsername(oldUsername); // restore old username until Core tells us to set it
Nexus::getCore()->setUsername(newUsername);
}
void AndroidGUI::setUsername(const QString& username)
{
QString sanename = username;
sanename.remove(QRegExp("[\\t\\n\\v\\f\\r\\x0000]"));
nameMention = QRegExp("\\b" + QRegExp::escape(username) + "\\b", Qt::CaseInsensitive);
sanitizedNameMention = QRegExp("\\b" + QRegExp::escape(sanename) + "\\b", Qt::CaseInsensitive);
}
void AndroidGUI::onStatusMessageChanged(const QString& newStatusMessage, const QString& oldStatusMessage)
{
Nexus::getCore()->setStatusMessage(newStatusMessage);
}
void AndroidGUI::setStatusMessage(const QString &statusMessage)
{
2015-02-23 06:32:14 +08:00
}
void AndroidGUI::onStatusSet(Status status)
{
2015-02-23 06:32:14 +08:00
}
2015-02-23 02:08:18 +08:00
void AndroidGUI::keyPressEvent(QKeyEvent* event)
{
if (event->key() == Qt::Key_Back)
{
qDebug() << "Back key pressed, quitting";
2015-02-23 02:08:18 +08:00
qApp->exit(0);
}
else if (event->key() == Qt::Key_Menu)
{
qDebug() << "Menu key pressed";
2015-02-23 02:08:18 +08:00
}
}