void MainWindow::showForm(Analysis *analysis) { closeCurrentOptionsWidget(); _currentOptionsWidget = loadForm(analysis); if (_currentOptionsWidget != NULL) { Options *options = analysis->options(); DataSet *dataSet = _package->dataSet; _currentOptionsWidget->bindTo(options, dataSet); connect(_currentOptionsWidget, SIGNAL(illegalChanged()), this, SLOT(illegalOptionStateChanged())); illegalOptionStateChanged(); _currentOptionsWidget->show(); ui->optionsContentAreaLayout->addWidget(_currentOptionsWidget, 0, 0, Qt::AlignLeft | Qt::AlignTop); if (ui->panelMid->isVisible() == false) showOptionsPanel(); _runButton->setVisible(_currentAnalysis->isAutorun() == false); _runButton->setEnabled(_currentAnalysis->status() == Analysis::InitedAndWaiting); _buttonPanel->raise(); _buttonPanel->show(); QString helpPage = QString("analyses/") + tq(analysis->name()).toLower(); requestHelpPage(helpPage); } }
void MainWindow::showForm(Analysis *analysis) { closeCurrentOptionsWidget(); _currentOptionsWidget = loadForm(analysis); if (_currentOptionsWidget != NULL) { //sizing of options widget and panel to fit buttons and conform to largest size for consistency QObjectList siblings = _currentOptionsWidget->children(); for (QObjectList::Iterator itr = siblings.begin(); itr != siblings.end(); itr++) { QWidget* w = dynamic_cast<QWidget*>(*itr); if (w != NULL && w->objectName() == "topWidget") { w->setContentsMargins(0, 0, _buttonPanel->width(), 0); break; } } int requiredSize = _currentOptionsWidget->sizeHint().width(); int currentOptionSpace = ui->panelMid->minimumWidth() - _scrollbarWidth; if (requiredSize > currentOptionSpace) { ui->panelMid->setMinimumWidth(requiredSize + _scrollbarWidth); _buttonPanel->move(ui->panelMid->width() - _buttonPanel->width() - _scrollbarWidth, 0); } _currentOptionsWidget->setMinimumWidth(ui->panelMid->minimumWidth() - _scrollbarWidth); //######################### Options *options = analysis->options(); DataSet *dataSet = _package->dataSet; _currentOptionsWidget->bindTo(options, dataSet); connect(_currentOptionsWidget, SIGNAL(illegalChanged()), this, SLOT(illegalOptionStateChanged())); illegalOptionStateChanged(); _currentOptionsWidget->show(); ui->optionsContentAreaLayout->addWidget(_currentOptionsWidget,0, 0, Qt::AlignRight | Qt::AlignTop); if (ui->panelMid->isVisible() == false) showOptionsPanel(); _runButton->setVisible(_currentAnalysis->isAutorun() == false); _runButton->setEnabled(_currentAnalysis->status() == Analysis::InitedAndWaiting); _buttonPanel->raise(); _buttonPanel->show(); QString helpPage = QString("analyses/") + tq(analysis->name()).toLower(); requestHelpPage(helpPage); } }
void MainWindow::dataSetCloseRequested() { bool isSaving = false; if (_dataSetClosing || !closeRequestCheck(isSaving)) { if (isSaving) { _dataSetClosing = true; return; } closeCurrentOptionsWidget(); hideOptionsPanel(); _tableModel->clearDataSet(); _loader.free(_package->dataSet); _package->reset(); updateMenuEnabledDisabledStatus(); ui->backStage->setFileLoaded(false, NULL); ui->webViewResults->reload(); _dataSetClosing = false; setWindowTitle("JASP"); _inited = false; } }