------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee. http://bugs.kde.org/show_bug.cgi?id=111560 ------- Additional Comments From caulier.gilles free fr 2006-09-27 10:52 ------- SVN commit 588865 by cgilles: kipi-plugins from trunk : GPSSync tool : use a KHTMLPart widget to embed web locator page in GPS positions editor dialog CCMAIL: gerhard kulzer net CCBUGS: 133359, 111560 M +1 -1 Makefile.am M +22 -16 gpseditdialog.cpp M +1 -1 gpseditdialog.h M +5 -0 gpssyncdialog.cpp --- trunk/extragear/libs/kipi-plugins/gpssync/Makefile.am #588864:588865 @ -14,7 +14,7 @ # Libs needed by the plugin kipiplugin_gpssync_la_LIBADD = $(top_builddir)/kipi-plugins/common/exiv2iface/libexiv2iface.la \ - $(LIBKIPI_LIBS) $(LIB_KDEUI) $(LIB_KDECORE) $(LIB_QT) + $(LIBKIPI_LIBS) $(LIB_KDEUI) $(LIB_KHTML) $(LIB_KDECORE) $(LIB_QT) # LD flags for the plugin kipiplugin_gpssync_la_LDFLAGS = -module $(KDE_PLUGIN) $(all_libraries) --- trunk/extragear/libs/kipi-plugins/gpssync/gpseditdialog.cpp #588864:588865 @ -21,6 +21,7 @ // Qt includes. #include <qlabel.h> +#include <qframe.h> #include <qlayout.h> #include <qcombobox.h> #include <qpushbutton.h> @ -34,6 +35,8 @ #include <kapplication.h> #include <klineedit.h> #include <kmessagebox.h> +#include <khtml_part.h> +#include <khtmlview.h> // Local includes. @ -60,17 +63,17 @ altitudeInput = 0; latitudeInput = 0; longitudeInput = 0; - gpsButton = 0; gpsCombo = 0; + worldMap = 0; } - QPushButton *gpsButton; - QComboBox *gpsCombo; KLineEdit *altitudeInput; KLineEdit *latitudeInput; KLineEdit *longitudeInput; + + KHTMLPart *worldMap; }; GPSEditDialog::GPSEditDialog(QWidget* parent, GPSDataContainer gpsData, @ -84,7 +87,7 @ setHelp("gpssync", "kipi-plugins"); setButtonText(User1, i18n("Delete")); - QGridLayout* grid = new QGridLayout(plainPage(), 3, 2, 0, spacingHint()); + QGridLayout* grid = new QGridLayout(plainPage(), 4, 3, 0, spacingHint()); QLabel *altitudeLabel = new QLabel(i18n("Altitude:"), plainPage()); QLabel *latitudeLabel = new QLabel(i18n("Latitude:"), plainPage()); @ -106,8 +109,12 @ d->latitudeInput->setText(QString::number(gpsData.latitude(), 'g', 12)); d->longitudeInput->setText(QString::number(gpsData.longitude(), 'g', 12)); + d->worldMap = new KHTMLPart(plainPage()); + /*d->worldMap->openURL(KURL("/home/gilles/Documents/Devel/SVN/trunk/extragear/libs/kipi-plugins/gpssync/getlonlat.html"));*/ + d->worldMap->view()->resize(640, 480); + d->worldMap->show(); + d->gpsCombo = new QComboBox( false, plainPage() ); - d->gpsButton = new QPushButton(i18n("Get GPS Coordinates..."), plainPage()); d->gpsCombo->insertItem(QString("Capelinks"), GPSEditDialogDialogPrivate::CapeLinks); d->gpsCombo->insertItem(QString("MapKi"), GPSEditDialogDialogPrivate::MapKi); @ -123,10 +130,12 @ grid->addMultiCellWidget(latResetButton, 1, 1, 2, 2); grid->addMultiCellWidget(lonResetButton, 2, 2, 2, 2); grid->addMultiCellWidget(d->gpsCombo, 3, 3, 0, 0); - grid->addMultiCellWidget(d->gpsButton, 3, 3, 1, 2); + grid->addMultiCellWidget(d->worldMap->view(), 0, 4, 3, 3); + grid->setColStretch(3, 10); + grid->setRowStretch(4, 10); - connect(d->gpsButton, SIGNAL(clicked()), - this, SLOT(slotGPSLocator())); + connect(d->gpsCombo, SIGNAL(activated(int)), + this, SLOT(slotGPSLocator(int))); connect(altResetButton, SIGNAL(clicked()), d->altitudeInput, SLOT(clear())); @ -138,6 +147,7 @ d->longitudeInput, SLOT(clear())); adjustSize(); + slotGPSLocator(d->gpsCombo->currentItem()); } GPSEditDialog::~GPSEditDialog() @ -186,28 +196,24 @ done(-1); } -void GPSEditDialog::slotGPSLocator() +void GPSEditDialog::slotGPSLocator(int i) { - QString val, url; - - switch( d->gpsCombo->currentItem() ) + switch(i) { case GPSEditDialogDialogPrivate::CapeLinks: { - url.append("http://www.capelinks.com/cape-cod/maps/gps"); + d->worldMap->openURL(KURL("http://www.capelinks.com/cape-cod/maps/gps")); break; } case GPSEditDialogDialogPrivate::MapKi: { - url.append("http://mapki.com/getLonLat.php"); + d->worldMap->openURL(KURL("http://mapki.com/getLonLat.php")); break; } // TODO : Added here others web GPS coordinates locator } - - KApplication::kApplication()->invokeBrowser(url); } } // namespace KIPIGPSSyncPlugin --- trunk/extragear/libs/kipi-plugins/gpssync/gpseditdialog.h #588864:588865 @ -50,7 +50,7 @ void slotOk(); void slotUser1(); - void slotGPSLocator(); + void slotGPSLocator(int); private: --- trunk/extragear/libs/kipi-plugins/gpssync/gpssyncdialog.cpp #588864:588865 @ -427,6 +427,8 @ void GPSSyncDialog::slotApply() { + KURL::List images; + QListViewItemIterator it( d->listView ); while ( it.current() ) { @ -434,12 +436,15 @ d->listView->setSelected(item, true); d->listView->ensureItemVisible(item); item->writeGPSInfoToFile(); + images.append(item->getUrl()); // TODO : new libkipi method to store GPS info in host database. ++it; kapp->processEvents(); } + + d->interface->refreshImages(images); } } // NameSpace KIPIGPSSyncPlugin _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
Free forum by Nabble | Edit this page |