-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathmain.cpp
More file actions
39 lines (31 loc) · 1.11 KB
/
Copy pathmain.cpp
File metadata and controls
39 lines (31 loc) · 1.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <QApplication>
#include "eko.h"
#include "single_application_shared.h"
int main (int argc, char *argv[])
{
Q_INIT_RESOURCE (eko);
CSingleApplicationShared app (argc, argv, "eko_unique_key");
qApp->setApplicationName ("EKO");
// Если уже есть запущенный экземпляр - отправляем ему аргументы
if (app.alreadyExists())
{
QStringList args = app.arguments();
if (args.size() > 1)
{
for (int i = 1; i < args.size(); i++)
{
app.sendMessage(args.at(i));
}
}
return 0; // Завершаем этот экземпляр
}
// Это первый (master) экземпляр
CEKO mw;
// Подключаем сигнал для получения аргументов от других экземпляров
QObject::connect(&app, &CSingleApplicationShared::messageAvailable,
&mw, &CEKO::slot_open_files_from_args);
// Обрабатываем аргументы командной строки для первого запуска
mw.handle_args();
mw.show();
return app.exec();
}