void StateTextureControl::updateCoord() { MyGUI::UString value; if (getCurrentSkin() != nullptr) value = getCurrentSkin()->getPropertySet()->getPropertyValue("Coord"); MyGUI::IntCoord coord; if (MyGUI::utility::parseComplex(value, coord.left, coord.top, coord.width, coord.height)) { if (mSizeValue != coord.size()) { mSizeValue = coord.size(); updateSelectorsSize(); } } }
DataWindow::DataWindow(Information *info, int ind) { index = ind; xindex = STARTING_XPIN_INDEX; yindex = STARTING_YPIN_INDEX; ui = new Ui::DataWindow; ui->setupUi(this); widgetState = WIDGET_OPENED; widgetOpenAnimation = new QPropertyAnimation(ui->actionsContainerWidget, "maximumWidth", this); widgetOpenAnimation->setDuration(WIDGET_ANIMATION_TIME); widgetOpenAnimation->setEasingCurve(QEasingCurve::OutCubic); widgetCloseAnimation = new QPropertyAnimation(ui->actionsContainerWidget, "maximumWidth", this); widgetCloseAnimation->setDuration(WIDGET_ANIMATION_TIME); widgetCloseAnimation->setEasingCurve(QEasingCurve::OutCubic); windowOpenAnimation = new QPropertyAnimation(this, "geometry", this); windowOpenAnimation->setDuration(WIDGET_ANIMATION_TIME); windowOpenAnimation->setEasingCurve(QEasingCurve::OutCubic); windowCloseAnimation = new QPropertyAnimation(this, "geometry", this); windowCloseAnimation->setDuration(WIDGET_ANIMATION_TIME); windowCloseAnimation->setEasingCurve(QEasingCurve::OutCubic); openAnimation = new QParallelAnimationGroup(this); openAnimation->addAnimation(widgetOpenAnimation); openAnimation->addAnimation(windowOpenAnimation); connect(openAnimation, SIGNAL(finished()), this, SLOT(animationFinished())); closeAnimation = new QParallelAnimationGroup(this); closeAnimation->addAnimation(widgetCloseAnimation); closeAnimation->addAnimation(windowCloseAnimation); connect(closeAnimation, SIGNAL(finished()), this, SLOT(animationFinished())); connect(ui->retractionButton, SIGNAL(released()), this, SLOT(startAnimation())); setWindowTitle(tr("Data fill window: data") + QString::number(ind+1)); information = info; selectorSide = COLUMN_SELECTION; dataTable = new DataTable(info, STARTING_ROW_COUNT, STARTING_COLUMN_COUNT, ROW_HEIGHT, COLUMN_WIDTH); columnSelector = new ColumnSelectorWidget(STARTING_COLUMN_COUNT, STARTING_XPIN_INDEX, STARTING_YPIN_INDEX, STARTING_SELECTOR_INDEX); columnActionsWidget = new ColumnActionsWidget(dataTable, info, STARTING_COLUMN_COUNT); rowSelector = new RowSelectorWidget(STARTING_ROW_COUNT); rowActionsWidget = new RowActionsWidget(STARTING_ROW_COUNT); QHBoxLayout *columnSelectorLayout = new QHBoxLayout(); columnSelectorLayout->setMargin(0); columnSelectorLayout->setSpacing(0); columnSelectorSpacer = new QWidget(); columnSelector->setFixedHeight(COLUMN_SELECTOR_HEIGHT); columnSelectorLayout->addWidget(columnSelectorSpacer); columnSelectorLayout->addWidget(columnSelector); columnSelectorLayout->addStretch(); ui->tableLayout->addLayout(columnSelectorLayout); QVBoxLayout *rowSelectorLayout = new QVBoxLayout(); rowSelectorLayout->setMargin(0); rowSelectorLayout->setSpacing(0); rowSelectorSpacer = new QWidget(); rowSelector->setFixedWidth(ROW_SELECTOR_WIDTH); rowSelectorLayout->addWidget(rowSelectorSpacer); rowSelectorLayout->addWidget(rowSelector); rowSelectorLayout->addStretch(); QHBoxLayout *secondLayout = new QHBoxLayout(); secondLayout->setMargin(0); secondLayout->setSpacing(0); secondLayout->addLayout(rowSelectorLayout); secondLayout->addWidget(dataTable); ui->tableLayout->addLayout(secondLayout); ui->tableLayout->addStretch(); updateSelectorsSize(); connect(dataTable, SIGNAL(newPosCorrections()), this, SLOT(updateSelectorsSize())); connect(dataTable, SIGNAL(newColumnCount(int)), this, SLOT(updateSelectorsSize())); connect(dataTable, SIGNAL(newRowCount(int)), this, SLOT(updateSelectorsSize())); columnSelector->updateSelectorsPos(); rowSelector->updateSelectorsPos(); ui->actionsLayout->addWidget(columnActionsWidget); ui->actionsLayout->addWidget(rowActionsWidget); rowActionsWidget->hide(); csvHandler = new CSVhandler(this); connect(csvHandler, SIGNAL(dataFromCSV(QList<QStringList>)), dataTable, SLOT(addData(QList<QStringList>))); connect(ui->open, SIGNAL(released()), this, SLOT(openData())); connect(ui->save, SIGNAL(released()), this, SLOT(saveData())); connect(columnSelector, SIGNAL(newSelectorPos(bool,int)), columnActionsWidget, SLOT(setSelectorPos(bool,int))); connect(columnSelector, SIGNAL(askForSelector()), rowSelector, SLOT(askedForSelector())); connect(columnSelector, SIGNAL(askForSelector()), this, SLOT(selectorInColumnSelection())); connect(columnSelector, SIGNAL(newSelectorPos(bool,int)), this, SLOT(selectorPosChanged(bool,int))); connect(columnSelector, SIGNAL(newXIndex(int)), this, SLOT(dataChanged())); connect(columnSelector, SIGNAL(newYIndex(int)), this, SLOT(dataChanged())); connect(rowSelector, SIGNAL(askForSelector()), this, SLOT(selectorInRowSelection())); connect(rowSelector, SIGNAL(askForSelector()), columnSelector, SLOT(askedForSelector())); connect(rowSelector, SIGNAL(newIndex(bool,int)), this, SLOT(selectorPosChanged(bool,int))); connect(rowSelector, SIGNAL(newIndex(bool,int)), rowActionsWidget, SLOT(setSelectorPos(bool,int))); connect(rowActionsWidget, SIGNAL(insertRowClicked(int)), dataTable, SLOT(insertRow(int))); connect(rowActionsWidget, SIGNAL(removeRowClicked(int)), dataTable, SLOT(removeRow(int))); connect(columnActionsWidget, SIGNAL(insertColumnClicked(int)), dataTable, SLOT(insertColumn(int))); connect(columnActionsWidget, SIGNAL(removeColumnClicked(int)), dataTable, SLOT(removeColumn(int))); connect(dataTable, SIGNAL(newColumnCount(int)), columnSelector, SLOT(setColumnCount(int))); connect(dataTable, SIGNAL(newColumnCount(int)), columnActionsWidget, SLOT(setColumnCount(int))); connect(dataTable, SIGNAL(newRowCount(int)), rowSelector, SLOT(setRowCount(int))); connect(dataTable, SIGNAL(newRowCount(int)), rowActionsWidget, SLOT(setRowCount(int))); connect(dataTable, SIGNAL(valEdited(int,int)), this, SLOT(cellValChanged(int,int))); connect(dataTable, SIGNAL(newColumnName(int)), this, SLOT(columnNameChanged(int))); connect(dataTable, SIGNAL(columnMoved(int,int,int)), this, SLOT(columnMoved(int,int,int))); connect(ui->cartesian, SIGNAL(toggled(bool)), columnSelector, SLOT(setCoordinateSystem(bool))); connect(ui->cartesian, SIGNAL(toggled(bool)), this, SLOT(remakeDataList())); //connect to row actions widget connect(ui->addModel, SIGNAL(released()), this, SLOT(addModel())); connect(ui->polar, SIGNAL(toggled(bool)), this, SLOT(coordinateSystemChanged(bool))); connect(ui->help, SIGNAL(released()), this, SIGNAL(showHelpWindow())); }