Correctly change the dive_site name

Correctly change and update the dive_site, updating the name on the
combobox or other attached views.

Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Tomaz Canabrava 2015-06-01 22:16:07 -03:00 committed by Dirk Hohndel
parent 64753e0682
commit a9ba98942c
3 changed files with 22 additions and 4 deletions

View file

@ -202,9 +202,12 @@ void LocationInformationWidget::on_diveSiteDescription_textChanged(const QString
void LocationInformationWidget::on_diveSiteName_textChanged(const QString& text)
{
if (!currentDs || !same_string(qPrintable(text), currentDs->name)) {
free(displayed_dive_site.name);
displayed_dive_site.name = copy_string(qPrintable(text));
if (currentDs && text != currentDs->name) {
// This needs to be changed directly into the model so that
// the changes are replyed on the ComboBox with the current selection.
QModelIndex idx = ui.currentLocation->model()->index(ui.currentLocation->currentIndex(),0);
LocationInformationModel::instance()->setData(idx, text, Qt::EditRole);
markChangedWidget(ui.diveSiteName);
emit coordinatesChanged();
}