feat: change new file instructor position

This commit is contained in:
semenov
2024-12-24 11:27:14 +03:00
parent 4ac72c7b1a
commit 8d748507b5
35 changed files with 196303 additions and 874 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -35,7 +35,6 @@ SOURCES += \
mywinheader.cpp \ mywinheader.cpp \
newversionwidget.cpp \ newversionwidget.cpp \
updatenotifywidget.cpp \ updatenotifywidget.cpp \
updatewidget.cpp \
versionselectwidget.cpp versionselectwidget.cpp
HEADERS += \ HEADERS += \
@@ -58,7 +57,6 @@ HEADERS += \
mywinheader.h \ mywinheader.h \
newversionwidget.h \ newversionwidget.h \
updatenotifywidget.h \ updatenotifywidget.h \
updatewidget.h \
versionselectwidget.h versionselectwidget.h
FORMS += \ FORMS += \
@@ -68,7 +66,6 @@ FORMS += \
mainwindow.ui \ mainwindow.ui \
newversionwidget.ui \ newversionwidget.ui \
updatenotifywidget.ui \ updatenotifywidget.ui \
updatewidget.ui \
versionselectwidget.ui versionselectwidget.ui
TRANSLATIONS = QtLanguage_ru.ts\ TRANSLATIONS = QtLanguage_ru.ts\

View File

@@ -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-20T16:30:55. --> <!-- Written by QtCreator 4.11.1, 2024-12-23T18:08:25. -->
<qtcreator> <qtcreator>
<data> <data>
<variable>EnvironmentId</variable> <variable>EnvironmentId</variable>

View File

@@ -1,5 +1,5 @@
<?xml version='1.0' encoding='UTF-8'?> <?xml version='1.0' encoding='UTF-8'?>
<ServerSettingsContainer> <ServerSettingsContainer>
<ServerSettings Address="192.168.100.241" AutoStart="0" Port="6000" Language="RUS"/> <ServerSettings AutoStart="0" Port="6000" Address="192.168.100.241" Language="RUS"/>
<VersionData Version="base"/> <VersionData Version="base"/>
</ServerSettingsContainer> </ServerSettingsContainer>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -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_UpdateNotifyWidget_t { struct qt_meta_stringdata_UpdateNotifyWidget_t {
QByteArrayData data[3]; QByteArrayData data[6];
char stringdata0[43]; char stringdata0[143];
}; };
#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, \
@@ -34,11 +34,16 @@ static const qt_meta_stringdata_UpdateNotifyWidget_t qt_meta_stringdata_UpdateNo
{ {
QT_MOC_LITERAL(0, 0, 18), // "UpdateNotifyWidget" QT_MOC_LITERAL(0, 0, 18), // "UpdateNotifyWidget"
QT_MOC_LITERAL(1, 19, 22), // "on_closeButton_clicked" QT_MOC_LITERAL(1, 19, 22), // "on_closeButton_clicked"
QT_MOC_LITERAL(2, 42, 0) // "" QT_MOC_LITERAL(2, 42, 0), // ""
QT_MOC_LITERAL(3, 43, 29), // "on_loadToServerButton_clicked"
QT_MOC_LITERAL(4, 73, 28), // "on_undoChangesButton_clicked"
QT_MOC_LITERAL(5, 102, 40) // "on_startWithCurrentChangesBut..."
}, },
"UpdateNotifyWidget\0on_closeButton_clicked\0" "UpdateNotifyWidget\0on_closeButton_clicked\0"
"" "\0on_loadToServerButton_clicked\0"
"on_undoChangesButton_clicked\0"
"on_startWithCurrentChangesButton_clicked"
}; };
#undef QT_MOC_LITERAL #undef QT_MOC_LITERAL
@@ -48,7 +53,7 @@ static const uint qt_meta_data_UpdateNotifyWidget[] = {
8, // revision 8, // revision
0, // classname 0, // classname
0, 0, // classinfo 0, 0, // classinfo
1, 14, // methods 4, 14, // methods
0, 0, // properties 0, 0, // properties
0, 0, // enums/sets 0, 0, // enums/sets
0, 0, // constructors 0, 0, // constructors
@@ -56,9 +61,15 @@ static const uint qt_meta_data_UpdateNotifyWidget[] = {
0, // signalCount 0, // signalCount
// slots: name, argc, parameters, tag, flags // slots: name, argc, parameters, tag, flags
1, 0, 19, 2, 0x08 /* Private */, 1, 0, 34, 2, 0x08 /* Private */,
3, 0, 35, 2, 0x08 /* Private */,
4, 0, 36, 2, 0x08 /* Private */,
5, 0, 37, 2, 0x08 /* Private */,
// slots: parameters // slots: parameters
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void, QMetaType::Void,
0 // eod 0 // eod
@@ -71,6 +82,9 @@ void UpdateNotifyWidget::qt_static_metacall(QObject *_o, QMetaObject::Call _c, i
Q_UNUSED(_t) Q_UNUSED(_t)
switch (_id) { switch (_id) {
case 0: _t->on_closeButton_clicked(); break; case 0: _t->on_closeButton_clicked(); break;
case 1: _t->on_loadToServerButton_clicked(); break;
case 2: _t->on_undoChangesButton_clicked(); break;
case 3: _t->on_startWithCurrentChangesButton_clicked(); break;
default: ; default: ;
} }
} }
@@ -106,13 +120,13 @@ int UpdateNotifyWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
if (_id < 0) if (_id < 0)
return _id; return _id;
if (_c == QMetaObject::InvokeMetaMethod) { if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 1) if (_id < 4)
qt_static_metacall(this, _c, _id, _a); qt_static_metacall(this, _c, _id, _a);
_id -= 1; _id -= 4;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) { } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 1) if (_id < 4)
*reinterpret_cast<int*>(_a[0]) = -1; *reinterpret_cast<int*>(_a[0]) = -1;
_id -= 1; _id -= 4;
} }
return _id; return _id;
} }

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -7,7 +7,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>520</width> <width>520</width>
<height>45</height> <height>50</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
@@ -34,7 +34,7 @@
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>520</width> <width>520</width>
<height>45</height> <height>51</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
@@ -63,7 +63,7 @@
<number>0</number> <number>0</number>
</property> </property>
<property name="bottomMargin"> <property name="bottomMargin">
<number>5</number> <number>0</number>
</property> </property>
<item> <item>
<widget class="QPushButton" name="loadToServerButton"> <widget class="QPushButton" name="loadToServerButton">

