QApplication less! (#1017)
This commit is contained in:
parent
b74281d8b5
commit
c745d0a1b7
@ -16,8 +16,8 @@ void message_handler(QtMsgType type, const QMessageLogContext &context, const QS
|
||||
original_message_handler(type, context, msg);
|
||||
}
|
||||
|
||||
AOApplication::AOApplication(int &argc, char **argv)
|
||||
: QApplication(argc, argv)
|
||||
AOApplication::AOApplication(QObject *parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
net_manager = new NetworkManager(this);
|
||||
discord = new AttorneyOnline::Discord();
|
||||
@ -26,9 +26,6 @@ AOApplication::AOApplication(int &argc, char **argv)
|
||||
|
||||
message_handler_context = this;
|
||||
original_message_handler = qInstallMessageHandler(message_handler);
|
||||
|
||||
setApplicationVersion(get_version_string());
|
||||
setApplicationDisplayName(tr("Attorney Online %1").arg(applicationVersion()));
|
||||
}
|
||||
|
||||
AOApplication::~AOApplication()
|
||||
|
@ -9,13 +9,13 @@
|
||||
|
||||
#include <bass.h>
|
||||
|
||||
#include <QApplication>
|
||||
#include <QColor>
|
||||
#include <QCryptographicHash>
|
||||
#include <QDebug>
|
||||
#include <QDir>
|
||||
#include <QElapsedTimer>
|
||||
#include <QFile>
|
||||
#include <QObject>
|
||||
#include <QRect>
|
||||
#include <QScreen>
|
||||
#include <QSettings>
|
||||
@ -48,12 +48,12 @@ inline uint qHash(const VPath &key, uint seed = qGlobalQHashSeed())
|
||||
return qHash(key.toQString(), seed);
|
||||
}
|
||||
|
||||
class AOApplication : public QApplication
|
||||
class AOApplication : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
AOApplication(int &argc, char **argv);
|
||||
AOApplication(QObject *parent = nullptr);
|
||||
~AOApplication();
|
||||
|
||||
NetworkManager *net_manager;
|
||||
|
@ -1182,7 +1182,7 @@ void Courtroom::set_fonts(QString p_char)
|
||||
QFont new_font = ao_app->default_font;
|
||||
int new_font_size = new_font.pointSize() * Options::getInstance().themeScalingFactor();
|
||||
new_font.setPointSize(new_font_size);
|
||||
ao_app->setFont(new_font);
|
||||
QApplication::setFont(new_font);
|
||||
|
||||
set_font(ui_vp_showname, "", "showname", p_char);
|
||||
set_font(ui_vp_message, "", "message", p_char);
|
||||
@ -3354,7 +3354,7 @@ void Courtroom::handle_callwords()
|
||||
// Play the call word sfx on the modcall_player sound container
|
||||
modcall_player->findAndPlaySfx(ao_app->get_court_sfx("word_call"));
|
||||
// Make the window flash
|
||||
ao_app->alert(this);
|
||||
QApplication::alert(this);
|
||||
// Break the loop so we don't spam sound effects
|
||||
break;
|
||||
}
|
||||
@ -4890,7 +4890,7 @@ void Courtroom::mod_called(QString p_ip)
|
||||
if (!ui_guard->isChecked())
|
||||
{
|
||||
modcall_player->findAndPlaySfx(ao_app->get_court_sfx("mod_call"));
|
||||
ao_app->alert(this);
|
||||
QApplication::alert(this);
|
||||
}
|
||||
}
|
||||
|
||||
@ -6600,7 +6600,7 @@ void Courtroom::truncate_label_text(QWidget *p_widget, QString p_identifier)
|
||||
return;
|
||||
}
|
||||
|
||||
int checkbox_width = AOApplication::style()->pixelMetric(QStyle::PM_IndicatorWidth) + AOApplication::style()->pixelMetric(QStyle::PM_CheckBoxLabelSpacing);
|
||||
int checkbox_width = QApplication::style()->pixelMetric(QStyle::PM_IndicatorWidth) + QApplication::style()->pixelMetric(QStyle::PM_CheckBoxLabelSpacing);
|
||||
|
||||
int label_theme_width = (p_label != nullptr ? design_ini_result.width : (design_ini_result.width - checkbox_width));
|
||||
int label_px_width = p_widget->fontMetrics().boundingRect(label_text_tr).width(); // pixel width of our translated text
|
||||
|
@ -95,7 +95,7 @@ void Lobby::reset_selection()
|
||||
|
||||
void Lobby::loadUI()
|
||||
{
|
||||
this->setWindowTitle(tr("Attorney Online %1").arg(ao_app->applicationVersion()));
|
||||
this->setWindowTitle(tr("Attorney Online %1").arg(QApplication::applicationVersion()));
|
||||
this->setWindowIcon(QIcon(":/logo.png"));
|
||||
this->setWindowFlags((this->windowFlags() | Qt::CustomizeWindowHint));
|
||||
|
||||
|
17
src/main.cpp
17
src/main.cpp
@ -19,7 +19,7 @@ int main(int argc, char *argv[])
|
||||
|
||||
qRegisterMetaType<AOPacket>();
|
||||
|
||||
AOApplication main_app(argc, argv);
|
||||
QApplication app(argc, argv);
|
||||
|
||||
#ifdef ANDROID
|
||||
if (QtAndroid::checkPermission("android.permission.READ_EXTERNAL_STORAGE") == QtAndroid::PermissionResult::Denied)
|
||||
@ -28,15 +28,19 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
#endif
|
||||
|
||||
AOApplication main_app;
|
||||
app.setApplicationVersion(AOApplication::get_version_string());
|
||||
app.setApplicationDisplayName(QObject::tr("Attorney Online %1").arg(app.applicationVersion()));
|
||||
|
||||
QResource::registerResource(main_app.get_asset("themes/" + Options::getInstance().theme() + ".rcc"));
|
||||
|
||||
QFont main_font = main_app.font();
|
||||
QFont main_font = app.font();
|
||||
main_app.default_font = main_font;
|
||||
|
||||
QFont new_font = main_font;
|
||||
int new_font_size = main_app.default_font.pointSize() * Options::getInstance().themeScalingFactor();
|
||||
new_font.setPointSize(new_font_size);
|
||||
main_app.setFont(new_font);
|
||||
app.setFont(new_font);
|
||||
|
||||
QFontDatabase fontDatabase;
|
||||
QDirIterator it(get_base_path() + "fonts", QDirIterator::Subdirectories);
|
||||
@ -67,16 +71,17 @@ int main(int argc, char *argv[])
|
||||
|
||||
QTranslator qtTranslator;
|
||||
qtTranslator.load("qt_" + p_language, QLibraryInfo::location(QLibraryInfo::TranslationsPath));
|
||||
main_app.installTranslator(&qtTranslator);
|
||||
app.installTranslator(&qtTranslator);
|
||||
|
||||
QTranslator appTranslator;
|
||||
qDebug() << ":/data/translations/ao_" + p_language;
|
||||
appTranslator.load("ao_" + p_language, ":/data/translations/");
|
||||
main_app.installTranslator(&appTranslator);
|
||||
app.installTranslator(&appTranslator);
|
||||
|
||||
main_app.construct_lobby();
|
||||
main_app.net_manager->get_server_list();
|
||||
main_app.net_manager->send_heartbeat();
|
||||
main_app.w_lobby->show();
|
||||
return main_app.exec();
|
||||
|
||||
return app.exec();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user