Files
frelay/Gui/main.cpp

56 lines
1.3 KiB
C++
Raw Normal View History

2025-06-17 11:48:13 +08:00
#include <QApplication>
2025-06-20 10:33:03 +08:00
#include <QDir>
2025-06-15 14:31:54 +08:00
#include <QFile>
2025-06-21 12:08:01 +08:00
#include <SingleApplication>
2025-06-15 14:31:54 +08:00
#include "frelayGUI.h"
2025-07-05 23:26:12 +08:00
#ifndef NO_CRASHELPER
2025-06-20 10:33:03 +08:00
#include <crashelper.h>
#endif
2025-06-15 14:31:54 +08:00
int main(int argc, char* argv[])
{
2025-07-05 23:26:12 +08:00
#ifndef NO_CRASHELPER
2025-06-20 10:33:03 +08:00
auto configDir = Util::GetCurConfigPath("frelay");
#ifdef _WIN32
backward::SetDumpFileSavePath(configDir + "/dumpfile");
backward::SetDumpLogSavePath(configDir + "/dumplog");
#else
backward::SetDumpLogSavePath(configDir + QDir::separator() + "dumplog");
#endif
CRASHELPER_MARK_ENTRY();
2025-06-20 10:33:03 +08:00
#endif
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
#endif
2025-07-04 21:44:52 +08:00
SingleApplication a(argc, argv);
2025-06-15 14:31:54 +08:00
#ifdef _WIN32
QFont font("Microsoft YaHei", 9);
a.setFont(font);
//a.setStyle("fusion");
2025-06-21 12:08:01 +08:00
a.setStyle("windows");
2025-06-15 14:31:54 +08:00
#endif
2025-06-21 12:08:01 +08:00
qInstallMessageHandler(frelayGUI::ControlMsgHander);
qRegisterMetaType<QSharedPointer<FrameBuffer>>("QSharedPointer<FrameBuffer>");
qRegisterMetaType<InfoClientVec>("InfoClientVec");
qRegisterMetaType<DirFileInfoVec>("DirFileInfoVec");
2025-06-25 16:07:18 +08:00
qRegisterMetaType<TransTask>("TransTask");
2025-06-21 12:08:01 +08:00
2025-06-15 14:31:54 +08:00
frelayGUI w;
2025-06-21 12:08:01 +08:00
QObject::connect(&a, &SingleApplication::instanceStarted, &w, [&w]() {
w.showNormal();
w.raise();
w.activateWindow();
});
2025-06-15 14:31:54 +08:00
w.show();
return a.exec();
}