28 lines
989 B
C++
28 lines
989 B
C++
#include "DatasetDetailController.hpp"
|
|
#include <stdexcept>
|
|
#include "repo/IDatasetRepository.hpp"
|
|
namespace geopro::controller {
|
|
|
|
DatasetDetailController::DatasetDetailController(data::IDatasetRepository& repo, QObject* parent)
|
|
: QObject(parent), repo_(repo) {}
|
|
|
|
void DatasetDetailController::openDataset(const QString& dsId, const QString& ddCode) {
|
|
const std::string id = dsId.toStdString();
|
|
try {
|
|
ChartData d;
|
|
d.dsId = dsId;
|
|
d.ddCode = ddCode;
|
|
d.scatter = repo_.loadScatter(id);
|
|
d.scatterScale = repo_.loadScatterColorScale(id);
|
|
d.grid = repo_.loadGrid(id);
|
|
d.gridScale = repo_.loadColorScale(id);
|
|
d.anomalies = repo_.loadAnomalies(id);
|
|
emit chartReady(d);
|
|
} catch (const std::exception& e) {
|
|
emit loadFailed(dsId, QString::fromStdString(e.what()));
|
|
}
|
|
}
|
|
|
|
void DatasetDetailController::focusDataset(const QString& dsId) { emit focusRequested(dsId); }
|
|
} // namespace geopro::controller
|