syncthingtray/tray/application/singleinstance.h

34 lines
664 B
C
Raw Normal View History

#ifndef SINGLEINSTANCE_H
#define SINGLEINSTANCE_H
#include <QObject>
QT_FORWARD_DECLARE_CLASS(QLocalServer)
namespace Data {
struct SyncthingDir;
}
namespace QtGui {
2017-05-01 03:34:43 +02:00
class SingleInstance : public QObject {
Q_OBJECT
public:
SingleInstance(int argc, const char *const *argv, bool newInstance = false, QObject *parent = nullptr);
Q_SIGNALS:
void newInstance(int argc, const char *const *argv);
private Q_SLOTS:
void handleNewConnection();
void readArgs();
private:
void passArgsToRunningInstance(int argc, const char *const *argv, const QString &appId);
QLocalServer *m_server;
};
} // namespace QtGui
#endif // SINGLEINSTANCE_H