View File

@@ -23,7 +23,7 @@ void MainWindow::initialize()
{ {
createObjects(); createObjects();
updateTextWidget->initialize(); updateWidget->initialize(this);
entryWidget->initialize(this); entryWidget->initialize(this);
versionSelectWidget->initialize(sendSystem); versionSelectWidget->initialize(sendSystem);
hashComparer->initialize(this); hashComparer->initialize(this);
@@ -32,7 +32,7 @@ void MainWindow::initialize()
commonButtonGroupWidget->initialize(externalExecuter,sendSystem,client); commonButtonGroupWidget->initialize(externalExecuter,sendSystem,client);
commonButtonGroupWidget->show(); commonButtonGroupWidget->show();
instructorButtonGroupWidget->initialize(this); //instructorButtonGroupWidget->initialize(this);
ui->notificationLabel->hide(); ui->notificationLabel->hide();
@@ -65,16 +65,14 @@ void MainWindow::createObjects()
{ {
updateWidget = new UpdateNotifyWidget; updateWidget = new UpdateNotifyWidget;
commonButtonGroupWidget = new CommonButtonGroupWidget; commonButtonGroupWidget = new CommonButtonGroupWidget;
instructorButtonGroupWidget = new InstructorButtonGroupWidget; //instructorButtonGroupWidget = new InstructorButtonGroupWidget;
updateTextWidget = new UpdateWidget;
entryWidget = new EntryWidget; entryWidget = new EntryWidget;
versionSelectWidget = new VersionSelectWidget; versionSelectWidget = new VersionSelectWidget;
ui->changButtonGroup->addWidget(commonButtonGroupWidget); ui->changButtonGroup->addWidget(commonButtonGroupWidget);
ui->changButtonGroup->addWidget(instructorButtonGroupWidget); //updateWidget->setButtonWidget(instructorButtonGroupWidget);
ui->interactiveGroup->addWidget(entryWidget); ui->interactiveGroup->addWidget(entryWidget);
ui->interactiveGroup->addWidget(updateTextWidget);
ui->interactiveGroup->addWidget(versionSelectWidget); ui->interactiveGroup->addWidget(versionSelectWidget);
workerThread = new QThread; workerThread = new QThread;
@@ -280,11 +278,11 @@ void MainWindow::showConnectionEmpty()
palette.setColor(ui->notificationLabel->foregroundRole(),Qt::red); palette.setColor(ui->notificationLabel->foregroundRole(),Qt::red);
ui->notificationLabel->setText(tr("Соединение отсутсвует")); ui->notificationLabel->setText(tr("Соединение отсутсвует"));
entryWidget->connectionEmptyState(); entryWidget->connectionEmptyState();
updateTextWidget->hide(); updateWidget->hide();
ui->offlineStartButton->show(); ui->offlineStartButton->show();
ui->offlineStartButton->setGeometry(280,340,250,40); ui->offlineStartButton->setGeometry(280,340,250,40);
ui->settingsButton->show(); ui->settingsButton->show();
instructorButtonGroupWidget->hide(); //instructorButtonGroupWidget->hide();
} }
void MainWindow::slotConnectionState(bool flag) void MainWindow::slotConnectionState(bool flag)
@@ -391,9 +389,9 @@ void MainWindow::loadToServer()
{ {
ui->inlineTextDebug->setText(tr("Отправка файлов...")); ui->inlineTextDebug->setText(tr("Отправка файлов..."));
commonButtonGroupWidget->showProgressBar(true); commonButtonGroupWidget->showProgressBar(true);
instructorButtonGroupWidget->hide(); //instructorButtonGroupWidget->hide();
ui->offlineStartButton->setEnabled(false); ui->offlineStartButton->setEnabled(false);
updateTextWidget->hide(); updateWidget->hide();
emit sigUpdateFilesOnServer(hashComparer->getFilesForUpdate()); emit sigUpdateFilesOnServer(hashComparer->getFilesForUpdate());
} }
@@ -404,8 +402,8 @@ void MainWindow::undoCurrentChanges()
commonButtonGroupWidget->showProgressBar(true); commonButtonGroupWidget->showProgressBar(true);
ui->offlineStartButton->setEnabled(false); ui->offlineStartButton->setEnabled(false);
instructorButtonGroupWidget->hide(); //instructorButtonGroupWidget->hide();
updateTextWidget->hide(); updateWidget->hide();
startLoadingAnim(); startLoadingAnim();
@@ -452,10 +450,10 @@ void MainWindow::checkUpdate()
void MainWindow::showUpdateInfo() void MainWindow::showUpdateInfo()
{ {
stopLoadingMovie(); stopLoadingMovie();
updateTextWidget->showWithFill(); updateWidget->showWithFill();
entryWidget->hide(); entryWidget->hide();
commonButtonGroupWidget->hide(); commonButtonGroupWidget->hide();
instructorButtonGroupWidget->show(); //instructorButtonGroupWidget->show();
ui->offlineStartButton->setGeometry(540,549,250,40); ui->offlineStartButton->setGeometry(540,549,250,40);
fileCountForUpdate = hashComparer->getFilesForUpdate()->length(); fileCountForUpdate = hashComparer->getFilesForUpdate()->length();

View File

@@ -17,7 +17,6 @@
#include "instructorbuttongroupwidget.h" #include "instructorbuttongroupwidget.h"
#include "mywinheader.h" #include "mywinheader.h"
#include "updatenotifywidget.h" #include "updatenotifywidget.h"
#include "updatewidget.h"
#include "versionselectwidget.h" #include "versionselectwidget.h"
QT_BEGIN_NAMESPACE QT_BEGIN_NAMESPACE
@@ -99,7 +98,6 @@ private:
CommonButtonGroupWidget *commonButtonGroupWidget; CommonButtonGroupWidget *commonButtonGroupWidget;
InstructorButtonGroupWidget *instructorButtonGroupWidget; InstructorButtonGroupWidget *instructorButtonGroupWidget;
EntryWidget *entryWidget; EntryWidget *entryWidget;
UpdateWidget *updateTextWidget;
VersionSelectWidget *versionSelectWidget; VersionSelectWidget *versionSelectWidget;
QTranslator translator; QTranslator translator;

View File

@@ -15,7 +15,6 @@ debug/mainwindow.o
debug/mywinheader.o debug/mywinheader.o
debug/newversionwidget.o debug/newversionwidget.o
debug/updatenotifywidget.o debug/updatenotifywidget.o
debug/updatewidget.o
debug/versionselectwidget.o debug/versionselectwidget.o
debug/qrc_resources.o debug/qrc_resources.o
debug/moc_sendsystem.o debug/moc_sendsystem.o
@@ -33,5 +32,4 @@ debug/moc_mainwindow.o
debug/moc_mywinheader.o debug/moc_mywinheader.o
debug/moc_newversionwidget.o debug/moc_newversionwidget.o
debug/moc_updatenotifywidget.o debug/moc_updatenotifywidget.o
debug/moc_updatewidget.o
debug/moc_versionselectwidget.o debug/moc_versionselectwidget.o

View File

@@ -15,7 +15,6 @@ release/mainwindow.o
release/mywinheader.o release/mywinheader.o
release/newversionwidget.o release/newversionwidget.o
release/updatenotifywidget.o release/updatenotifywidget.o
release/updatewidget.o
release/versionselectwidget.o release/versionselectwidget.o
release/qrc_resources.o release/qrc_resources.o
release/moc_sendsystem.o release/moc_sendsystem.o
@@ -33,5 +32,4 @@ release/moc_mainwindow.o
release/moc_mywinheader.o release/moc_mywinheader.o
release/moc_newversionwidget.o release/moc_newversionwidget.o
release/moc_updatenotifywidget.o release/moc_updatenotifywidget.o
release/moc_updatewidget.o
release/moc_versionselectwidget.o release/moc_versionselectwidget.o

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 872 KiB

View File

@@ -15,5 +15,7 @@
<file>resource/Icons/762.gif</file> <file>resource/Icons/762.gif</file>
<file>resource/SSJ-100Dark.png</file> <file>resource/SSJ-100Dark.png</file>
<file>resource/Icons/checked.png</file> <file>resource/Icons/checked.png</file>
<file>resource/SSJ_backgroundDark.png</file>
<file>resource/SSJ_backgroundDarkSM.png</file>
</qresource> </qresource>
</RCC> </RCC>

View File

@@ -1,10 +1,22 @@
QMainWindow QMainWindow
{ {
background-image: url(:/resource/SSJ-100Dark.png); background-image: url(:/resource/SSJ_backgroundDarkSM.png);
background-position: center; background-position: center;
} }
QFrame#backgroundUpdate
{
background-image: url(:/resource/SSJ_backgroundDarkSM.png);
background-position: center;
}
QListWidget#updateListWidget
{
background-color: rgba(81,81,81,180);
color:white;
}
QComboBox QComboBox
{ {
background-color: rgb(203,228,255); background-color: rgb(203,228,255);
@@ -141,13 +153,9 @@ QLabel#languageTitle
QLabel#NotificationLabel QLabel#NotificationLabel
{ {
font-family: "Calibri"; font-family: "Calibri";
color: black; color: white;
} }
QLabel#notificationLabel
{
font: 20px;
}
QToolButton#displayView QToolButton#displayView
{ {

View File

@@ -30,7 +30,7 @@ public:
{ {
if (InstructorButtonGroupWidget->objectName().isEmpty()) if (InstructorButtonGroupWidget->objectName().isEmpty())
InstructorButtonGroupWidget->setObjectName(QString::fromUtf8("InstructorButtonGroupWidget")); InstructorButtonGroupWidget->setObjectName(QString::fromUtf8("InstructorButtonGroupWidget"));
InstructorButtonGroupWidget->resize(520, 45); InstructorButtonGroupWidget->resize(520, 50);
QSizePolicy sizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); QSizePolicy sizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
sizePolicy.setHorizontalStretch(0); sizePolicy.setHorizontalStretch(0);
sizePolicy.setVerticalStretch(0); sizePolicy.setVerticalStretch(0);
@@ -40,14 +40,14 @@ public:
instructorButtonGroup = new QWidget(InstructorButtonGroupWidget); instructorButtonGroup = new QWidget(InstructorButtonGroupWidget);
instructorButtonGroup->setObjectName(QString::fromUtf8("instructorButtonGroup")); instructorButtonGroup->setObjectName(QString::fromUtf8("instructorButtonGroup"));
instructorButtonGroup->setEnabled(true); instructorButtonGroup->setEnabled(true);
instructorButtonGroup->setGeometry(QRect(0, 0, 520, 45)); instructorButtonGroup->setGeometry(QRect(0, 0, 520, 51));
sizePolicy.setHeightForWidth(instructorButtonGroup->sizePolicy().hasHeightForWidth()); sizePolicy.setHeightForWidth(instructorButtonGroup->sizePolicy().hasHeightForWidth());
instructorButtonGroup->setSizePolicy(sizePolicy); instructorButtonGroup->setSizePolicy(sizePolicy);
instructorButtonGroup->setMinimumSize(QSize(520, 45)); instructorButtonGroup->setMinimumSize(QSize(520, 45));
updateButtonGroup = new QHBoxLayout(instructorButtonGroup); updateButtonGroup = new QHBoxLayout(instructorButtonGroup);
updateButtonGroup->setSpacing(5); updateButtonGroup->setSpacing(5);
updateButtonGroup->setObjectName(QString::fromUtf8("updateButtonGroup")); updateButtonGroup->setObjectName(QString::fromUtf8("updateButtonGroup"));
updateButtonGroup->setContentsMargins(0, 0, 0, 5); updateButtonGroup->setContentsMargins(0, 0, 0, 0);
loadToServerButton = new QPushButton(instructorButtonGroup); loadToServerButton = new QPushButton(instructorButtonGroup);
loadToServerButton->setObjectName(QString::fromUtf8("loadToServerButton")); loadToServerButton->setObjectName(QString::fromUtf8("loadToServerButton"));
QSizePolicy sizePolicy1(QSizePolicy::Preferred, QSizePolicy::Minimum); QSizePolicy sizePolicy1(QSizePolicy::Preferred, QSizePolicy::Minimum);

View File

@@ -11,6 +11,7 @@
#include <QtCore/QVariant> #include <QtCore/QVariant>
#include <QtWidgets/QApplication> #include <QtWidgets/QApplication>
#include <QtWidgets/QFrame>
#include <QtWidgets/QHBoxLayout> #include <QtWidgets/QHBoxLayout>
#include <QtWidgets/QLabel> #include <QtWidgets/QLabel>
#include <QtWidgets/QListWidget> #include <QtWidgets/QListWidget>
@@ -23,40 +24,127 @@ QT_BEGIN_NAMESPACE
class Ui_UpdateNotifyWidget class Ui_UpdateNotifyWidget
{ {
public: public:
QVBoxLayout *verticalLayout; QFrame *backgroundUpdate;
QWidget *verticalLayoutWidget;
QVBoxLayout *mainLayout;
QVBoxLayout *updateListLayout;
QLabel *NotificationLabel; QLabel *NotificationLabel;
QListWidget *updateListWidget; QListWidget *updateListWidget;
QHBoxLayout *horizontalLayout; QLabel *updateActionListLabel;
QHBoxLayout *ButtonsLayout;
QWidget *instructorButtonGroup;
QHBoxLayout *updateButtonGroup;
QPushButton *loadToServerButton;
QPushButton *undoChangesButton;
QPushButton *startWithCurrentChangesButton;
QPushButton *closeButton; QPushButton *closeButton;
void setupUi(QWidget *UpdateNotifyWidget) void setupUi(QWidget *UpdateNotifyWidget)
{ {
if (UpdateNotifyWidget->objectName().isEmpty()) if (UpdateNotifyWidget->objectName().isEmpty())
UpdateNotifyWidget->setObjectName(QString::fromUtf8("UpdateNotifyWidget")); UpdateNotifyWidget->setObjectName(QString::fromUtf8("UpdateNotifyWidget"));
UpdateNotifyWidget->resize(726, 429); UpdateNotifyWidget->resize(800, 560);
verticalLayout = new QVBoxLayout(UpdateNotifyWidget); QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); sizePolicy.setHorizontalStretch(0);
NotificationLabel = new QLabel(UpdateNotifyWidget); sizePolicy.setVerticalStretch(0);
sizePolicy.setHeightForWidth(UpdateNotifyWidget->sizePolicy().hasHeightForWidth());
UpdateNotifyWidget->setSizePolicy(sizePolicy);
backgroundUpdate = new QFrame(UpdateNotifyWidget);
backgroundUpdate->setObjectName(QString::fromUtf8("backgroundUpdate"));
backgroundUpdate->setGeometry(QRect(0, 0, 801, 561));
backgroundUpdate->setFrameShape(QFrame::NoFrame);
backgroundUpdate->setFrameShadow(QFrame::Raised);
verticalLayoutWidget = new QWidget(backgroundUpdate);
verticalLayoutWidget->setObjectName(QString::fromUtf8("verticalLayoutWidget"));
verticalLayoutWidget->setGeometry(QRect(0, -10, 801, 571));
mainLayout = new QVBoxLayout(verticalLayoutWidget);
mainLayout->setSpacing(6);
mainLayout->setObjectName(QString::fromUtf8("mainLayout"));
mainLayout->setContentsMargins(5, 10, 5, 10);
updateListLayout = new QVBoxLayout();
updateListLayout->setObjectName(QString::fromUtf8("updateListLayout"));
NotificationLabel = new QLabel(verticalLayoutWidget);
NotificationLabel->setObjectName(QString::fromUtf8("NotificationLabel")); NotificationLabel->setObjectName(QString::fromUtf8("NotificationLabel"));
QSizePolicy sizePolicy1(QSizePolicy::Fixed, QSizePolicy::Fixed);
sizePolicy1.setHorizontalStretch(0);
sizePolicy1.setVerticalStretch(0);
sizePolicy1.setHeightForWidth(NotificationLabel->sizePolicy().hasHeightForWidth());
NotificationLabel->setSizePolicy(sizePolicy1);
verticalLayout->addWidget(NotificationLabel); updateListLayout->addWidget(NotificationLabel);
updateListWidget = new QListWidget(UpdateNotifyWidget); updateListWidget = new QListWidget(verticalLayoutWidget);
updateListWidget->setObjectName(QString::fromUtf8("updateListWidget")); updateListWidget->setObjectName(QString::fromUtf8("updateListWidget"));
updateListWidget->setFrameShape(QFrame::NoFrame);
updateListWidget->setFrameShadow(QFrame::Plain);
verticalLayout->addWidget(updateListWidget); updateListLayout->addWidget(updateListWidget);
horizontalLayout = new QHBoxLayout(); updateActionListLabel = new QLabel(verticalLayoutWidget);
horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); updateActionListLabel->setObjectName(QString::fromUtf8("updateActionListLabel"));
closeButton = new QPushButton(UpdateNotifyWidget);
updateListLayout->addWidget(updateActionListLabel);
mainLayout->addLayout(updateListLayout);
ButtonsLayout = new QHBoxLayout();
ButtonsLayout->setSpacing(6);
ButtonsLayout->setObjectName(QString::fromUtf8("ButtonsLayout"));
ButtonsLayout->setSizeConstraint(QLayout::SetDefaultConstraint);
ButtonsLayout->setContentsMargins(-1, -1, -1, 0);
instructorButtonGroup = new QWidget(verticalLayoutWidget);
instructorButtonGroup->setObjectName(QString::fromUtf8("instructorButtonGroup"));
instructorButtonGroup->setEnabled(true);
sizePolicy.setHeightForWidth(instructorButtonGroup->sizePolicy().hasHeightForWidth());
instructorButtonGroup->setSizePolicy(sizePolicy);
instructorButtonGroup->setMinimumSize(QSize(520, 45));
updateButtonGroup = new QHBoxLayout(instructorButtonGroup);
updateButtonGroup->setSpacing(5);
updateButtonGroup->setObjectName(QString::fromUtf8("updateButtonGroup"));
updateButtonGroup->setContentsMargins(0, 0, 0, 0);
loadToServerButton = new QPushButton(instructorButtonGroup);
loadToServerButton->setObjectName(QString::fromUtf8("loadToServerButton"));
QSizePolicy sizePolicy2(QSizePolicy::Preferred, QSizePolicy::Minimum);
sizePolicy2.setHorizontalStretch(0);
sizePolicy2.setVerticalStretch(0);
sizePolicy2.setHeightForWidth(loadToServerButton->sizePolicy().hasHeightForWidth());
loadToServerButton->setSizePolicy(sizePolicy2);
loadToServerButton->setMinimumSize(QSize(0, 35));
loadToServerButton->setMaximumSize(QSize(16777215, 40));
updateButtonGroup->addWidget(loadToServerButton);
undoChangesButton = new QPushButton(instructorButtonGroup);
undoChangesButton->setObjectName(QString::fromUtf8("undoChangesButton"));
sizePolicy2.setHeightForWidth(undoChangesButton->sizePolicy().hasHeightForWidth());
undoChangesButton->setSizePolicy(sizePolicy2);
undoChangesButton->setMinimumSize(QSize(0, 35));
undoChangesButton->setMaximumSize(QSize(16777215, 40));
updateButtonGroup->addWidget(undoChangesButton);
startWithCurrentChangesButton = new QPushButton(instructorButtonGroup);
startWithCurrentChangesButton->setObjectName(QString::fromUtf8("startWithCurrentChangesButton"));
sizePolicy2.setHeightForWidth(startWithCurrentChangesButton->sizePolicy().hasHeightForWidth());
startWithCurrentChangesButton->setSizePolicy(sizePolicy2);
startWithCurrentChangesButton->setMinimumSize(QSize(0, 35));
startWithCurrentChangesButton->setMaximumSize(QSize(16777215, 40));
updateButtonGroup->addWidget(startWithCurrentChangesButton);
ButtonsLayout->addWidget(instructorButtonGroup);
closeButton = new QPushButton(verticalLayoutWidget);
closeButton->setObjectName(QString::fromUtf8("closeButton")); closeButton->setObjectName(QString::fromUtf8("closeButton"));
closeButton->setMinimumSize(QSize(0, 35)); closeButton->setMinimumSize(QSize(0, 40));
closeButton->setMaximumSize(QSize(200, 16777215)); closeButton->setMaximumSize(QSize(200, 16777215));
horizontalLayout->addWidget(closeButton); ButtonsLayout->addWidget(closeButton);
verticalLayout->addLayout(horizontalLayout); mainLayout->addLayout(ButtonsLayout);
retranslateUi(UpdateNotifyWidget); retranslateUi(UpdateNotifyWidget);
@@ -68,6 +156,10 @@ public:
{ {
UpdateNotifyWidget->setWindowTitle(QCoreApplication::translate("UpdateNotifyWidget", "Form", nullptr)); UpdateNotifyWidget->setWindowTitle(QCoreApplication::translate("UpdateNotifyWidget", "Form", nullptr));
NotificationLabel->setText(QCoreApplication::translate("UpdateNotifyWidget", "\320\236\320\261\320\275\320\260\321\200\321\203\320\266\320\265\320\275\321\213 \320\275\320\276\320\262\321\213\320\265 \321\204\320\260\320\271\320\273\321\213:", nullptr)); NotificationLabel->setText(QCoreApplication::translate("UpdateNotifyWidget", "\320\236\320\261\320\275\320\260\321\200\321\203\320\266\320\265\320\275\321\213 \320\275\320\276\320\262\321\213\320\265 \321\204\320\260\320\271\320\273\321\213:", nullptr));
updateActionListLabel->setText(QCoreApplication::translate("UpdateNotifyWidget", "text", nullptr));
loadToServerButton->setText(QCoreApplication::translate("UpdateNotifyWidget", "\320\222\321\213\320\263\321\200\321\203\320\267\320\270\321\202\321\214 \320\270\320\267\320\274\320\265\320\275\320\265\320\275\320\270\321\217", nullptr));
undoChangesButton->setText(QCoreApplication::translate("UpdateNotifyWidget", "\320\236\321\202\320\274\320\265\320\275\320\270\321\202\321\214 \320\270\320\267\320\274\320\265\320\275\320\265\320\275\320\270\321\217", nullptr));
startWithCurrentChangesButton->setText(QCoreApplication::translate("UpdateNotifyWidget", "\320\227\320\260\320\277\321\203\321\201\321\202\320\270\321\202\321\214 \320\261\320\265\320\267 \320\276\321\202\320\277\321\200\320\260\320\262\320\272\320\270", nullptr));
closeButton->setText(QCoreApplication::translate("UpdateNotifyWidget", "\320\227\320\260\320\272\321\200\321\213\321\202\321\214", nullptr)); closeButton->setText(QCoreApplication::translate("UpdateNotifyWidget", "\320\227\320\260\320\272\321\200\321\213\321\202\321\214", nullptr));
} // retranslateUi } // retranslateUi

View File

@@ -50,7 +50,7 @@ public:
if (VersionSelectWidget->objectName().isEmpty()) if (VersionSelectWidget->objectName().isEmpty())
VersionSelectWidget->setObjectName(QString::fromUtf8("VersionSelectWidget")); VersionSelectWidget->setObjectName(QString::fromUtf8("VersionSelectWidget"));
VersionSelectWidget->resize(786, 229); VersionSelectWidget->resize(786, 229);
QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
sizePolicy.setHorizontalStretch(0); sizePolicy.setHorizontalStretch(0);
sizePolicy.setVerticalStretch(0); sizePolicy.setVerticalStretch(0);
sizePolicy.setHeightForWidth(VersionSelectWidget->sizePolicy().hasHeightForWidth()); sizePolicy.setHeightForWidth(VersionSelectWidget->sizePolicy().hasHeightForWidth());
@@ -90,11 +90,8 @@ public:
horizontalLayout->setContentsMargins(-1, -1, 0, -1); horizontalLayout->setContentsMargins(-1, -1, 0, -1);
createDuplicateButton = new QPushButton(horizontalLayoutWidget); createDuplicateButton = new QPushButton(horizontalLayoutWidget);
createDuplicateButton->setObjectName(QString::fromUtf8("createDuplicateButton")); createDuplicateButton->setObjectName(QString::fromUtf8("createDuplicateButton"));
QSizePolicy sizePolicy1(QSizePolicy::Preferred, QSizePolicy::Preferred); sizePolicy.setHeightForWidth(createDuplicateButton->sizePolicy().hasHeightForWidth());
sizePolicy1.setHorizontalStretch(0); createDuplicateButton->setSizePolicy(sizePolicy);
sizePolicy1.setVerticalStretch(0);
sizePolicy1.setHeightForWidth(createDuplicateButton->sizePolicy().hasHeightForWidth());
createDuplicateButton->setSizePolicy(sizePolicy1);
QFont font1; QFont font1;
font1.setPointSize(9); font1.setPointSize(9);
createDuplicateButton->setFont(font1); createDuplicateButton->setFont(font1);
@@ -103,8 +100,8 @@ public:
DeleteVersionButton = new QPushButton(horizontalLayoutWidget); DeleteVersionButton = new QPushButton(horizontalLayoutWidget);
DeleteVersionButton->setObjectName(QString::fromUtf8("DeleteVersionButton")); DeleteVersionButton->setObjectName(QString::fromUtf8("DeleteVersionButton"));
sizePolicy1.setHeightForWidth(DeleteVersionButton->sizePolicy().hasHeightForWidth()); sizePolicy.setHeightForWidth(DeleteVersionButton->sizePolicy().hasHeightForWidth());
DeleteVersionButton->setSizePolicy(sizePolicy1); DeleteVersionButton->setSizePolicy(sizePolicy);
DeleteVersionButton->setSizeIncrement(QSize(0, 0)); DeleteVersionButton->setSizeIncrement(QSize(0, 0));
DeleteVersionButton->setFont(font1); DeleteVersionButton->setFont(font1);
@@ -115,8 +112,8 @@ public:
switchServerVersionButton = new QPushButton(horizontalLayoutWidget); switchServerVersionButton = new QPushButton(horizontalLayoutWidget);
switchServerVersionButton->setObjectName(QString::fromUtf8("switchServerVersionButton")); switchServerVersionButton->setObjectName(QString::fromUtf8("switchServerVersionButton"));
sizePolicy1.setHeightForWidth(switchServerVersionButton->sizePolicy().hasHeightForWidth()); sizePolicy.setHeightForWidth(switchServerVersionButton->sizePolicy().hasHeightForWidth());
switchServerVersionButton->setSizePolicy(sizePolicy1); switchServerVersionButton->setSizePolicy(sizePolicy);
switchServerVersionButton->setFont(font1); switchServerVersionButton->setFont(font1);
ButtonLayout->addWidget(switchServerVersionButton); ButtonLayout->addWidget(switchServerVersionButton);
@@ -134,8 +131,8 @@ public:
verticalLayout->setContentsMargins(0, 0, 0, 0); verticalLayout->setContentsMargins(0, 0, 0, 0);
infoViewTitle = new QLabel(verticalLayoutWidget_2); infoViewTitle = new QLabel(verticalLayoutWidget_2);
infoViewTitle->setObjectName(QString::fromUtf8("infoViewTitle")); infoViewTitle->setObjectName(QString::fromUtf8("infoViewTitle"));
sizePolicy1.setHeightForWidth(infoViewTitle->sizePolicy().hasHeightForWidth()); sizePolicy.setHeightForWidth(infoViewTitle->sizePolicy().hasHeightForWidth());
infoViewTitle->setSizePolicy(sizePolicy1); infoViewTitle->setSizePolicy(sizePolicy);
infoViewTitle->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop); infoViewTitle->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop);
verticalLayout->addWidget(infoViewTitle); verticalLayout->addWidget(infoViewTitle);

View File

@@ -8,7 +8,7 @@ UpdateNotifyWidget::UpdateNotifyWidget(QWidget *) :
ui(new Ui::UpdateNotifyWidget) ui(new Ui::UpdateNotifyWidget)
{ {
ui->setupUi(this); ui->setupUi(this);
setWindowFlag(Qt::SubWindow); setWindowFlag(Qt::FramelessWindowHint);
setAttribute(Qt::WA_ShowModal,true); setAttribute(Qt::WA_ShowModal,true);
} }
@@ -16,6 +16,14 @@ void UpdateNotifyWidget::initialize(MainWindow *mainWindow)
{ {
this->mainWindow = mainWindow; this->mainWindow = mainWindow;
currentLoadingCount = 0; currentLoadingCount = 0;
hide();
auto pos = mainWindow->pos();
pos.setY(pos.y() + 40);
move(pos);
// auto point = mainWindow->pos();
// point.setY(point.y() + 100);
// mapToParent(point);
} }
void UpdateNotifyWidget::addToList(FileData fileData) void UpdateNotifyWidget::addToList(FileData fileData)
@@ -25,6 +33,39 @@ void UpdateNotifyWidget::addToList(FileData fileData)
ui->updateListWidget->addItem(itemName); ui->updateListWidget->addItem(itemName);
} }
void UpdateNotifyWidget::showWithFill()
{
QString list = tr("Возможные действия:\n"
" 1. Выгрузить изменения на сервер\n"
" 2. Отменить изменения с загрузкой версии с сервера \n"
" 3. Запустить без отправки файлов, но с текущими изменениями");
ui->updateActionListLabel->setText(list);
show();
}
void UpdateNotifyWidget::on_loadToServerButton_clicked()
{
mainWindow->loadToServer();
}
void UpdateNotifyWidget::on_undoChangesButton_clicked()
{
mainWindow->undoCurrentChanges();
}
void UpdateNotifyWidget::on_startWithCurrentChangesButton_clicked()
{
mainWindow->startUnityClient();
}
void UpdateNotifyWidget::setButtonWidget(InstructorButtonGroupWidget *widget)
{
//ui->ButtonsLayout->addWidget(widget,0,Qt::AlignTop);
}
UpdateNotifyWidget::~UpdateNotifyWidget() UpdateNotifyWidget::~UpdateNotifyWidget()
{ {
@@ -35,3 +76,5 @@ void UpdateNotifyWidget::on_closeButton_clicked()
{ {
close(); close();
} }

View File

@@ -14,6 +14,8 @@ class UpdateNotifyWidget;
class MainWindow; class MainWindow;
class UpdateController; class UpdateController;
class InstructorButtonGroupWidget;
class UpdateNotifyWidget : public QWidget class UpdateNotifyWidget : public QWidget
{ {
Q_OBJECT Q_OBJECT
@@ -24,12 +26,20 @@ public:
void addToList(FileData fileData); void addToList(FileData fileData);
~UpdateNotifyWidget(); ~UpdateNotifyWidget();
void showWithFill();
void setButtonWidget(InstructorButtonGroupWidget *widget);
signals: signals:
private slots: private slots:
void on_closeButton_clicked(); void on_closeButton_clicked();
void on_loadToServerButton_clicked();
void on_undoChangesButton_clicked();
void on_startWithCurrentChangesButton_clicked();
private: private:
Ui::UpdateNotifyWidget *ui; Ui::UpdateNotifyWidget *ui;
MainWindow *mainWindow; MainWindow *mainWindow;

View File

@@ -6,48 +6,239 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>726</width> <width>800</width>
<height>429</height> <height>560</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="windowTitle"> <property name="windowTitle">
<string>Form</string> <string>Form</string>
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout"> <widget class="QFrame" name="backgroundUpdate">
<item> <property name="geometry">
<widget class="QLabel" name="NotificationLabel"> <rect>
<property name="text"> <x>0</x>
<string>Обнаружены новые файлы:</string> <y>0</y>
<width>801</width>
<height>561</height>
</rect>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<widget class="QWidget" name="verticalLayoutWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>-10</y>
<width>801</width>
<height>571</height>
</rect>
</property>
<layout class="QVBoxLayout" name="mainLayout">
<property name="spacing">
<number>6</number>
</property>
<property name="leftMargin">
<number>5</number>
</property>
<property name="topMargin">
<number>10</number>
</property>
<property name="rightMargin">
<number>5</number>
</property>
<property name="bottomMargin">
<number>10</number>
</property> </property>
</widget>
</item>
<item>
<widget class="QListWidget" name="updateListWidget"/>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item> <item>
<widget class="QPushButton" name="closeButton"> <layout class="QVBoxLayout" name="updateListLayout">
<property name="minimumSize"> <item>
<size> <widget class="QLabel" name="NotificationLabel">
<width>0</width> <property name="sizePolicy">
<height>35</height> <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
</size> <horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Обнаружены новые файлы:</string>
</property>
</widget>
</item>
<item>
<widget class="QListWidget" name="updateListWidget">
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="updateActionListLabel">
<property name="text">
<string>text</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="ButtonsLayout">
<property name="spacing">
<number>6</number>
</property> </property>
<property name="maximumSize"> <property name="sizeConstraint">
<size> <enum>QLayout::SetDefaultConstraint</enum>
<width>200</width>
<height>16777215</height>
</size>
</property> </property>
<property name="text"> <property name="bottomMargin">
<string>Закрыть</string> <number>0</number>
</property> </property>
</widget> <item>
<widget class="QWidget" name="instructorButtonGroup" native="true">
<property name="enabled">
<bool>true</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>520</width>
<height>45</height>
</size>
</property>
<layout class="QHBoxLayout" name="updateButtonGroup">
<property name="spacing">
<number>5</number>
</property>
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QPushButton" name="loadToServerButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>35</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>40</height>
</size>
</property>
<property name="text">
<string>Выгрузить изменения</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="undoChangesButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>35</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>40</height>
</size>
</property>
<property name="text">
<string>Отменить изменения</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="startWithCurrentChangesButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>35</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>40</height>
</size>
</property>
<property name="text">
<string>Запустить без отправки</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QPushButton" name="closeButton">
<property name="minimumSize">
<size>
<width>0</width>
<height>40</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>200</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Закрыть</string>
</property>
</widget>
</item>
</layout>
</item> </item>
</layout> </layout>
</item> </widget>
</layout> </widget>
</widget> </widget>
<resources/> <resources/>
<connections/> <connections/>

View File

@@ -1,34 +0,0 @@
#include "updatewidget.h"
#include "ui_updatewidget.h"
UpdateWidget::UpdateWidget(QWidget *parent) :
QWidget(parent),
ui(new Ui::UpdateWidget)
{
ui->setupUi(this);
}
void UpdateWidget::initialize()
{
hide();
}
void UpdateWidget::showWithFill()
{
QString text = tr("Есть изменения в локальных файлах <A HREF=\"LINK\" style=color:rgb(45,84,130)>(список)</A> ");
QString list = tr("Возможные действия:\n"
" 1. Выгрузить изменения на сервер\n"
" 2. Отменить изменения с загрузкой версии с сервера \n"
" 3. Запустить без отправки файлов, но с текущими изменениями");
ui->updateListGuideLabel->setText(text);
ui->updateActionListLabel->setText(list);
show();
}
UpdateWidget::~UpdateWidget()
{
delete ui;
}

View File

@@ -1,24 +0,0 @@
#ifndef UPDATEWIDGET_H
#define UPDATEWIDGET_H
#include <QWidget>
namespace Ui {
class UpdateWidget;
}
class UpdateWidget : public QWidget
{
Q_OBJECT
public:
explicit UpdateWidget(QWidget *parent = nullptr);
void initialize();
void showWithFill();
~UpdateWidget();
private:
Ui::UpdateWidget *ui;
};
#endif // UPDATEWIDGET_H

View File

@@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>UpdateWidget</class>
<widget class="QWidget" name="UpdateWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>781</width>
<height>172</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<widget class="QWidget" name="updateWidget" native="true">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>781</width>
<height>171</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_10">
<property name="spacing">
<number>6</number>
</property>
<property name="leftMargin">
<number>5</number>
</property>
<property name="topMargin">
<number>5</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="updateListGuideLabel">
<property name="minimumSize">
<size>
<width>500</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>20</height>
</size>
</property>
<property name="font">
<font>
<family>Calibri</family>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
<string>Есть изменения в локальных файлах</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="updateActionListLabel">
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@@ -11,7 +11,7 @@
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding"> <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch> <horstretch>0</horstretch>
<verstretch>0</verstretch> <verstretch>0</verstretch>
</sizepolicy> </sizepolicy>