mirror of
				https://github.com/ciphervance/supercell-wx.git
				synced 2025-10-31 02:20:04 +00:00 
			
		
		
		
	A few UI changes to location markers part2
This commit is contained in:
		
							parent
							
								
									3f5a0056e4
								
							
						
					
					
						commit
						a3e9d68dc4
					
				
					 3 changed files with 30 additions and 7 deletions
				
			
		|  | @ -23,6 +23,9 @@ namespace scwx::qt::ui | |||
| static const std::string logPrefix_ = "scwx::qt::ui::edit_marker_dialog"; | ||||
| static const auto        logger_    = scwx::util::Logger::Create(logPrefix_); | ||||
| 
 | ||||
| static const QString addingTitle_  = QObject::tr("Add Location Marker"); | ||||
| static const QString editingTitle_ = QObject::tr("Edit Location Marker"); | ||||
| 
 | ||||
| class EditMarkerDialog::Impl | ||||
| { | ||||
| public: | ||||
|  | @ -32,6 +35,7 @@ public: | |||
|    void show_icon_file_dialog(); | ||||
| 
 | ||||
|    void set_icon_color(const std::string& color); | ||||
|    void set_adding(bool adding); | ||||
| 
 | ||||
|    void connect_signals(); | ||||
| 
 | ||||
|  | @ -58,6 +62,24 @@ QIcon EditMarkerDialog::Impl::get_colored_icon( | |||
|                                QColor(QString::fromStdString(color))); | ||||
| } | ||||
| 
 | ||||
| void EditMarkerDialog::Impl::set_adding(bool adding) | ||||
| { | ||||
|    if (adding == adding_) | ||||
|    { | ||||
|       return; | ||||
|    } | ||||
| 
 | ||||
|    if (adding) | ||||
|    { | ||||
|       self_->setWindowTitle(addingTitle_); | ||||
|    } | ||||
|    else | ||||
|    { | ||||
|       self_->setWindowTitle(editingTitle_); | ||||
|    } | ||||
|    adding_ = adding; | ||||
| } | ||||
| 
 | ||||
| EditMarkerDialog::EditMarkerDialog(QWidget* parent) : | ||||
|     QDialog(parent), | ||||
|     p {std::make_unique<Impl>(this)}, | ||||
|  | @ -84,7 +106,7 @@ EditMarkerDialog::~EditMarkerDialog() | |||
| 
 | ||||
| void EditMarkerDialog::setup() | ||||
| { | ||||
|    setup(0, 0); | ||||
|    setup(0.0, 0.0); | ||||
| } | ||||
| 
 | ||||
| void EditMarkerDialog::setup(double latitude, double longitude) | ||||
|  | @ -102,11 +124,10 @@ void EditMarkerDialog::setup(double latitude, double longitude) | |||
|                                  static_cast<uint8_t>(color.blue()), | ||||
|                                  static_cast<uint8_t>(color.alpha())})); | ||||
| 
 | ||||
|    setup(p->editId_); | ||||
|    p->adding_ = true; | ||||
|    setup(p->editId_, true); | ||||
| } | ||||
| 
 | ||||
| void EditMarkerDialog::setup(types::MarkerId id) | ||||
| void EditMarkerDialog::setup(types::MarkerId id, bool adding) | ||||
| { | ||||
|    std::optional<types::MarkerInfo> marker = p->markerManager_->get_marker(id); | ||||
|    if (!marker) | ||||
|  | @ -115,7 +136,7 @@ void EditMarkerDialog::setup(types::MarkerId id) | |||
|    } | ||||
| 
 | ||||
|    p->editId_ = id; | ||||
|    p->adding_ = false; | ||||
|    p->set_adding(adding); | ||||
| 
 | ||||
|    const std::string iconColorStr = | ||||
|       util::color::ToArgbString(marker->iconColor); | ||||
|  | @ -300,6 +321,8 @@ void EditMarkerDialog::Impl::set_icon_color(const std::string& color) | |||
| 
 | ||||
| void EditMarkerDialog::Impl::handle_accepted() | ||||
| { | ||||
|    // switch to editing to that canceling after applying does not delete it
 | ||||
|    set_adding(false); | ||||
|    markerManager_->set_marker(editId_, self_->get_marker_info()); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -21,7 +21,7 @@ public: | |||
| 
 | ||||
|    void setup(); | ||||
|    void setup(double latitude, double longitude); | ||||
|    void setup(types::MarkerId id); | ||||
|    void setup(types::MarkerId id, bool adding = false); | ||||
| 
 | ||||
|    [[nodiscard]] types::MarkerInfo get_marker_info() const; | ||||
| 
 | ||||
|  |  | |||
|  | @ -11,7 +11,7 @@ | |||
|    </rect> | ||||
|   </property> | ||||
|   <property name="windowTitle"> | ||||
|    <string>Marker Manager</string> | ||||
|    <string>Location Marker Manager</string> | ||||
|   </property> | ||||
|   <layout class="QVBoxLayout" name="verticalLayout"> | ||||
|    <item> | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 AdenKoperczak
						AdenKoperczak