On Tue, 13 Mar 2012, Oliver Eichler wrote:
Am 12.03.2012 22:57, schrieb Michael Klein:
The arrached patch makes the username for geonames.org requests
configurable.
Regards,
Michael
Hi Michaelm
good idea! But can you do me a favor and add this to CDlgConvertToTrack.
Imho no one will expect it in the config dialog. Simply show a line edit
if the radio button is selected. And store the name in the configuration
file as already done.
Ok, it's in CDlgConvertToTrack now.
I couldn't make the dialog resize properly without jumping and/or
flickering when the line edit is shown or hidden. So for now, the line
edit is always shown, but only enabled if the radio button is selected.
Regards,
Michael
From eb23b9158e643e74e08ca04c788e2fc9ba722e1d Mon Sep 17 00:00:00 2001
From: Michael Klein <[email protected]>
Date: Mon, 12 Mar 2012 22:50:29 +0100
Subject: [PATCH] make username for geonames.org configurable
---
src/CDlgConvertToTrack.cpp | 10 ++++++++--
src/CDlgConvertToTrack.h | 4 +++-
src/CTrack.cpp | 6 +++++-
src/IDlgConfig.ui | 2 +-
src/IDlgConvertToTrack.ui | 35 +++++++++++++++++++++++++++++++++++
5 files changed, 52 insertions(+), 5 deletions(-)
diff --git a/src/CDlgConvertToTrack.cpp b/src/CDlgConvertToTrack.cpp
index fca9f7c..9982801 100644
--- a/src/CDlgConvertToTrack.cpp
+++ b/src/CDlgConvertToTrack.cpp
@@ -38,21 +38,27 @@ CDlgConvertToTrack::CDlgConvertToTrack(QWidget * parent)
comboDelta->addItem(tr("1 km"), 1000);
SETTINGS;
+
+ connect(radioEleFromRemote, SIGNAL(toggled(bool)),
widgetGeonamesOrgUsername, SLOT(setEnabled(bool)));
+
comboDelta->setCurrentIndex(cfg.value("overlay/convert/intervall",
0).toInt());
radioNoEle->setChecked(cfg.value("overlay/convert/noele", true).toBool());
radioEleFromLocal->setChecked(cfg.value("overlay/convert/local",
false).toBool());
radioEleFromRemote->setChecked(cfg.value("overlay/convert/remote",
false).toBool());
-
+ editGeonamesOrgUsername->setText(cfg.value("geonames/username",
"demo").toString());
}
-CDlgConvertToTrack::~CDlgConvertToTrack()
+void CDlgConvertToTrack::accept()
{
SETTINGS;
cfg.setValue("overlay/convert/intervall", comboDelta->currentIndex());
cfg.setValue("overlay/convert/noele", radioNoEle->isChecked());
cfg.setValue("overlay/convert/local", radioEleFromLocal->isChecked());
cfg.setValue("overlay/convert/remote", radioEleFromRemote->isChecked());
+ cfg.setValue("geonames/username", editGeonamesOrgUsername->text());
+
+ QDialog::accept();
}
diff --git a/src/CDlgConvertToTrack.h b/src/CDlgConvertToTrack.h
index 0ff0528..fd5eecb 100644
--- a/src/CDlgConvertToTrack.h
+++ b/src/CDlgConvertToTrack.h
@@ -28,11 +28,13 @@ class CDlgConvertToTrack : public QDialog, private
Ui::IDlgConvertToTrack
Q_OBJECT;
public:
CDlgConvertToTrack(QWidget * parent);
- virtual ~CDlgConvertToTrack();
enum EleMode_e {eNone, eLocal, eRemote};
int getDelta();
EleMode_e getEleMode();
+
+ public slots:
+ void accept();
};
#endif //CDLGCONVERTTOTRACK_H
diff --git a/src/CTrack.cpp b/src/CTrack.cpp
index a822e25..08e07ed 100644
--- a/src/CTrack.cpp
+++ b/src/CTrack.cpp
@@ -26,6 +26,7 @@
#include "CCanvas.h"
#include "CWptDB.h"
#include "CTrackDB.h"
+#include "CSettings.h"
#include <QtGui>
#include <QtNetwork/QHttp>
@@ -587,6 +588,9 @@ void CTrack::replaceElevationByLocal()
void CTrack::replaceElevationByRemote()
{
+ SETTINGS;
+ QString username = cfg.value("geonames/username","demo").toString();
+
int idx = 0, id;
const int size = track.size();
@@ -607,7 +611,7 @@ void CTrack::replaceElevationByRemote()
url.setPath("/srtm3");
url.addQueryItem("lats",lats.join(","));
url.addQueryItem("lngs",lngs.join(","));
- url.addQueryItem("username","demo");
+ url.addQueryItem("username",username);
id = geonames->get(url.toEncoded( ));
id2idx[id] = idx;
diff --git a/src/IDlgConfig.ui b/src/IDlgConfig.ui
index 75dc160..9b3a4b9 100644
--- a/src/IDlgConfig.ui
+++ b/src/IDlgConfig.ui
@@ -17,7 +17,7 @@
<item>
<widget class="QTabWidget" name="tabWidget">
<property name="currentIndex">
- <number>3</number>
+ <number>0</number>
</property>
<widget class="QWidget" name="tab">
<attribute name="title">
diff --git a/src/IDlgConvertToTrack.ui b/src/IDlgConvertToTrack.ui
index 0639f5c..443530f 100644
--- a/src/IDlgConvertToTrack.ui
+++ b/src/IDlgConvertToTrack.ui
@@ -60,6 +60,41 @@
</property>
</widget>
</item>
+ <item>
+ <widget class="QWidget" name="widgetGeonamesOrgUsername" native="true">
+ <layout class="QHBoxLayout" name="boxGeonamesOrgUsername">
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="QLabel" name="labelGeonamesOrgUsername">
+ <property name="text">
+ <string>Username:</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLineEdit" name="editGeonamesOrgUsername"/>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
</layout>
</widget>
</item>
--
1.7.9
------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Qlandkartegt-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qlandkartegt-users