void MainWindow::dataSetCloseRequested() { _tableModel->clearDataSet(); _loader.free(_dataSet); _dataSet = NULL; updateMenuEnabledDisabledStatus(); ui->backStage->setFileLoaded(false); ui->webViewResults->reload(); _inited = false; }
void MainWindow::dataSetLoaded(DataSet *dataSet) { _dataSet = dataSet; _tableModel->setDataSet(dataSet); updateMenuEnabledDisabledStatus(); ui->backStage->setFileLoaded(true); _analyses->clear(); ui->tableView->horizontalHeader()->resizeSections(QHeaderView::ResizeToContents); _alert->hide(); if (_inited == false) { ui->webViewResults->page()->mainFrame()->addToJavaScriptWindowObject("jasp", this); _inited = true; } if (_engineSync->engineStarted() == false) _engineSync->start(); }
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; } }
void MainWindow::dataSetLoaded(const QString &dataSetName, DataSetPackage *package, const QString &filename) { setWindowTitle(dataSetName); _tableModel->setDataSet(package->dataSet); ui->backStage->setFileLoaded(true, filename); _analyses->clear(); ui->tableView->horizontalHeader()->resizeSections(QHeaderView::ResizeToContents); _alert->hide(); if (_inited == false) { ui->webViewResults->page()->mainFrame()->addToJavaScriptWindowObject("jasp", this); _inited = true; } if (package->hasAnalyses) { bool errorFound = false; int corruptAnalyses = 0; stringstream errorMsg; stringstream corruptionStrings; Json::Value analysesData = package->analysesData; if (!analysesData.isArray() || analysesData.isNull()) { errorFound = true; errorMsg << "An error has been detected and analyses could not be loaded."; } else { for (Json::ValueIterator iter = analysesData.begin(); iter != analysesData.end(); iter++) { try { QString name = QString(); Json::Value &analysisData = *iter; name = QString::fromStdString(analysisData["name"].asString()); int id = analysisData["id"].asInt(); Json::Value &optionsJson = analysisData["options"]; Json::Value &resultsJson = analysisData["results"]; Analysis::Status status = Analysis::getStatusValue(analysisData["status"].asString()); Analysis *analysis = _analyses->create(name, id, &optionsJson, status); analysis->setResults(resultsJson); } catch (runtime_error e) { errorFound = true; corruptionStrings << "\n" << (++corruptAnalyses) << ": " << e.what(); } catch (exception e) { errorFound = true; corruptionStrings << "\n" << (++corruptAnalyses) << ": " << e.what(); } } } if (corruptAnalyses == 1) errorMsg << "An error was detected in an analyses. This analyses has been removed for the following reason:\n" << corruptionStrings.str(); else if (corruptAnalyses > 1) errorMsg << "Errors were detected in " << corruptAnalyses << " analyses. These analyses have been removed for the following reasons:\n" << corruptionStrings.str(); if (errorFound) QMessageBox::warning(this, "", tq(errorMsg.str())); } package->setLoaded(); updateMenuEnabledDisabledStatus(); if (_engineSync->engineStarted() == false) _engineSync->start(); }