mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +00:00 
			
		
		
		
	Edit the name of the Dive Computer via dialog.
The GTK version seems to be bugged on this, since the dialog doesn't save the dive computer nickname that I setted, but the Qt version shows less dive-computers than the GTK one on the same dive. I want somebody to do a quick review of my code too. :) I also plan to remove the 'OK' and 'Cancel' buttom, they seem to be overrated on this dialog - fairly uneeded. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
This commit is contained in:
		
							parent
							
								
									ebed836ee5
								
							
						
					
					
						commit
						24446f9c3c
					
				
					 2 changed files with 23 additions and 4 deletions
				
			
		|  | @ -1173,7 +1173,6 @@ void DiveComputerModel::update() | |||
| 		nnl = nnl->next; | ||||
| 		count++; | ||||
| 	} | ||||
| 	qDebug() << "Numero de Devices" << count; | ||||
| 
 | ||||
| 	if(numRows){ | ||||
| 		beginRemoveRows(QModelIndex(), 0, numRows-1); | ||||
|  | @ -1186,5 +1185,23 @@ void DiveComputerModel::update() | |||
| 		numRows = count; | ||||
| 		endInsertRows(); | ||||
| 	} | ||||
| 	 | ||||
| } | ||||
| 
 | ||||
| Qt::ItemFlags DiveComputerModel::flags(const QModelIndex& index) const | ||||
| { | ||||
| 	Qt::ItemFlags flags = QAbstractItemModel::flags(index); | ||||
| 	if (index.column() == NICKNAME) | ||||
| 		flags |= Qt::ItemIsEditable; | ||||
|     return flags; | ||||
| } | ||||
| 
 | ||||
| bool DiveComputerModel::setData(const QModelIndex& index, const QVariant& value, int role) | ||||
| { | ||||
| 	struct device_info *nnl = head_of_device_info_list(); | ||||
| 	for(int i = 0; i < index.row(); i++){ | ||||
| 		nnl = nnl->next; | ||||
| 	} | ||||
| 	 | ||||
| 	QByteArray v = value.toByteArray(); | ||||
| 	nnl->nickname = strdup(v.data()); // how should I free this before setting a new one?
 | ||||
| } | ||||
|  |  | |||
|  | @ -177,6 +177,8 @@ public: | |||
|     virtual int columnCount(const QModelIndex& parent = QModelIndex()) const; | ||||
|     virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; | ||||
|     virtual int rowCount(const QModelIndex& parent = QModelIndex()) const; | ||||
|     virtual Qt::ItemFlags flags(const QModelIndex& index) const; | ||||
|     virtual bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole); | ||||
| 	void update(); | ||||
| private: | ||||
| 	int numRows; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue