Deskflow 1.26.0.207
Keyboard and mouse sharing utility
Loading...
Searching...
No Matches
NetworkProtocol.h
Go to the documentation of this file.
1/*
2 * Deskflow -- mouse and keyboard sharing utility
3 * SPDX-FileCopyrightText: (C) 2025 - 2026 Deskflow Developers
4 * SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
5 */
6
7#pragma once
8#include <QObject>
9#include <QString>
10
11inline static const auto kSynergyProtocolOption = "synergy";
12inline static const auto kBarrierProtocolOption = "barrier";
13
21
22static QString networkProtocolToOption(const NetworkProtocol proto)
23{
24 switch (proto) {
29 default:
30 return {};
31 }
32}
33
34static QString networkProtocolToName(const NetworkProtocol proto)
35{
36 switch (proto) {
38 return QStringLiteral("Synergy");
40 return QStringLiteral("Barrier");
41 default:
42 return {};
43 }
44}
45
46static NetworkProtocol networkProtocolFromString(const QString &proto)
47{
48 using enum NetworkProtocol;
49 if (proto.compare(kBarrierProtocolOption, Qt::CaseInsensitive) == 0)
50 return Barrier;
51 if (proto.compare(kSynergyProtocolOption, Qt::CaseInsensitive) == 0)
52 return Synergy;
53 return Unknown;
54}
static QString networkProtocolToName(const NetworkProtocol proto)
Definition NetworkProtocol.h:34
static QString networkProtocolToOption(const NetworkProtocol proto)
Definition NetworkProtocol.h:22
NetworkProtocol
Definition NetworkProtocol.h:15
@ Barrier
Definition NetworkProtocol.h:18
@ Unknown
Definition NetworkProtocol.h:16
@ Synergy
Definition NetworkProtocol.h:17
static const auto kSynergyProtocolOption
Definition NetworkProtocol.h:11
Q_DECLARE_METATYPE(NetworkProtocol)
static NetworkProtocol networkProtocolFromString(const QString &proto)
Definition NetworkProtocol.h:46
static const auto kBarrierProtocolOption
Definition NetworkProtocol.h:12