4#include <QtCore/qfileinfo.h>
5#include <QtCore/qstringlist.h>
7#include <QtNetwork/qhostaddress.h>
8#include <QtNetwork/qtcpserver.h>
9#include <QtNetwork/qtcpsocket.h>
18using namespace Qt::StringLiterals;
25 m_server =
new QTcpServer(
this);
26 if (m_server->listen(QHostAddress::LocalHost, 0)) {
27 connect(m_server, &QTcpServer::newConnection,
28 this, &QDesignerServer::handleNewConnection);
36 return m_server ? m_server->serverPort() : 0;
41 QTcpSocket *sSocket =
new QTcpSocket();
42 sSocket->connectToHost(QHostAddress::LocalHost, port);
43 if(sSocket->waitForConnected(3000))
45 for (
const QString &file : files) {
47 sSocket->write(fi.absoluteFilePath().toUtf8() +
'\n');
49 sSocket->waitForBytesWritten(3000);
57 while (m_socket->canReadLine()) {
58 QString file = QString::fromUtf8(m_socket->readLine());
75 if (m_socket ==
nullptr) {
76 m_socket = m_server->nextPendingConnection();
77 connect(m_socket, &QTcpSocket::readyRead,
78 this, &QDesignerServer::readFromClient);
79 connect(m_socket, &QTcpSocket::disconnected,
80 this, &QDesignerServer::socketClosed);
88 m_socket =
new QTcpSocket(
this);
89 m_socket->connectToHost(QHostAddress::LocalHost, port);
90 connect(m_socket, &QTcpSocket::readyRead,
91 this, &QDesignerClient::readFromSocket);
103 while (m_socket->canReadLine()) {
104 QString file = QString::fromUtf8(m_socket->readLine());
105 if (!file.isNull()) {
108 if (QFile::exists(file))
~QDesignerClient() override
quint16 serverPort() const
~QDesignerServer() override
Combined button and popup list for selecting options.