mirror of
				https://github.com/ciphervance/supercell-wx.git
				synced 2025-10-31 01:20:06 +00:00 
			
		
		
		
	Storing radar site selection
This commit is contained in:
		
							parent
							
								
									f473a02d1d
								
							
						
					
					
						commit
						6977119083
					
				
					 2 changed files with 34 additions and 1 deletions
				
			
		|  | @ -27,7 +27,8 @@ public: | ||||||
|        radarSiteModel_ {new model::RadarSiteModel(self_)}, |        radarSiteModel_ {new model::RadarSiteModel(self_)}, | ||||||
|        proxyModel_ {new QSortFilterProxyModel(self_)}, |        proxyModel_ {new QSortFilterProxyModel(self_)}, | ||||||
|        mapPosition_ {}, |        mapPosition_ {}, | ||||||
|        mapUpdateDeferred_ {false} |        mapUpdateDeferred_ {false}, | ||||||
|  |        selectedRadarSite_ {"?"} | ||||||
|    { |    { | ||||||
|       proxyModel_->setSourceModel(radarSiteModel_); |       proxyModel_->setSourceModel(radarSiteModel_); | ||||||
|       proxyModel_->setSortRole(common::SortRole); |       proxyModel_->setSortRole(common::SortRole); | ||||||
|  | @ -42,6 +43,8 @@ public: | ||||||
| 
 | 
 | ||||||
|    scwx::common::Coordinate mapPosition_; |    scwx::common::Coordinate mapPosition_; | ||||||
|    bool                     mapUpdateDeferred_; |    bool                     mapUpdateDeferred_; | ||||||
|  | 
 | ||||||
|  |    std::string selectedRadarSite_; | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| RadarSiteDialog::RadarSiteDialog(QWidget* parent) : | RadarSiteDialog::RadarSiteDialog(QWidget* parent) : | ||||||
|  | @ -74,6 +77,29 @@ RadarSiteDialog::RadarSiteDialog(QWidget* parent) : | ||||||
|            { |            { | ||||||
|               ui->buttonBox->button(QDialogButtonBox::Ok) |               ui->buttonBox->button(QDialogButtonBox::Ok) | ||||||
|                  ->setEnabled(selected.size() > 0); |                  ->setEnabled(selected.size() > 0); | ||||||
|  | 
 | ||||||
|  |               if (selected.size() > 0) | ||||||
|  |               { | ||||||
|  |                  QModelIndex selectedIndex = | ||||||
|  |                     p->proxyModel_->mapToSource(selected[0].indexes()[0]); | ||||||
|  |                  QVariant variantData = p->radarSiteModel_->data(selectedIndex); | ||||||
|  |                  if (variantData.typeId() == QMetaType::QString) | ||||||
|  |                  { | ||||||
|  |                     p->selectedRadarSite_ = | ||||||
|  |                        variantData.toString().toStdString(); | ||||||
|  |                  } | ||||||
|  |                  else | ||||||
|  |                  { | ||||||
|  |                     logger_->warn("Unexpected selection data type"); | ||||||
|  |                     p->selectedRadarSite_ = "?"; | ||||||
|  |                  } | ||||||
|  |               } | ||||||
|  |               else | ||||||
|  |               { | ||||||
|  |                  p->selectedRadarSite_ = "?"; | ||||||
|  |               } | ||||||
|  | 
 | ||||||
|  |               logger_->debug("Selected: {}", p->selectedRadarSite_); | ||||||
|            }); |            }); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | @ -82,6 +108,11 @@ RadarSiteDialog::~RadarSiteDialog() | ||||||
|    delete ui; |    delete ui; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | std::string RadarSiteDialog::radar_site() const | ||||||
|  | { | ||||||
|  |    return p->selectedRadarSite_; | ||||||
|  | } | ||||||
|  | 
 | ||||||
| void RadarSiteDialog::showEvent(QShowEvent* event) | void RadarSiteDialog::showEvent(QShowEvent* event) | ||||||
| { | { | ||||||
|    if (p->mapUpdateDeferred_) |    if (p->mapUpdateDeferred_) | ||||||
|  |  | ||||||
|  | @ -24,6 +24,8 @@ public: | ||||||
|    explicit RadarSiteDialog(QWidget* parent = nullptr); |    explicit RadarSiteDialog(QWidget* parent = nullptr); | ||||||
|    ~RadarSiteDialog(); |    ~RadarSiteDialog(); | ||||||
| 
 | 
 | ||||||
|  |    std::string radar_site() const; | ||||||
|  | 
 | ||||||
| protected: | protected: | ||||||
|    void showEvent(QShowEvent*) override; |    void showEvent(QShowEvent*) override; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Dan Paulat
						Dan Paulat