From 8abee4cda1bc2badc6508124f883d44cbce656d9 Mon Sep 17 00:00:00 2001 From: Dan Paulat Date: Wed, 14 Sep 2022 23:17:31 -0500 Subject: [PATCH] Creating Radar Product Model --- scwx-qt/scwx-qt.cmake | 6 ++++ .../scwx/qt/model/radar_product_model.cpp | 30 +++++++++++++++++++ .../scwx/qt/model/radar_product_model.hpp | 28 +++++++++++++++++ 3 files changed, 64 insertions(+) create mode 100644 scwx-qt/source/scwx/qt/model/radar_product_model.cpp create mode 100644 scwx-qt/source/scwx/qt/model/radar_product_model.hpp diff --git a/scwx-qt/scwx-qt.cmake b/scwx-qt/scwx-qt.cmake index 482aaad5..7ad527eb 100644 --- a/scwx-qt/scwx-qt.cmake +++ b/scwx-qt/scwx-qt.cmake @@ -73,6 +73,8 @@ set(SRC_MAP source/scwx/qt/map/color_table_layer.cpp source/scwx/qt/map/overlay_layer.cpp source/scwx/qt/map/radar_product_layer.cpp source/scwx/qt/map/radar_range_layer.cpp) +set(HDR_MODEL source/scwx/qt/model/radar_product_model.hpp) +set(SRC_MODEL source/scwx/qt/model/radar_product_model.cpp) set(HDR_REQUEST source/scwx/qt/request/nexrad_file_request.hpp) set(SRC_REQUEST source/scwx/qt/request/nexrad_file_request.cpp) set(HDR_SETTINGS source/scwx/qt/settings/general_settings.hpp @@ -140,6 +142,8 @@ set(PROJECT_SOURCES ${HDR_MAIN} ${UI_MAIN} ${HDR_MAP} ${SRC_MAP} + ${HDR_MODEL} + ${SRC_MODEL} ${HDR_REQUEST} ${SRC_REQUEST} ${HDR_SETTINGS} @@ -172,6 +176,8 @@ source_group("Source Files\\manager" FILES ${SRC_MANAGER}) source_group("UI Files\\main" FILES ${UI_MAIN}) source_group("Header Files\\map" FILES ${HDR_MAP}) source_group("Source Files\\map" FILES ${SRC_MAP}) +source_group("Header Files\\model" FILES ${HDR_MODEL}) +source_group("Source Files\\model" FILES ${SRC_MODEL}) source_group("Header Files\\request" FILES ${HDR_REQUEST}) source_group("Source Files\\request" FILES ${SRC_REQUEST}) source_group("Header Files\\settings" FILES ${HDR_SETTINGS}) diff --git a/scwx-qt/source/scwx/qt/model/radar_product_model.cpp b/scwx-qt/source/scwx/qt/model/radar_product_model.cpp new file mode 100644 index 00000000..cd0ff8c5 --- /dev/null +++ b/scwx-qt/source/scwx/qt/model/radar_product_model.cpp @@ -0,0 +1,30 @@ +#include +#include + +namespace scwx +{ +namespace qt +{ +namespace model +{ + +static const std::string logPrefix_ = "scwx::qt::model::radar_product_model"; +static const auto logger_ = scwx::util::Logger::Create(logPrefix_); + +class RadarProductModelImpl +{ +public: + explicit RadarProductModelImpl() {} + + ~RadarProductModelImpl() {} +}; + +RadarProductModel::RadarProductModel(QObject* parent) : + QAbstractTableModel(parent), p(std::make_unique()) +{ +} +RadarProductModel::~RadarProductModel() = default; + +} // namespace model +} // namespace qt +} // namespace scwx diff --git a/scwx-qt/source/scwx/qt/model/radar_product_model.hpp b/scwx-qt/source/scwx/qt/model/radar_product_model.hpp new file mode 100644 index 00000000..25980534 --- /dev/null +++ b/scwx-qt/source/scwx/qt/model/radar_product_model.hpp @@ -0,0 +1,28 @@ +#pragma once + +#include + +#include + +namespace scwx +{ +namespace qt +{ +namespace model +{ + +class RadarProductModelImpl; + +class RadarProductModel : QAbstractTableModel +{ +public: + explicit RadarProductModel(QObject* parent = nullptr); + ~RadarProductModel(); + +private: + std::unique_ptr p; +}; + +} // namespace model +} // namespace qt +} // namespace scwx