mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJClient.git
synced 2026-03-28 05:25:39 +03:00
fear: add copy version
This commit is contained in:
@@ -20,7 +20,7 @@ void UpdateController::calculateCommonHash()
|
|||||||
appDataList = calculateHash(applicationFolderPath,"StreamingAssets");
|
appDataList = calculateHash(applicationFolderPath,"StreamingAssets");
|
||||||
calculateStreamingHash();
|
calculateStreamingHash();
|
||||||
appDataList.append(streamingDataList);
|
appDataList.append(streamingDataList);
|
||||||
dataParser->createFileDataList(appDataList,QDir::currentPath() + hashFilename);
|
dataParser->createFileDataList(appDataList,fullStaticDataFolderName + hashFilename);
|
||||||
qDebug() << "UpdateController threadID " << QThread::currentThreadId();
|
qDebug() << "UpdateController threadID " << QThread::currentThreadId();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -29,7 +29,7 @@ void UpdateController::calculateStreamingHash()
|
|||||||
streamingDataList.clear();
|
streamingDataList.clear();
|
||||||
streamingDataList = calculateHash(QDir::currentPath() + streamingAssetsPath,"");
|
streamingDataList = calculateHash(QDir::currentPath() + streamingAssetsPath,"");
|
||||||
std::sort(streamingDataList.begin(),streamingDataList.end());
|
std::sort(streamingDataList.begin(),streamingDataList.end());
|
||||||
dataParser->createFileDataList(streamingDataList,QDir::currentPath() + streamingHashFilename);
|
dataParser->createFileDataList(streamingDataList,streamingHashFilename);
|
||||||
}
|
}
|
||||||
|
|
||||||
void UpdateController::setServerVersion(StreamingVersionData *version)
|
void UpdateController::setServerVersion(StreamingVersionData *version)
|
||||||
|
|||||||
@@ -8,8 +8,8 @@
|
|||||||
DataParser::DataParser(QObject *parent) :
|
DataParser::DataParser(QObject *parent) :
|
||||||
QObject(parent)
|
QObject(parent)
|
||||||
{
|
{
|
||||||
if(!QDir(staticDataFolderName).exists()){
|
if(!QDir(fullStaticDataFolderName).exists()){
|
||||||
QDir().mkdir(staticDataFolderName);
|
QDir().mkdir(fullStaticDataFolderName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -167,7 +167,7 @@ void DataParser::addRunData(QList<int> displays)
|
|||||||
ServerSettings *DataParser::getServerSettings()
|
ServerSettings *DataParser::getServerSettings()
|
||||||
{
|
{
|
||||||
ServerSettings *settings = new ServerSettings;
|
ServerSettings *settings = new ServerSettings;
|
||||||
QFile file(QDir::currentPath() + settingsName);
|
QFile file(settingsName);
|
||||||
file.open(QIODevice::ReadOnly);
|
file.open(QIODevice::ReadOnly);
|
||||||
QXmlStreamReader xmlReader(&file);
|
QXmlStreamReader xmlReader(&file);
|
||||||
|
|
||||||
|
|||||||
@@ -21,13 +21,13 @@ void HashComparer::CompareDeltas()
|
|||||||
QList<FileData> *localStreamingHash = new QList<FileData>;
|
QList<FileData> *localStreamingHash = new QList<FileData>;
|
||||||
QList<FileData> *files = new QList<FileData>;
|
QList<FileData> *files = new QList<FileData>;
|
||||||
|
|
||||||
QFile file(QDir::currentPath() + serverHash);
|
QFile file(serverHash);
|
||||||
file.open(QIODevice::ReadOnly | QIODevice::Text);
|
file.open(QIODevice::ReadOnly | QIODevice::Text);
|
||||||
|
|
||||||
serverStreamingHash = dataParser->xmlFileDataParse(file.readAll(),"StreamingAssets");
|
serverStreamingHash = dataParser->xmlFileDataParse(file.readAll(),"StreamingAssets");
|
||||||
file.close();
|
file.close();
|
||||||
|
|
||||||
QFile file2(QDir::currentPath() + streamingHashFilename);
|
QFile file2(streamingHashFilename);
|
||||||
file2.open(QIODevice::ReadOnly | QIODevice::Text);
|
file2.open(QIODevice::ReadOnly | QIODevice::Text);
|
||||||
|
|
||||||
localStreamingHash = dataParser->xmlFileDataParse(file2.readAll(),"StreamingAssets");
|
localStreamingHash = dataParser->xmlFileDataParse(file2.readAll(),"StreamingAssets");
|
||||||
|
|||||||
@@ -149,13 +149,13 @@ void SendSystem::sendChangeVersion(StreamingVersionData* streamingVersion)
|
|||||||
socket->waitForReadyRead(100);
|
socket->waitForReadyRead(100);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SendSystem::sendCopyVersion(StreamingVersionData *streamingVersion)
|
void SendSystem::sendCopyVersion(QString streamingVersion)
|
||||||
{
|
{
|
||||||
QDataStream stream(socket);
|
QDataStream stream(socket);
|
||||||
stream.setVersion(QDataStream::Qt_DefaultCompiledVersion);
|
stream.setVersion(QDataStream::Qt_DefaultCompiledVersion);
|
||||||
stream << PacketType::COPY_VERSION;
|
stream << PacketType::COPY_VERSION;
|
||||||
|
|
||||||
stream << streamingVersion->getViewName();
|
stream << streamingVersion;
|
||||||
}
|
}
|
||||||
|
|
||||||
SendSystem::~SendSystem()
|
SendSystem::~SendSystem()
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ public:
|
|||||||
~SendSystem();
|
~SendSystem();
|
||||||
|
|
||||||
void sendChangeVersion(StreamingVersionData *streamingVersion);
|
void sendChangeVersion(StreamingVersionData *streamingVersion);
|
||||||
void sendCopyVersion(StreamingVersionData* streamingVersion);
|
void sendCopyVersion(QString versionName);
|
||||||
signals:
|
signals:
|
||||||
void sigSend();
|
void sigSend();
|
||||||
QByteArray sigGetXmlAnswer(QString);
|
QByteArray sigGetXmlAnswer(QString);
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ void TCPClient::slotSendCommand(QString command)
|
|||||||
stream << command;
|
stream << command;
|
||||||
socket->waitForBytesWritten();
|
socket->waitForBytesWritten();
|
||||||
|
|
||||||
sendSystem->sendFileBlock("/" + hashFilename);
|
sendSystem->sendFileBlock(staticDataFolderName + hashFilename);
|
||||||
emit sigSendDebugLog(Tools::getTime() + " Local checkFile sended");
|
emit sigSendDebugLog(Tools::getTime() + " Local checkFile sended");
|
||||||
|
|
||||||
socket->waitForReadyRead(1000);
|
socket->waitForReadyRead(1000);
|
||||||
|
|||||||
16
Core/tools.h
16
Core/tools.h
@@ -6,20 +6,22 @@
|
|||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QTime>
|
#include <QTime>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
|
#include <QDir>
|
||||||
|
|
||||||
#define TCP_READ_TIMEOUT 2000
|
#define TCP_READ_TIMEOUT 2000
|
||||||
|
|
||||||
static QString applicationEXEName = "RRJ.exe";
|
static QString applicationEXEName = "RRJ.exe";
|
||||||
static QString applicationFolderName = "/Application";
|
static QString applicationFolderName = "/Application";
|
||||||
static QString staticDataFolderName = "/StaticData";
|
static QString staticDataFolderName = "/StaticData";
|
||||||
|
static QString fullStaticDataFolderName = QDir::currentPath() + staticDataFolderName;
|
||||||
static QString streamingAssetsPath = "/Application/RRJLoader/RRJ_Data/StreamingAssets";
|
static QString streamingAssetsPath = "/Application/RRJLoader/RRJ_Data/StreamingAssets";
|
||||||
static QString hashFilename = staticDataFolderName + "/clientHash.xml";
|
static QString hashFilename = "/clientHash.xml";
|
||||||
static QString settingsName = staticDataFolderName + "/settings.xml";
|
static QString settingsName = fullStaticDataFolderName + "/settings.xml";
|
||||||
static QString tempName = staticDataFolderName + "/temp.xml";
|
static QString tempName = fullStaticDataFolderName + "/temp.xml";
|
||||||
static QString authTempName = staticDataFolderName + "/authData.xml";
|
static QString authTempName = fullStaticDataFolderName + "/authData.xml";
|
||||||
static QString displayTemp = staticDataFolderName + "/displayData.xml";
|
static QString displayTemp = fullStaticDataFolderName + "/displayData.xml";
|
||||||
static QString streamingHashFilename = staticDataFolderName + "/streamingHash.xml";
|
static QString streamingHashFilename = fullStaticDataFolderName + "/streamingHash.xml";
|
||||||
static QString serverHash = staticDataFolderName + "/serverHash.xml";
|
static QString serverHash = fullStaticDataFolderName + "/serverHash.xml";
|
||||||
|
|
||||||
static QString cmd_CheckVersionList = "CHECKVERSIONLIST";
|
static QString cmd_CheckVersionList = "CHECKVERSIONLIST";
|
||||||
static QString cmd_GetServerHash = "GETSERVERDATALIST";
|
static QString cmd_GetServerHash = "GETSERVERDATALIST";
|
||||||
|
|||||||
496
Makefile.Debug
496
Makefile.Debug
File diff suppressed because one or more lines are too long
496
Makefile.Release
496
Makefile.Release
File diff suppressed because one or more lines are too long
@@ -32,6 +32,7 @@ SOURCES += \
|
|||||||
main.cpp \
|
main.cpp \
|
||||||
mainwindow.cpp \
|
mainwindow.cpp \
|
||||||
mywinheader.cpp \
|
mywinheader.cpp \
|
||||||
|
newversionwidget.cpp \
|
||||||
updatenotifywidget.cpp \
|
updatenotifywidget.cpp \
|
||||||
updatewidget.cpp \
|
updatewidget.cpp \
|
||||||
versionselectwidget.cpp
|
versionselectwidget.cpp
|
||||||
@@ -54,6 +55,7 @@ HEADERS += \
|
|||||||
instructorbuttongroupwidget.h \
|
instructorbuttongroupwidget.h \
|
||||||
mainwindow.h \
|
mainwindow.h \
|
||||||
mywinheader.h \
|
mywinheader.h \
|
||||||
|
newversionwidget.h \
|
||||||
updatenotifywidget.h \
|
updatenotifywidget.h \
|
||||||
updatewidget.h \
|
updatewidget.h \
|
||||||
versionselectwidget.h
|
versionselectwidget.h
|
||||||
@@ -63,6 +65,7 @@ FORMS += \
|
|||||||
entrywidget.ui \
|
entrywidget.ui \
|
||||||
instructorbuttongroupwidget.ui \
|
instructorbuttongroupwidget.ui \
|
||||||
mainwindow.ui \
|
mainwindow.ui \
|
||||||
|
newversionwidget.ui \
|
||||||
updatenotifywidget.ui \
|
updatenotifywidget.ui \
|
||||||
updatewidget.ui \
|
updatewidget.ui \
|
||||||
versionselectwidget.ui
|
versionselectwidget.ui
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE QtCreatorProject>
|
<!DOCTYPE QtCreatorProject>
|
||||||
<!-- Written by QtCreator 4.11.1, 2024-12-18T18:07:59. -->
|
<!-- Written by QtCreator 4.11.1, 2024-12-19T17:54:56. -->
|
||||||
<qtcreator>
|
<qtcreator>
|
||||||
<data>
|
<data>
|
||||||
<variable>EnvironmentId</variable>
|
<variable>EnvironmentId</variable>
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<AuthData Login="I1" Password="1111" InstructorName="Горинин Г.Г" ClientName="Горинин Г.Г" AccessType="instructor"/>
|
<AuthData Login="I1" Password="1111" InstructorName="Горинин Г.Г." ClientName="Горинин Г.Г." AccessType="instructor"/>
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
debug/main.o
BIN
debug/main.o
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
124
debug/moc_newversionwidget.cpp
Normal file
124
debug/moc_newversionwidget.cpp
Normal file
@@ -0,0 +1,124 @@
|
|||||||
|
/****************************************************************************
|
||||||
|
** Meta object code from reading C++ file 'newversionwidget.h'
|
||||||
|
**
|
||||||
|
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.14.2)
|
||||||
|
**
|
||||||
|
** WARNING! All changes made in this file will be lost!
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
|
#include "../newversionwidget.h"
|
||||||
|
#include <QtCore/qbytearray.h>
|
||||||
|
#include <QtCore/qmetatype.h>
|
||||||
|
#if !defined(Q_MOC_OUTPUT_REVISION)
|
||||||
|
#error "The header file 'newversionwidget.h' doesn't include <QObject>."
|
||||||
|
#elif Q_MOC_OUTPUT_REVISION != 67
|
||||||
|
#error "This file was generated using the moc from 5.14.2. It"
|
||||||
|
#error "cannot be used with the include files from this version of Qt."
|
||||||
|
#error "(The moc has changed too much.)"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
QT_BEGIN_MOC_NAMESPACE
|
||||||
|
QT_WARNING_PUSH
|
||||||
|
QT_WARNING_DISABLE_DEPRECATED
|
||||||
|
struct qt_meta_stringdata_NewVersionWidget_t {
|
||||||
|
QByteArrayData data[4];
|
||||||
|
char stringdata0[66];
|
||||||
|
};
|
||||||
|
#define QT_MOC_LITERAL(idx, ofs, len) \
|
||||||
|
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
|
||||||
|
qptrdiff(offsetof(qt_meta_stringdata_NewVersionWidget_t, stringdata0) + ofs \
|
||||||
|
- idx * sizeof(QByteArrayData)) \
|
||||||
|
)
|
||||||
|
static const qt_meta_stringdata_NewVersionWidget_t qt_meta_stringdata_NewVersionWidget = {
|
||||||
|
{
|
||||||
|
QT_MOC_LITERAL(0, 0, 16), // "NewVersionWidget"
|
||||||
|
QT_MOC_LITERAL(1, 17, 23), // "on_createButton_clicked"
|
||||||
|
QT_MOC_LITERAL(2, 41, 0), // ""
|
||||||
|
QT_MOC_LITERAL(3, 42, 23) // "on_cancelButton_clicked"
|
||||||
|
|
||||||
|
},
|
||||||
|
"NewVersionWidget\0on_createButton_clicked\0"
|
||||||
|
"\0on_cancelButton_clicked"
|
||||||
|
};
|
||||||
|
#undef QT_MOC_LITERAL
|
||||||
|
|
||||||
|
static const uint qt_meta_data_NewVersionWidget[] = {
|
||||||
|
|
||||||
|
// content:
|
||||||
|
8, // revision
|
||||||
|
0, // classname
|
||||||
|
0, 0, // classinfo
|
||||||
|
2, 14, // methods
|
||||||
|
0, 0, // properties
|
||||||
|
0, 0, // enums/sets
|
||||||
|
0, 0, // constructors
|
||||||
|
0, // flags
|
||||||
|
0, // signalCount
|
||||||
|
|
||||||
|
// slots: name, argc, parameters, tag, flags
|
||||||
|
1, 0, 24, 2, 0x08 /* Private */,
|
||||||
|
3, 0, 25, 2, 0x08 /* Private */,
|
||||||
|
|
||||||
|
// slots: parameters
|
||||||
|
QMetaType::Void,
|
||||||
|
QMetaType::Void,
|
||||||
|
|
||||||
|
0 // eod
|
||||||
|
};
|
||||||
|
|
||||||
|
void NewVersionWidget::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
|
||||||
|
{
|
||||||
|
if (_c == QMetaObject::InvokeMetaMethod) {
|
||||||
|
auto *_t = static_cast<NewVersionWidget *>(_o);
|
||||||
|
Q_UNUSED(_t)
|
||||||
|
switch (_id) {
|
||||||
|
case 0: _t->on_createButton_clicked(); break;
|
||||||
|
case 1: _t->on_cancelButton_clicked(); break;
|
||||||
|
default: ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Q_UNUSED(_a);
|
||||||
|
}
|
||||||
|
|
||||||
|
QT_INIT_METAOBJECT const QMetaObject NewVersionWidget::staticMetaObject = { {
|
||||||
|
QMetaObject::SuperData::link<QWidget::staticMetaObject>(),
|
||||||
|
qt_meta_stringdata_NewVersionWidget.data,
|
||||||
|
qt_meta_data_NewVersionWidget,
|
||||||
|
qt_static_metacall,
|
||||||
|
nullptr,
|
||||||
|
nullptr
|
||||||
|
} };
|
||||||
|
|
||||||
|
|
||||||
|
const QMetaObject *NewVersionWidget::metaObject() const
|
||||||
|
{
|
||||||
|
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
|
||||||
|
}
|
||||||
|
|
||||||
|
void *NewVersionWidget::qt_metacast(const char *_clname)
|
||||||
|
{
|
||||||
|
if (!_clname) return nullptr;
|
||||||
|
if (!strcmp(_clname, qt_meta_stringdata_NewVersionWidget.stringdata0))
|
||||||
|
return static_cast<void*>(this);
|
||||||
|
return QWidget::qt_metacast(_clname);
|
||||||
|
}
|
||||||
|
|
||||||
|
int NewVersionWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
|
||||||
|
{
|
||||||
|
_id = QWidget::qt_metacall(_c, _id, _a);
|
||||||
|
if (_id < 0)
|
||||||
|
return _id;
|
||||||
|
if (_c == QMetaObject::InvokeMetaMethod) {
|
||||||
|
if (_id < 2)
|
||||||
|
qt_static_metacall(this, _c, _id, _a);
|
||||||
|
_id -= 2;
|
||||||
|
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
|
||||||
|
if (_id < 2)
|
||||||
|
*reinterpret_cast<int*>(_a[0]) = -1;
|
||||||
|
_id -= 2;
|
||||||
|
}
|
||||||
|
return _id;
|
||||||
|
}
|
||||||
|
QT_WARNING_POP
|
||||||
|
QT_END_MOC_NAMESPACE
|
||||||
BIN
debug/moc_newversionwidget.o
Normal file
BIN
debug/moc_newversionwidget.o
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -22,8 +22,8 @@ QT_BEGIN_MOC_NAMESPACE
|
|||||||
QT_WARNING_PUSH
|
QT_WARNING_PUSH
|
||||||
QT_WARNING_DISABLE_DEPRECATED
|
QT_WARNING_DISABLE_DEPRECATED
|
||||||
struct qt_meta_stringdata_VersionSelectWidget_t {
|
struct qt_meta_stringdata_VersionSelectWidget_t {
|
||||||
QByteArrayData data[12];
|
QByteArrayData data[13];
|
||||||
char stringdata0[253];
|
char stringdata0[265];
|
||||||
};
|
};
|
||||||
#define QT_MOC_LITERAL(idx, ofs, len) \
|
#define QT_MOC_LITERAL(idx, ofs, len) \
|
||||||
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
|
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
|
||||||
@@ -38,17 +38,19 @@ QT_MOC_LITERAL(2, 41, 0), // ""
|
|||||||
QT_MOC_LITERAL(3, 42, 21), // "StreamingVersionData*"
|
QT_MOC_LITERAL(3, 42, 21), // "StreamingVersionData*"
|
||||||
QT_MOC_LITERAL(4, 64, 13), // "selectVersion"
|
QT_MOC_LITERAL(4, 64, 13), // "selectVersion"
|
||||||
QT_MOC_LITERAL(5, 78, 18), // "sigSendCopyVersion"
|
QT_MOC_LITERAL(5, 78, 18), // "sigSendCopyVersion"
|
||||||
QT_MOC_LITERAL(6, 97, 32), // "on_verListView_itemDoubleClicked"
|
QT_MOC_LITERAL(6, 97, 11), // "versionPair"
|
||||||
QT_MOC_LITERAL(7, 130, 16), // "QListWidgetItem*"
|
QT_MOC_LITERAL(7, 109, 32), // "on_verListView_itemDoubleClicked"
|
||||||
QT_MOC_LITERAL(8, 147, 4), // "item"
|
QT_MOC_LITERAL(8, 142, 16), // "QListWidgetItem*"
|
||||||
QT_MOC_LITERAL(9, 152, 32), // "on_createDuplicateButton_clicked"
|
QT_MOC_LITERAL(9, 159, 4), // "item"
|
||||||
QT_MOC_LITERAL(10, 185, 30), // "on_DeleteVersionButton_clicked"
|
QT_MOC_LITERAL(10, 164, 32), // "on_createDuplicateButton_clicked"
|
||||||
QT_MOC_LITERAL(11, 216, 36) // "on_switchServerVersionButton_..."
|
QT_MOC_LITERAL(11, 197, 30), // "on_DeleteVersionButton_clicked"
|
||||||
|
QT_MOC_LITERAL(12, 228, 36) // "on_switchServerVersionButton_..."
|
||||||
|
|
||||||
},
|
},
|
||||||
"VersionSelectWidget\0sigSendSwitchVersion\0"
|
"VersionSelectWidget\0sigSendSwitchVersion\0"
|
||||||
"\0StreamingVersionData*\0selectVersion\0"
|
"\0StreamingVersionData*\0selectVersion\0"
|
||||||
"sigSendCopyVersion\0on_verListView_itemDoubleClicked\0"
|
"sigSendCopyVersion\0versionPair\0"
|
||||||
|
"on_verListView_itemDoubleClicked\0"
|
||||||
"QListWidgetItem*\0item\0"
|
"QListWidgetItem*\0item\0"
|
||||||
"on_createDuplicateButton_clicked\0"
|
"on_createDuplicateButton_clicked\0"
|
||||||
"on_DeleteVersionButton_clicked\0"
|
"on_DeleteVersionButton_clicked\0"
|
||||||
@@ -74,17 +76,17 @@ static const uint qt_meta_data_VersionSelectWidget[] = {
|
|||||||
5, 1, 47, 2, 0x06 /* Public */,
|
5, 1, 47, 2, 0x06 /* Public */,
|
||||||
|
|
||||||
// slots: name, argc, parameters, tag, flags
|
// slots: name, argc, parameters, tag, flags
|
||||||
6, 1, 50, 2, 0x08 /* Private */,
|
7, 1, 50, 2, 0x08 /* Private */,
|
||||||
9, 0, 53, 2, 0x08 /* Private */,
|
10, 0, 53, 2, 0x08 /* Private */,
|
||||||
10, 0, 54, 2, 0x08 /* Private */,
|
11, 0, 54, 2, 0x08 /* Private */,
|
||||||
11, 0, 55, 2, 0x08 /* Private */,
|
12, 0, 55, 2, 0x08 /* Private */,
|
||||||
|
|
||||||
// signals: parameters
|
// signals: parameters
|
||||||
QMetaType::Void, 0x80000000 | 3, 4,
|
QMetaType::Void, 0x80000000 | 3, 4,
|
||||||
QMetaType::Void, 0x80000000 | 3, 4,
|
QMetaType::Void, QMetaType::QString, 6,
|
||||||
|
|
||||||
// slots: parameters
|
// slots: parameters
|
||||||
QMetaType::Void, 0x80000000 | 7, 8,
|
QMetaType::Void, 0x80000000 | 8, 9,
|
||||||
QMetaType::Void,
|
QMetaType::Void,
|
||||||
QMetaType::Void,
|
QMetaType::Void,
|
||||||
QMetaType::Void,
|
QMetaType::Void,
|
||||||
@@ -99,7 +101,7 @@ void VersionSelectWidget::qt_static_metacall(QObject *_o, QMetaObject::Call _c,
|
|||||||
Q_UNUSED(_t)
|
Q_UNUSED(_t)
|
||||||
switch (_id) {
|
switch (_id) {
|
||||||
case 0: _t->sigSendSwitchVersion((*reinterpret_cast< StreamingVersionData*(*)>(_a[1]))); break;
|
case 0: _t->sigSendSwitchVersion((*reinterpret_cast< StreamingVersionData*(*)>(_a[1]))); break;
|
||||||
case 1: _t->sigSendCopyVersion((*reinterpret_cast< StreamingVersionData*(*)>(_a[1]))); break;
|
case 1: _t->sigSendCopyVersion((*reinterpret_cast< QString(*)>(_a[1]))); break;
|
||||||
case 2: _t->on_verListView_itemDoubleClicked((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break;
|
case 2: _t->on_verListView_itemDoubleClicked((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break;
|
||||||
case 3: _t->on_createDuplicateButton_clicked(); break;
|
case 3: _t->on_createDuplicateButton_clicked(); break;
|
||||||
case 4: _t->on_DeleteVersionButton_clicked(); break;
|
case 4: _t->on_DeleteVersionButton_clicked(); break;
|
||||||
@@ -116,7 +118,7 @@ void VersionSelectWidget::qt_static_metacall(QObject *_o, QMetaObject::Call _c,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
using _t = void (VersionSelectWidget::*)(StreamingVersionData * );
|
using _t = void (VersionSelectWidget::*)(QString );
|
||||||
if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&VersionSelectWidget::sigSendCopyVersion)) {
|
if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&VersionSelectWidget::sigSendCopyVersion)) {
|
||||||
*result = 1;
|
*result = 1;
|
||||||
return;
|
return;
|
||||||
@@ -173,7 +175,7 @@ void VersionSelectWidget::sigSendSwitchVersion(StreamingVersionData * _t1)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// SIGNAL 1
|
// SIGNAL 1
|
||||||
void VersionSelectWidget::sigSendCopyVersion(StreamingVersionData * _t1)
|
void VersionSelectWidget::sigSendCopyVersion(QString _t1)
|
||||||
{
|
{
|
||||||
void *_a[] = { nullptr, const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t1))) };
|
void *_a[] = { nullptr, const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t1))) };
|
||||||
QMetaObject::activate(this, &staticMetaObject, 1, _a);
|
QMetaObject::activate(this, &staticMetaObject, 1, _a);
|
||||||
|
|||||||
Binary file not shown.
BIN
debug/newversionwidget.o
Normal file
BIN
debug/newversionwidget.o
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
debug/tools.o
BIN
debug/tools.o
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
36
newversionwidget.cpp
Normal file
36
newversionwidget.cpp
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
#include "newversionwidget.h"
|
||||||
|
#include "ui_newversionwidget.h"
|
||||||
|
|
||||||
|
NewVersionWidget::NewVersionWidget(QWidget *parent) :
|
||||||
|
QWidget(parent),
|
||||||
|
ui(new Ui::NewVersionWidget)
|
||||||
|
{
|
||||||
|
ui->setupUi(this);
|
||||||
|
setWindowFlag(Qt::SubWindow);
|
||||||
|
setAttribute(Qt::WA_ShowModal,true);
|
||||||
|
}
|
||||||
|
|
||||||
|
void NewVersionWidget::initialize(VersionSelectWidget *versionSelectWidget, QString prevName)
|
||||||
|
{
|
||||||
|
this->versionSelectWidget = versionSelectWidget;
|
||||||
|
ui->prevVerValue->setText(prevName);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void NewVersionWidget::on_createButton_clicked()
|
||||||
|
{
|
||||||
|
if(ui->lineEdit->text() != "")
|
||||||
|
{
|
||||||
|
versionSelectWidget->sendCopyEmit(ui->lineEdit->text());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void NewVersionWidget::on_cancelButton_clicked()
|
||||||
|
{
|
||||||
|
hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
NewVersionWidget::~NewVersionWidget()
|
||||||
|
{
|
||||||
|
delete ui;
|
||||||
|
}
|
||||||
32
newversionwidget.h
Normal file
32
newversionwidget.h
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
#ifndef NEWVERSIONWIDGET_H
|
||||||
|
#define NEWVERSIONWIDGET_H
|
||||||
|
|
||||||
|
#include "versionselectwidget.h"
|
||||||
|
|
||||||
|
#include <QWidget>
|
||||||
|
|
||||||
|
namespace Ui {
|
||||||
|
class NewVersionWidget;
|
||||||
|
}
|
||||||
|
|
||||||
|
class VersionSelectWidget;
|
||||||
|
class NewVersionWidget : public QWidget
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit NewVersionWidget(QWidget *parent = nullptr);
|
||||||
|
void initialize(VersionSelectWidget *versionSelectWidget,QString prevName);
|
||||||
|
~NewVersionWidget();
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
void on_createButton_clicked();
|
||||||
|
|
||||||
|
void on_cancelButton_clicked();
|
||||||
|
|
||||||
|
private:
|
||||||
|
Ui::NewVersionWidget *ui;
|
||||||
|
VersionSelectWidget *versionSelectWidget;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // NEWVERSIONWIDGET_H
|
||||||
97
newversionwidget.ui
Normal file
97
newversionwidget.ui
Normal file
@@ -0,0 +1,97 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<ui version="4.0">
|
||||||
|
<class>NewVersionWidget</class>
|
||||||
|
<widget class="QWidget" name="NewVersionWidget">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>400</width>
|
||||||
|
<height>240</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="windowTitle">
|
||||||
|
<string>Form</string>
|
||||||
|
</property>
|
||||||
|
<property name="styleSheet">
|
||||||
|
<string notr="true"/>
|
||||||
|
</property>
|
||||||
|
<widget class="QLabel" name="prevVerTitle">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>10</x>
|
||||||
|
<y>10</y>
|
||||||
|
<width>171</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>TextLabel</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="QLabel" name="newNameVersionTitle">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>10</x>
|
||||||
|
<y>50</y>
|
||||||
|
<width>161</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Новое название:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="QLineEdit" name="lineEdit">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>180</x>
|
||||||
|
<y>50</y>
|
||||||
|
<width>211</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="QPushButton" name="createButton">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>40</x>
|
||||||
|
<y>120</y>
|
||||||
|
<width>131</width>
|
||||||
|
<height>41</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Создать</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="QLabel" name="prevVerValue">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>180</x>
|
||||||
|
<y>10</y>
|
||||||
|
<width>201</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>TextLabel</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="QPushButton" name="cancelButton">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>210</x>
|
||||||
|
<y>120</y>
|
||||||
|
<width>131</width>
|
||||||
|
<height>41</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Отмена</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</widget>
|
||||||
|
<resources/>
|
||||||
|
<connections/>
|
||||||
|
</ui>
|
||||||
@@ -13,6 +13,7 @@ debug/instructorbuttongroupwidget.o
|
|||||||
debug/main.o
|
debug/main.o
|
||||||
debug/mainwindow.o
|
debug/mainwindow.o
|
||||||
debug/mywinheader.o
|
debug/mywinheader.o
|
||||||
|
debug/newversionwidget.o
|
||||||
debug/updatenotifywidget.o
|
debug/updatenotifywidget.o
|
||||||
debug/updatewidget.o
|
debug/updatewidget.o
|
||||||
debug/versionselectwidget.o
|
debug/versionselectwidget.o
|
||||||
@@ -30,6 +31,7 @@ debug/moc_entrywidget.o
|
|||||||
debug/moc_instructorbuttongroupwidget.o
|
debug/moc_instructorbuttongroupwidget.o
|
||||||
debug/moc_mainwindow.o
|
debug/moc_mainwindow.o
|
||||||
debug/moc_mywinheader.o
|
debug/moc_mywinheader.o
|
||||||
|
debug/moc_newversionwidget.o
|
||||||
debug/moc_updatenotifywidget.o
|
debug/moc_updatenotifywidget.o
|
||||||
debug/moc_updatewidget.o
|
debug/moc_updatewidget.o
|
||||||
debug/moc_versionselectwidget.o
|
debug/moc_versionselectwidget.o
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ release/instructorbuttongroupwidget.o
|
|||||||
release/main.o
|
release/main.o
|
||||||
release/mainwindow.o
|
release/mainwindow.o
|
||||||
release/mywinheader.o
|
release/mywinheader.o
|
||||||
|
release/newversionwidget.o
|
||||||
release/updatenotifywidget.o
|
release/updatenotifywidget.o
|
||||||
release/updatewidget.o
|
release/updatewidget.o
|
||||||
release/versionselectwidget.o
|
release/versionselectwidget.o
|
||||||
@@ -30,6 +31,7 @@ release/moc_entrywidget.o
|
|||||||
release/moc_instructorbuttongroupwidget.o
|
release/moc_instructorbuttongroupwidget.o
|
||||||
release/moc_mainwindow.o
|
release/moc_mainwindow.o
|
||||||
release/moc_mywinheader.o
|
release/moc_mywinheader.o
|
||||||
|
release/moc_newversionwidget.o
|
||||||
release/moc_updatenotifywidget.o
|
release/moc_updatenotifywidget.o
|
||||||
release/moc_updatewidget.o
|
release/moc_updatewidget.o
|
||||||
release/moc_versionselectwidget.o
|
release/moc_versionselectwidget.o
|
||||||
|
|||||||
79
ui_newversionwidget.h
Normal file
79
ui_newversionwidget.h
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
/********************************************************************************
|
||||||
|
** Form generated from reading UI file 'newversionwidget.ui'
|
||||||
|
**
|
||||||
|
** Created by: Qt User Interface Compiler version 5.14.2
|
||||||
|
**
|
||||||
|
** WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||||
|
********************************************************************************/
|
||||||
|
|
||||||
|
#ifndef UI_NEWVERSIONWIDGET_H
|
||||||
|
#define UI_NEWVERSIONWIDGET_H
|
||||||
|
|
||||||
|
#include <QtCore/QVariant>
|
||||||
|
#include <QtWidgets/QApplication>
|
||||||
|
#include <QtWidgets/QLabel>
|
||||||
|
#include <QtWidgets/QLineEdit>
|
||||||
|
#include <QtWidgets/QPushButton>
|
||||||
|
#include <QtWidgets/QWidget>
|
||||||
|
|
||||||
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
|
class Ui_NewVersionWidget
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
QLabel *prevVerTitle;
|
||||||
|
QLabel *newNameVersionTitle;
|
||||||
|
QLineEdit *lineEdit;
|
||||||
|
QPushButton *createButton;
|
||||||
|
QLabel *prevVerValue;
|
||||||
|
QPushButton *cancelButton;
|
||||||
|
|
||||||
|
void setupUi(QWidget *NewVersionWidget)
|
||||||
|
{
|
||||||
|
if (NewVersionWidget->objectName().isEmpty())
|
||||||
|
NewVersionWidget->setObjectName(QString::fromUtf8("NewVersionWidget"));
|
||||||
|
NewVersionWidget->resize(400, 240);
|
||||||
|
NewVersionWidget->setStyleSheet(QString::fromUtf8(""));
|
||||||
|
prevVerTitle = new QLabel(NewVersionWidget);
|
||||||
|
prevVerTitle->setObjectName(QString::fromUtf8("prevVerTitle"));
|
||||||
|
prevVerTitle->setGeometry(QRect(10, 10, 171, 31));
|
||||||
|
newNameVersionTitle = new QLabel(NewVersionWidget);
|
||||||
|
newNameVersionTitle->setObjectName(QString::fromUtf8("newNameVersionTitle"));
|
||||||
|
newNameVersionTitle->setGeometry(QRect(10, 50, 161, 31));
|
||||||
|
lineEdit = new QLineEdit(NewVersionWidget);
|
||||||
|
lineEdit->setObjectName(QString::fromUtf8("lineEdit"));
|
||||||
|
lineEdit->setGeometry(QRect(180, 50, 211, 31));
|
||||||
|
createButton = new QPushButton(NewVersionWidget);
|
||||||
|
createButton->setObjectName(QString::fromUtf8("createButton"));
|
||||||
|
createButton->setGeometry(QRect(40, 120, 131, 41));
|
||||||
|
prevVerValue = new QLabel(NewVersionWidget);
|
||||||
|
prevVerValue->setObjectName(QString::fromUtf8("prevVerValue"));
|
||||||
|
prevVerValue->setGeometry(QRect(180, 10, 201, 31));
|
||||||
|
cancelButton = new QPushButton(NewVersionWidget);
|
||||||
|
cancelButton->setObjectName(QString::fromUtf8("cancelButton"));
|
||||||
|
cancelButton->setGeometry(QRect(210, 120, 131, 41));
|
||||||
|
|
||||||
|
retranslateUi(NewVersionWidget);
|
||||||
|
|
||||||
|
QMetaObject::connectSlotsByName(NewVersionWidget);
|
||||||
|
} // setupUi
|
||||||
|
|
||||||
|
void retranslateUi(QWidget *NewVersionWidget)
|
||||||
|
{
|
||||||
|
NewVersionWidget->setWindowTitle(QCoreApplication::translate("NewVersionWidget", "Form", nullptr));
|
||||||
|
prevVerTitle->setText(QCoreApplication::translate("NewVersionWidget", "TextLabel", nullptr));
|
||||||
|
newNameVersionTitle->setText(QCoreApplication::translate("NewVersionWidget", "\320\235\320\276\320\262\320\276\320\265 \320\275\320\260\320\267\320\262\320\260\320\275\320\270\320\265:", nullptr));
|
||||||
|
createButton->setText(QCoreApplication::translate("NewVersionWidget", "\320\241\320\276\320\267\320\264\320\260\321\202\321\214", nullptr));
|
||||||
|
prevVerValue->setText(QCoreApplication::translate("NewVersionWidget", "TextLabel", nullptr));
|
||||||
|
cancelButton->setText(QCoreApplication::translate("NewVersionWidget", "\320\236\321\202\320\274\320\265\320\275\320\260", nullptr));
|
||||||
|
} // retranslateUi
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
namespace Ui {
|
||||||
|
class NewVersionWidget: public Ui_NewVersionWidget {};
|
||||||
|
} // namespace Ui
|
||||||
|
|
||||||
|
QT_END_NAMESPACE
|
||||||
|
|
||||||
|
#endif // UI_NEWVERSIONWIDGET_H
|
||||||
@@ -36,6 +36,7 @@ public:
|
|||||||
if (VersionSelectWidget->objectName().isEmpty())
|
if (VersionSelectWidget->objectName().isEmpty())
|
||||||
VersionSelectWidget->setObjectName(QString::fromUtf8("VersionSelectWidget"));
|
VersionSelectWidget->setObjectName(QString::fromUtf8("VersionSelectWidget"));
|
||||||
VersionSelectWidget->resize(730, 229);
|
VersionSelectWidget->resize(730, 229);
|
||||||
|
VersionSelectWidget->setAutoFillBackground(false);
|
||||||
switchServerVersionButton = new QPushButton(VersionSelectWidget);
|
switchServerVersionButton = new QPushButton(VersionSelectWidget);
|
||||||
switchServerVersionButton->setObjectName(QString::fromUtf8("switchServerVersionButton"));
|
switchServerVersionButton->setObjectName(QString::fromUtf8("switchServerVersionButton"));
|
||||||
switchServerVersionButton->setGeometry(QRect(310, 180, 231, 41));
|
switchServerVersionButton->setGeometry(QRect(310, 180, 231, 41));
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ void VersionSelectWidget::initialize(SendSystem *sendSystem)
|
|||||||
void VersionSelectWidget::fillView(QList<StreamingVersionData *> *serverData)
|
void VersionSelectWidget::fillView(QList<StreamingVersionData *> *serverData)
|
||||||
{
|
{
|
||||||
show();
|
show();
|
||||||
|
ui->verListView->clear();
|
||||||
serverDataList = serverData;
|
serverDataList = serverData;
|
||||||
|
|
||||||
foreach(StreamingVersionData *data,*serverData)
|
foreach(StreamingVersionData *data,*serverData)
|
||||||
@@ -54,13 +55,21 @@ void VersionSelectWidget::on_verListView_itemDoubleClicked(QListWidgetItem *item
|
|||||||
|
|
||||||
void VersionSelectWidget::on_createDuplicateButton_clicked()
|
void VersionSelectWidget::on_createDuplicateButton_clicked()
|
||||||
{
|
{
|
||||||
|
NewVersionWidget *newVersionWidget = new NewVersionWidget;
|
||||||
|
newVersionWidget->initialize(this,selectedVersion->getViewName());
|
||||||
|
newVersionWidget->show();
|
||||||
|
}
|
||||||
|
|
||||||
|
void VersionSelectWidget::sendCopyEmit(QString newName)
|
||||||
|
{
|
||||||
|
QString result = selectedVersion->getViewName() + ";" + newName;
|
||||||
|
if(selectedVersion != nullptr)
|
||||||
|
emit sigSendCopyVersion(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
void VersionSelectWidget::on_DeleteVersionButton_clicked()
|
void VersionSelectWidget::on_DeleteVersionButton_clicked()
|
||||||
{
|
{
|
||||||
if(selectedVersion != nullptr)
|
|
||||||
emit sigSendCopyVersion(selectedVersion);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void VersionSelectWidget::on_switchServerVersionButton_clicked()
|
void VersionSelectWidget::on_switchServerVersionButton_clicked()
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
#include <Core/sendsystem.h>
|
#include <Core/sendsystem.h>
|
||||||
#include <Core/streamingversiondata.h>
|
#include <Core/streamingversiondata.h>
|
||||||
|
#include <newversionwidget.h>
|
||||||
|
|
||||||
namespace Ui {
|
namespace Ui {
|
||||||
class VersionSelectWidget;
|
class VersionSelectWidget;
|
||||||
@@ -21,7 +22,8 @@ public:
|
|||||||
void fillView(QList<StreamingVersionData*> *serverData);
|
void fillView(QList<StreamingVersionData*> *serverData);
|
||||||
~VersionSelectWidget();
|
~VersionSelectWidget();
|
||||||
|
|
||||||
void fillCurrentVersionName(QString versuionName);
|
void fillCurrentVersionName(QString versionName);
|
||||||
|
void sendCopyEmit(QString newName);
|
||||||
private slots:
|
private slots:
|
||||||
void on_verListView_itemDoubleClicked(QListWidgetItem *item);
|
void on_verListView_itemDoubleClicked(QListWidgetItem *item);
|
||||||
|
|
||||||
@@ -33,7 +35,7 @@ private slots:
|
|||||||
|
|
||||||
signals:
|
signals:
|
||||||
void sigSendSwitchVersion(StreamingVersionData *selectVersion);
|
void sigSendSwitchVersion(StreamingVersionData *selectVersion);
|
||||||
void sigSendCopyVersion(StreamingVersionData* selectVersion);
|
void sigSendCopyVersion(QString versionPair);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Ui::VersionSelectWidget *ui;
|
Ui::VersionSelectWidget *ui;
|
||||||
|
|||||||
@@ -13,6 +13,9 @@
|
|||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string>Form</string>
|
<string>Form</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="autoFillBackground">
|
||||||
|
<bool>false</bool>
|
||||||
|
</property>
|
||||||
<widget class="QPushButton" name="switchServerVersionButton">
|
<widget class="QPushButton" name="switchServerVersionButton">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
|
|||||||
Reference in New Issue
Block a user