aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--desktop-widgets/locationinformation.cpp27
-rw-r--r--desktop-widgets/locationinformation.h4
2 files changed, 9 insertions, 22 deletions
diff --git a/desktop-widgets/locationinformation.cpp b/desktop-widgets/locationinformation.cpp
index f2b9fbcaa..28f3fa619 100644
--- a/desktop-widgets/locationinformation.cpp
+++ b/desktop-widgets/locationinformation.cpp
@@ -9,6 +9,7 @@
#include "core/divesitehelpers.h"
#include "desktop-widgets/modeldelegates.h"
#include "core/subsurface-qt/DiveListNotifier.h"
+#include "command.h"
#include <QDebug>
#include <QShowEvent>
@@ -180,20 +181,6 @@ void LocationInformationWidget::acceptChanges()
}
char *uiString;
- uiString = copy_qstring(ui.diveSiteName->text());
- if (!same_string(uiString, diveSite->name)) {
- free(diveSite->name);
- diveSite->name = uiString;
- } else {
- free(uiString);
- }
- uiString = copy_qstring(ui.diveSiteDescription->text());
- if (!same_string(uiString, diveSite->description)) {
- free(diveSite->description);
- diveSite->description = uiString;
- } else {
- free(uiString);
- }
uiString = copy_qstring(ui.diveSiteCountry->text());
// if the user entered a different country, first update the local taxonomy
// this below will get copied into the diveSite
@@ -301,16 +288,16 @@ void LocationInformationWidget::on_diveSiteCountry_textChanged(const QString& te
markChangedWidget(ui.diveSiteCountry);
}
-void LocationInformationWidget::on_diveSiteDescription_textChanged(const QString &text)
+void LocationInformationWidget::on_diveSiteDescription_editingFinished()
{
- if (diveSite && !same_string(qPrintable(text), diveSite->description))
- markChangedWidget(ui.diveSiteDescription);
+ if (diveSite)
+ Command::editDiveSiteDescription(diveSite, ui.diveSiteDescription->text());
}
-void LocationInformationWidget::on_diveSiteName_textChanged(const QString &text)
+void LocationInformationWidget::on_diveSiteName_editingFinished()
{
- if (diveSite && !same_string(qPrintable(text), diveSite->name))
- markChangedWidget(ui.diveSiteName);
+ if (diveSite)
+ Command::editDiveSiteName(diveSite, ui.diveSiteName->text());
}
void LocationInformationWidget::on_diveSiteNotes_textChanged()
diff --git a/desktop-widgets/locationinformation.h b/desktop-widgets/locationinformation.h
index 9697b4986..b97ceca18 100644
--- a/desktop-widgets/locationinformation.h
+++ b/desktop-widgets/locationinformation.h
@@ -31,8 +31,8 @@ public slots:
void resetPallete();
void on_diveSiteCountry_textChanged(const QString& text);
void on_diveSiteCoordinates_textChanged(const QString& text);
- void on_diveSiteDescription_textChanged(const QString& text);
- void on_diveSiteName_textChanged(const QString& text);
+ void on_diveSiteDescription_editingFinished();
+ void on_diveSiteName_editingFinished();
void on_diveSiteNotes_textChanged();
void reverseGeocode();
void mergeSelectedDiveSites();