From b74281d8b59c86507a9929276d2b3963dde2e8ce Mon Sep 17 00:00:00 2001 From: Salanto <62221668+Salanto@users.noreply.github.com> Date: Wed, 10 Jul 2024 21:35:32 +0200 Subject: [PATCH 1/2] Set MultiGen to Release Mode (#1015) * Explicitly set build type to Release cause mutligens suck * Wrong line * Anguish --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 228a76f..e4589b4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -80,7 +80,7 @@ jobs: - name: Build run: | - cmake . + cmake . -D CMAKE_BUILD_TYPE=Release cmake --build . --config Release - name: Deploy Windows From c745d0a1b78732550ae790fee12bd23b71a4f25e Mon Sep 17 00:00:00 2001 From: Leifa <26681464+TrickyLeifa@users.noreply.github.com> Date: Thu, 11 Jul 2024 20:40:21 +0200 Subject: [PATCH 2/2] QApplication less! (#1017) --- src/aoapplication.cpp | 7 ++----- src/aoapplication.h | 6 +++--- src/courtroom.cpp | 8 ++++---- src/lobby.cpp | 2 +- src/main.cpp | 17 +++++++++++------ 5 files changed, 21 insertions(+), 19 deletions(-) diff --git a/src/aoapplication.cpp b/src/aoapplication.cpp index 7a8e4ea..0b73575 100644 --- a/src/aoapplication.cpp +++ b/src/aoapplication.cpp @@ -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() diff --git a/src/aoapplication.h b/src/aoapplication.h index 5d20d96..b5d7fb5 100644 --- a/src/aoapplication.h +++ b/src/aoapplication.h @@ -9,13 +9,13 @@ #include -#include #include #include #include #include #include #include +#include #include #include #include @@ -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; diff --git a/src/courtroom.cpp b/src/courtroom.cpp index 75f4557..7a43958 100644 --- a/src/courtroom.cpp +++ b/src/courtroom.cpp @@ -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 diff --git a/src/lobby.cpp b/src/lobby.cpp index 9918ca3..5fb0f50 100644 --- a/src/lobby.cpp +++ b/src/lobby.cpp @@ -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)); diff --git a/src/main.cpp b/src/main.cpp index 0cf0ad0..cb9e138 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -19,7 +19,7 @@ int main(int argc, char *argv[]) qRegisterMetaType(); - 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(); }