From 43ed278bf2de45b3a99940b2e3bac345bb030381 Mon Sep 17 00:00:00 2001 From: goldenhawking Date: Sun, 24 Jan 2016 15:07:42 +0000 Subject: [PATCH] a lot of improvement has been taken place --- qtviewer_planetosm/osm_frame_widget.cpp | 45 +++++++++--- qtviewer_planetosm/osm_frame_widget.h | 2 + qtviewer_planetosm/osm_frame_widget.ui | 5 +- qtviewer_planetosm/osmtiles/layer_browser.cpp | 18 ++--- qtviewer_planetosm/osmtiles/layer_browser.h | 2 +- qtviewer_planetosm/osmtiles/layer_tiles.cpp | 31 +++++---- qtviewer_planetosm/osmtiles/layer_tiles.h | 5 +- .../osmtiles/layer_tiles_page.cpp | 8 ++- .../osmtiles/layer_tiles_page.ui | 2 +- qtviewer_planetosm/osmtiles/tilesviewer.h | 12 ++-- qtviewer_planetosm/osmtiles/urlDownloader.cpp | 64 +++++++++++++----- .../osmtiles/viewer_interface.h | 2 + qtviewer_planetosm/qtaxviewer_planetosm.ico | Bin 196150 -> 67646 bytes .../resource/icons/Blizzard17.png | Bin 16746 -> 11189 bytes qtvplugin_geomarker/qtvplugin_geomarker.h | 9 ++- .../qtvplugin_geomarker_func.cpp | 58 ++++++++++++++++ readme.txt | 14 +++- test_container/testcontainer.cpp | 36 +++++++--- test_container/testcontainer.h | 1 + test_container/testcontainer.ui | 9 ++- 20 files changed, 245 insertions(+), 78 deletions(-) diff --git a/qtviewer_planetosm/osm_frame_widget.cpp b/qtviewer_planetosm/osm_frame_widget.cpp index dff5414..eefc2fe 100644 --- a/qtviewer_planetosm/osm_frame_widget.cpp +++ b/qtviewer_planetosm/osm_frame_widget.cpp @@ -93,6 +93,8 @@ osm_frame_widget::osm_frame_widget(QWidget *parent) : QTVOSM_DEBUG("The osm_frame_widget class constructed."); EnumPlugins(); UpdateLayerTable(); + //Dock is closable + ui->dockWidget_side->installEventFilter(this); m_mutex_proteced.unlock(); } void osm_frame_widget::UpdateLayerTable() @@ -117,9 +119,9 @@ tilesviewer * osm_frame_widget::viewer() bool osm_frame_widget::eventFilter(QObject *obj, QEvent *event) { - if (event->type() == QEvent::Close && !( obj==ui->tab_map)) + if (event->type() == QEvent::Close) { - if (m_PropPageslayer.contains(obj)) + if (obj == ui->tab_map) { QWidget * wig = qobject_cast(obj); if (wig) @@ -129,15 +131,19 @@ bool osm_frame_widget::eventFilter(QObject *obj, QEvent *event) wig->setWindowFlags(flg); ui->tabWidget_main->addTab( wig, - m_PropPageslayer[obj]->get_name() - ); + "Map" + ); + return true; } + } + else if (obj == ui->dockWidget_side) + { + ui->dockWidget_side->hide(); + QMargins m = this->layout()->contentsMargins(); + this->layout()->setContentsMargins(m.left(),m.top(),12,m.bottom()); return true; } - } - else if (obj==ui->tab_map)//Map - { - if (event->type() == QEvent::Close) + else if (m_PropPageslayer.contains(obj)) { QWidget * wig = qobject_cast(obj); if (wig) @@ -147,11 +153,16 @@ bool osm_frame_widget::eventFilter(QObject *obj, QEvent *event) wig->setWindowFlags(flg); ui->tabWidget_main->addTab( wig, - "Map" + m_PropPageslayer[obj]->get_name() ); - return true; } + return true; } + else + { + + } + } // standard event processing return QObject::eventFilter(obj, event); @@ -179,7 +190,21 @@ osm_frame_widget::~osm_frame_widget() { delete ui; } +void osm_frame_widget::mousePressEvent(QMouseEvent * e) +{ + if (e->pos().x() >= this->rect().right()-12) + { + if (ui->dockWidget_side->isVisible()==false) + { + ui->dockWidget_side->show(); + QMargins m = this->layout()->contentsMargins(); + this->layout()->setContentsMargins(m.left(),m.top(),m.left(),m.bottom()); + } + } + + QWidget::mousePressEvent(e); +} void osm_frame_widget::EnumPlugins() { QTVOSM_DEBUG("The osm_frame_widget is enuming plugins."); diff --git a/qtviewer_planetosm/osm_frame_widget.h b/qtviewer_planetosm/osm_frame_widget.h index 64b8401..3201256 100644 --- a/qtviewer_planetosm/osm_frame_widget.h +++ b/qtviewer_planetosm/osm_frame_widget.h @@ -42,6 +42,8 @@ protected: void UpdateLayerTable(); bool AppendLayer(QString SLName,layer_interface * interface); void EnumPlugins(); + + void mousePressEvent(QMouseEvent *); protected slots: void delacmd_refresh_layer_view(); void on_tabWidget_main_tabCloseRequested(int index); diff --git a/qtviewer_planetosm/osm_frame_widget.ui b/qtviewer_planetosm/osm_frame_widget.ui index aeced73..bbdb85f 100644 --- a/qtviewer_planetosm/osm_frame_widget.ui +++ b/qtviewer_planetosm/osm_frame_widget.ui @@ -102,6 +102,9 @@ 240 + + Qt::WheelFocus + @@ -136,7 +139,7 @@ false - QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable + QDockWidget::AllDockWidgetFeatures Tools diff --git a/qtviewer_planetosm/osmtiles/layer_browser.cpp b/qtviewer_planetosm/osmtiles/layer_browser.cpp index db12d42..6de4809 100644 --- a/qtviewer_planetosm/osmtiles/layer_browser.cpp +++ b/qtviewer_planetosm/osmtiles/layer_browser.cpp @@ -27,11 +27,11 @@ namespace QTVOSM int nCenX = nCenter_X/256; int nCenY = nCenter_Y/256; //current left top tile idx - int nCurrLeftX = floor((nCenter_X-m_pViewer->width()/2)/256.0); - int nCurrTopY = floor((nCenter_Y-m_pViewer->height()/2)/256.0); + int nCurrLeftX = floor((nCenter_X-m_pViewer->windowWidth()/2)/256.0); + int nCurrTopY = floor((nCenter_Y-m_pViewer->windowHeight()/2)/256.0); //current right btm - int nCurrRightX = ceil((nCenter_X+m_pViewer->width()/2)/256.0); - int nCurrBottomY = ceil((nCenter_Y+m_pViewer->height()/2)/256.0); + int nCurrRightX = ceil((nCenter_X+m_pViewer->windowWidth()/2)/256.0); + int nCurrBottomY = ceil((nCenter_Y+m_pViewer->windowHeight()/2)/256.0); //draw images @@ -58,8 +58,8 @@ namespace QTVOSM int zero_offX = int(nCenter_X+0.5) % 256; int zero_offY = int(nCenter_Y+0.5) % 256; //bitblt cood - int tar_x = m_pViewer->width()/2-zero_offX+nTileOffX; - int tar_y = m_pViewer->height()/2-zero_offY+nTileOffY; + int tar_x = m_pViewer->windowWidth()/2-zero_offX+nTileOffX; + int tar_y = m_pViewer->windowHeight()/2-zero_offY+nTileOffY; //bitblt pImage->drawImage(tar_x,tar_y,image_source); } @@ -83,8 +83,8 @@ namespace QTVOSM bool res = false; if (event->button()==Qt::LeftButton) { - int nOffsetX = event->pos().x()-m_pViewer->width()/2; - int nOffsetY = event->pos().y()-m_pViewer->height()/2; + int nOffsetX = event->pos().x()-m_pViewer->windowWidth()/2; + int nOffsetY = event->pos().y()-m_pViewer->windowHeight()/2; m_pViewer->DragView(-nOffsetX,-nOffsetY); res = true; } @@ -95,7 +95,7 @@ namespace QTVOSM layer_interface * layer_browser::load_initial_plugin(QString /*strSLibPath*/,viewer_interface * viewer) { - m_pViewer =dynamic_cast(viewer); + m_pViewer =dynamic_cast(viewer); if (m_pViewer==0) return 0; return this; diff --git a/qtviewer_planetosm/osmtiles/layer_browser.h b/qtviewer_planetosm/osmtiles/layer_browser.h index 7203fe7..72b2c35 100644 --- a/qtviewer_planetosm/osmtiles/layer_browser.h +++ b/qtviewer_planetosm/osmtiles/layer_browser.h @@ -33,7 +33,7 @@ namespace QTVOSM{ QString get_name() {return m_name;} void set_name(QString vb) { m_name = vb; } protected: - tilesviewer * m_pViewer; + viewer_interface * m_pViewer; QString m_name; private: //get single tile from web service diff --git a/qtviewer_planetosm/osmtiles/layer_tiles.cpp b/qtviewer_planetosm/osmtiles/layer_tiles.cpp index 1091408..f279485 100644 --- a/qtviewer_planetosm/osmtiles/layer_tiles.cpp +++ b/qtviewer_planetosm/osmtiles/layer_tiles.cpp @@ -53,6 +53,7 @@ namespace QTVOSM{ m_nCacheExpireDays = nCacheExpireDays; QSettings settings(QCoreApplication::applicationFilePath()+".ini",QSettings::IniFormat); settings.setValue(QString("settings/CacheExpireDays_%1").arg(get_name()), m_nCacheExpireDays); + emit cacheExpireChanged(m_nCacheExpireDays); } /*! @@ -77,11 +78,11 @@ namespace QTVOSM{ int nCenX = nCenter_X/256; int nCenY = nCenter_Y/256; //!2.2 calculate current left top tile idx - int nCurrLeftX = floor((nCenter_X-m_pViewer->width()/2)/256.0); - int nCurrTopY = floor((nCenter_Y-m_pViewer->height()/2)/256.0); + int nCurrLeftX = floor((nCenter_X-m_pViewer->windowWidth()/2)/256.0); + int nCurrTopY = floor((nCenter_Y-m_pViewer->windowHeight()/2)/256.0); //!2.3 calculate current right bottom idx - int nCurrRightX = ceil((nCenter_X+m_pViewer->width()/2)/256.0); - int nCurrBottomY = ceil((nCenter_Y+m_pViewer->height()/2)/256.0); + int nCurrRightX = ceil((nCenter_X+m_pViewer->windowWidth()/2)/256.0); + int nCurrBottomY = ceil((nCenter_Y+m_pViewer->windowHeight()/2)/256.0); //!2.4 a repeat from tileindx left to right. for (int col = nCurrLeftX;col<=nCurrRightX;col++) @@ -107,8 +108,8 @@ namespace QTVOSM{ int zero_offX = int(nCenter_X+0.5) % 256; int zero_offY = int(nCenter_Y+0.5) % 256; //bitblt cood - int tar_x = m_pViewer->width()/2-zero_offX+nTileOffX; - int tar_y = m_pViewer->height()/2-zero_offY+nTileOffY; + int tar_x = m_pViewer->windowWidth()/2-zero_offX+nTileOffX; + int tar_y = m_pViewer->windowHeight()/2-zero_offY+nTileOffY; //bitblt pPainter->drawImage(tar_x,tar_y,image_source); } @@ -137,8 +138,8 @@ namespace QTVOSM{ } else if (event->button()==Qt::RightButton) { - int nOffsetX = event->pos().x()-m_pViewer->width()/2; - int nOffsetY = event->pos().y()-m_pViewer->height()/2; + int nOffsetX = event->pos().x()-m_pViewer->windowWidth()/2; + int nOffsetY = event->pos().y()-m_pViewer->windowHeight()/2; m_pViewer->DragView(-nOffsetX,-nOffsetY); res = true; } @@ -196,10 +197,10 @@ namespace QTVOSM{ layer_interface * layer_tiles::load_initial_plugin(QString /*strSLibPath*/,viewer_interface * viewer) { - m_pViewer = dynamic_cast(viewer); + m_pViewer = dynamic_cast(viewer); if (!m_pViewer) return 0; - connect(m_downloader,SIGNAL(evt_all_taskFinished()),m_pViewer,SLOT(UpdateWindow())); + connect(m_downloader,SIGNAL(evt_all_taskFinished()),this,SLOT(updateViewer())); //Get Cache Address QSettings settings(QCoreApplication::applicationFilePath()+".ini",QSettings::IniFormat); m_strServerURL = settings.value(QString("settings/ServerURL_%1").arg(m_name),"http://c.tile.openstreetmap.org/%1/%2/%3.png").toString(); @@ -207,6 +208,12 @@ namespace QTVOSM{ m_nCacheExpireDays = settings.value(QString("settings/CacheExpireDays_%1").arg(m_name), 30).toInt(); return this; } + void layer_tiles::updateViewer() + { + if (!m_pViewer) + return ; + m_pViewer->UpdateWindow(); + } QWidget * layer_tiles::load_prop_window() { @@ -273,7 +280,7 @@ namespace QTVOSM{ void layer_tiles::UpdateLayer() { - m_pViewer->update(); + m_pViewer->UpdateWindow(); } @@ -290,7 +297,7 @@ namespace QTVOSM{ { this->m_bconnected = bconnected; if (!m_pViewer) return; - m_pViewer->update(); + m_pViewer->UpdateWindow(); emit connected(m_bconnected); //! 1. source=MAIN_MAP, destin = ALL, msg = CONNECTION if (this->is_active()) diff --git a/qtviewer_planetosm/osmtiles/layer_tiles.h b/qtviewer_planetosm/osmtiles/layer_tiles.h index e75cefe..f3c375a 100644 --- a/qtviewer_planetosm/osmtiles/layer_tiles.h +++ b/qtviewer_planetosm/osmtiles/layer_tiles.h @@ -54,7 +54,7 @@ namespace QTVOSM{ bool is_exclusive(){return true;} void set_active(bool at) { m_bActive = at;} protected: - tilesviewer * m_pViewer; + viewer_interface * m_pViewer; layer_tiles_page * m_propPage; bool m_bActive; bool m_bVisible; @@ -76,6 +76,8 @@ namespace QTVOSM{ bool getTileImage(int nLevel,int nX,int nY,QImage & image); //! regisit images to web service bool RegImages(int nX, int nY,int nLevel); + protected slots: + void updateViewer(); public slots: void setServerUrl(QString url); void setLocalCache(QString cache); @@ -84,6 +86,7 @@ namespace QTVOSM{ void connected(bool); void svrurlChanged(QString); void cacheChanged(QString); + void cacheExpireChanged(int); }; } #endif // LAYER_TILES_H diff --git a/qtviewer_planetosm/osmtiles/layer_tiles_page.cpp b/qtviewer_planetosm/osmtiles/layer_tiles_page.cpp index 1eefc5b..4d0d279 100644 --- a/qtviewer_planetosm/osmtiles/layer_tiles_page.cpp +++ b/qtviewer_planetosm/osmtiles/layer_tiles_page.cpp @@ -18,7 +18,7 @@ namespace QTVOSM{ QString strServerURL = settings.value(QString("settings/ServerURL_%1").arg(layer->get_name()),"http://c.tile.openstreetmap.org/%1/%2/%3.png").toString(); QString strLocalCache = settings.value(QString("settings/LocalCache_%1").arg(layer->get_name()), QCoreApplication::applicationDirPath() +"/OSMCache").toString(); int nCacheExpireDays = settings.value(QString("settings/CacheExpireDays_%1").arg(layer->get_name()), 30).toInt(); - ui->lineEdit->setText(strLocalCache); + ui->lineEdit_cacheFolder->setText(strLocalCache); ui->lineEdit_addressUrl->setText(strServerURL); ui->spinBox_cacheExpireDays->setValue(nCacheExpireDays); this->setWindowTitle(layer->get_name()); @@ -28,6 +28,8 @@ namespace QTVOSM{ connect (layer, &layer_tiles::connected ,this->ui->checkBox_connect, &QCheckBox::setChecked); connect (layer, &layer_tiles::svrurlChanged ,this->ui->lineEdit_addressUrl, &QLineEdit::setText); + connect (layer, &layer_tiles::cacheChanged ,this->ui->lineEdit_cacheFolder, &QLineEdit::setText); + connect (layer, &layer_tiles::cacheExpireChanged ,this->ui->spinBox_cacheExpireDays, &QSpinBox::setValue); ui->checkBox_connect->setChecked(layer->isConnected()); } void layer_tiles_page::reTransUI() @@ -45,12 +47,12 @@ namespace QTVOSM{ QString strLocalCache = settings.value(QString("settings/LocalCache_%1").arg(m_pLayer->get_name()), QCoreApplication::applicationDirPath() +"/OSMCache").toString(); QString strFolder = QFileDialog::getExistingDirectory(this,tr("Select the local cache"),strLocalCache,QFileDialog::ShowDirsOnly); if (strFolder.length()) - ui->lineEdit->setText(strFolder); + ui->lineEdit_cacheFolder->setText(strFolder); } void layer_tiles_page::on_pushButton_apply_clicked() { - m_pLayer->setLocalCache(ui->lineEdit->text()); + m_pLayer->setLocalCache(ui->lineEdit_cacheFolder->text()); m_pLayer->setServerUrl(ui->lineEdit_addressUrl->text()); m_pLayer->setCacheExpireDays(ui->spinBox_cacheExpireDays->value()); m_pLayer->UpdateLayer(); diff --git a/qtviewer_planetosm/osmtiles/layer_tiles_page.ui b/qtviewer_planetosm/osmtiles/layer_tiles_page.ui index 9e8b8f8..507a793 100644 --- a/qtviewer_planetosm/osmtiles/layer_tiles_page.ui +++ b/qtviewer_planetosm/osmtiles/layer_tiles_page.ui @@ -96,7 +96,7 @@ - + diff --git a/qtviewer_planetosm/osmtiles/tilesviewer.h b/qtviewer_planetosm/osmtiles/tilesviewer.h index 1ecedca..ed01d70 100644 --- a/qtviewer_planetosm/osmtiles/tilesviewer.h +++ b/qtviewer_planetosm/osmtiles/tilesviewer.h @@ -101,11 +101,6 @@ namespace QTVOSM{ void moveLayerTop(layer_interface *); void moveLayerBottom(layer_interface *); void updateLayerGridView(); - public slots: - //set current level - void setLevel(int n); - //set current br level to n-4 - void setBrLevel(int n); //force update void UpdateWindow(); //set center LLA @@ -113,8 +108,15 @@ namespace QTVOSM{ //set center LLA, not emit centerChanged void setBrCenterLLA(double lat, double lon); virtual QRect windowRect(){return this->rect();} + virtual int windowWidth() {return width();} + virtual int windowHeight() {return height();} bool saveToImage(const QString & strFm); + public slots: + //set current level + void setLevel(int n); + //set current br level to n-4 + void setBrLevel(int n); protected slots: void _do_next_evts(); signals: diff --git a/qtviewer_planetosm/osmtiles/urlDownloader.cpp b/qtviewer_planetosm/osmtiles/urlDownloader.cpp index 5a7ea68..426d7c2 100644 --- a/qtviewer_planetosm/osmtiles/urlDownloader.cpp +++ b/qtviewer_planetosm/osmtiles/urlDownloader.cpp @@ -23,6 +23,8 @@ namespace QTVOSM{ bool needDo = false; bool allFinished = false; bool succeeded = false; + bool redirect = false; + tag_download_tasks redirect_tk; m_mutex_protect.lock(); QString errMsg; QString sourceUrl; @@ -31,19 +33,42 @@ namespace QTVOSM{ const tag_download_tasks & tk = m_map_pendingTasks[rply]; if (rply->error()==QNetworkReply::NoError) { - QString strDir = tk.str_destinDir; - QString strFile = tk.str_destinFile; - //mkdir - QDir dir(strDir); - dir.mkpath(strDir); - //saveFile - QFile file(strDir+"/"+strFile); - if (file.open(QIODevice::WriteOnly)==true) + if (rply->bytesAvailable()) { - file.write(rply->readAll()); - file.close(); - succeeded = true; - sourceUrl = m_map_pendingTasks[rply].str_url; + QString strDir = tk.str_destinDir; + QString strFile = tk.str_destinFile; + //mkdir + QDir dir(strDir); + dir.mkpath(strDir); + //saveFile + QFile file(strDir+"/"+strFile); + if (file.open(QIODevice::WriteOnly)==true) + { + file.write(rply->readAll()); + file.close(); + succeeded = true; + sourceUrl = m_map_pendingTasks[rply].str_url; + } + } + else + { + QVariant vaurl = rply->attribute(QNetworkRequest::RedirectionTargetAttribute); + if (vaurl.type()==QVariant::Url) + { + QUrl urlRd = vaurl.toUrl(); + if (urlRd.isRelative()) + urlRd = rply->request().url().resolved(urlRd); + + redirect_tk = tk; + redirect_tk.str_url = urlRd.toString(); + errMsg = tr("task redirected: %1").arg(redirect_tk.str_url); + redirect = true; + succeeded = true; + } + else + { + errMsg = tr("reply is empty: %1").arg(tk.str_url); + } } } else @@ -62,14 +87,10 @@ namespace QTVOSM{ if (m_listTask.empty()==true && m_map_pendingTasks.empty()==true) allFinished = true; m_mutex_protect.unlock(); - if (needDo) - emit evt_doNextJob(); - if (allFinished == true && succeeded) - emit evt_all_taskFinished(); if (succeeded) { - QString strMsg = tr("task succeeded: %1").arg(sourceUrl); + QString strMsg = tr("task succeeded: %1;%2").arg(sourceUrl).arg(errMsg); emit evt_message(strMsg); } else @@ -77,6 +98,15 @@ namespace QTVOSM{ QString strMsg = tr("task failed: %1,msg %2").arg(sourceUrl).arg(errMsg); emit evt_message(strMsg); } + if (redirect) + { + addDownloadUrl(redirect_tk.str_url,redirect_tk.str_destinDir,redirect_tk.str_destinFile,true); + } + + if (needDo) + emit evt_doNextJob(); + if (allFinished == true && succeeded) + emit evt_all_taskFinished(); } diff --git a/qtviewer_planetosm/osmtiles/viewer_interface.h b/qtviewer_planetosm/osmtiles/viewer_interface.h index 85a47dc..96f7952 100644 --- a/qtviewer_planetosm/osmtiles/viewer_interface.h +++ b/qtviewer_planetosm/osmtiles/viewer_interface.h @@ -90,6 +90,8 @@ namespace QTVOSM{ virtual void updateLayerGridView()= 0; //! get the windows device size in pixels virtual QRect windowRect() = 0; + virtual int windowWidth() = 0; + virtual int windowHeight() = 0; //! force update virtual void UpdateWindow() = 0; //! drag image for special pixes diff --git a/qtviewer_planetosm/qtaxviewer_planetosm.ico b/qtviewer_planetosm/qtaxviewer_planetosm.ico index 8ca8079ef2886553ea9c389b13aa445cd0c36e74..89ba59395a1ccbf4058a9283eb3a4380374e07c3 100644 GIT binary patch literal 67646 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 diff --git a/qtvplugin_geomarker/qtvplugin_geomarker.h b/qtvplugin_geomarker/qtvplugin_geomarker.h index 9f5368c..6846863 100644 --- a/qtvplugin_geomarker/qtvplugin_geomarker.h +++ b/qtvplugin_geomarker/qtvplugin_geomarker.h @@ -41,6 +41,7 @@ class qtvplugin_geomarker : public QWidget,public layer_interface Q_OBJECT Q_PLUGIN_METADATA(IID OSMLayerInterface_iid ) Q_INTERFACES(QTVOSM::layer_interface) + typedef QMap (tpfunc_call)(const QMap &); private: struct tag_xml_mark{ QString name; @@ -123,17 +124,15 @@ private: //other function calls private: void initialBindPluginFuntions(); - QMap (const QMap &) - > - > m_map_pluginFunctions; + QMap > m_map_pluginFunctions; QMap func_exists (const QMap &); QMap func_delete_marks (const QMap &); QMap func_delete_props (const QMap &); QMap func_mark_names (const QMap &); QMap func_mark (const QMap &); QMap func_props (const QMap &); + QMap func_save_xml (const QMap &); + QMap func_load_xml (const QMap &); //overloaded virtual funtions protected: diff --git a/qtvplugin_geomarker/qtvplugin_geomarker_func.cpp b/qtvplugin_geomarker/qtvplugin_geomarker_func.cpp index d3f7b94..05cbcf1 100644 --- a/qtvplugin_geomarker/qtvplugin_geomarker_func.cpp +++ b/qtvplugin_geomarker/qtvplugin_geomarker_func.cpp @@ -57,6 +57,8 @@ void qtvplugin_geomarker::initialBindPluginFuntions() m_map_pluginFunctions["mark_names"] = std::bind(&qtvplugin_geomarker::func_mark_names, this,std::placeholders::_1); m_map_pluginFunctions["mark"] = std::bind(&qtvplugin_geomarker::func_mark, this,std::placeholders::_1); m_map_pluginFunctions["props"] = std::bind(&qtvplugin_geomarker::func_props, this,std::placeholders::_1); + m_map_pluginFunctions["load_xml"] = std::bind(&qtvplugin_geomarker::func_load_xml, this,std::placeholders::_1); + m_map_pluginFunctions["save_xml"] = std::bind(&qtvplugin_geomarker::func_save_xml, this,std::placeholders::_1); } /** @@ -864,3 +866,59 @@ QMap qtvplugin_geomarker::func_props (const QMap if error happens, a property called "error" will store the most possible reason. + */ +QMap qtvplugin_geomarker::func_save_xml (const QMap & paras) +{ + //!xml: user should specify xml filename or the function calll will fail; + QMap res; + if (paras.contains("xml")==false) + { + res["error"] = tr("xml must exist in paraments."); + return std::move(res); + } + QString name = paras["xml"].toString(); + if (name.size()==0) + { + res["error"] = tr("xml could not be empty."); + return std::move(res); + } + + bool ok = this->xml_save(name); + res ["return"] = ok; + return res; +} +/** + * @brief func_save_xml is a internal function for plugin call_func "save_xml" + * + * the paraments used by paras is listed below. + * function=props; + * @param paras The key-value style paraments. + * @return QMap if error happens, a property called "error" will store the most possible reason. + */ +QMap qtvplugin_geomarker::func_load_xml (const QMap & paras) +{ + //!xml: user should specify xml filename or the function calll will fail; + QMap res; + if (paras.contains("xml")==false) + { + res["error"] = tr("xml must exist in paraments."); + return std::move(res); + } + QString name = paras["xml"].toString(); + if (name.size()==0) + { + res["error"] = tr("xml could not be empty."); + return std::move(res); + } + + bool ok = this->xml_load(name); + res ["return"] = ok; + return res; +} diff --git a/readme.txt b/readme.txt index ec2c7f8..e9785dd 100644 --- a/readme.txt +++ b/readme.txt @@ -1,12 +1,20 @@ -Qt Openstreepmap viewer +Qt Mercator Map Viewer (OpenStreetMap based) --------------------------- We are very glad to publish qplanetosm viewer V1.0.0, a plug-in based cross platform opensource map viewer. +This project was orginally designed for Parkinglots status visualization only. A few month ago, develop team find that plugin system in qt is strong enough , can do many other things than parkinglots project. Main features : This Project contains a cross-platform qt-based openstreetmap(OSM) viewer. - * Project qtviewer_planetosm is the main project, provides a plugin system for layer extension. - * Project qtviewer_planetosm is also a win32 active-X warpper , C#, VB, MFC and Web Apps in win32 will take advantage of this feature. + * Project qtviewer_planetosm is the main project, provides a plugin system for layer extension. Layers will be able to call coordinates convertion functions using specail interface provided by main framework; Layers can communicate with main-framework and other plugins using event system and function call system. Both event system and function call system is based on key-value style parament delivering (QMap). + * Project axqtviewer_planetosm stays at a same phycial path with qtviewer_planetosm, it is a win32 active-X warpper if qtviewer_planetosm. C#, VB, MFC and Old Web Apps in win32 will take advantage of this feature. It also provides a key-value event / function call system , using QString. It is mostly like a bridge across internal QMap calls and external QString calls. 2 sample plugin examples, demonstrating how plugin works. * Project qtvplugin_grid demonstrating low-level painting and event handling using QPainter and Coordinates convertions. * Project qtvplugin_geomarker demonstrating heigh-level painting and event handling using QGraphicsScene system. It may be very interesting to see how to deal with map zooming in QGraphicsScene , keeping point marks same pixel size in different level. 1 ActiveX container, demonstrating how to draw animation marks on OSM Map. + * testcontainer is a active-qt based container. in this container, features will be tested such like event system, plugin method system. + +There are also several limitations for this project. + * The OSM tiles is just a BACKGROUND image, vector data is not supported. For another word, it is impossible to query road names, place names during navigating. + * Projection system is limited to mercator projection, others is not supported. + * In Linux system, active-X control is disabled, we will introduce D-bus or TCP server in future instead. + diff --git a/test_container/testcontainer.cpp b/test_container/testcontainer.cpp index 1469789..4af966a 100644 --- a/test_container/testcontainer.cpp +++ b/test_container/testcontainer.cpp @@ -132,7 +132,7 @@ void testcontainer::on_pushButton_test_navigate_clicked() QMessageBox::information(this,"osm_get_center_latlon",QString("lat = %1, lon=%2").arg(lat).arg(lon) ); //Set a new center position - lat = 31; lon = 121; + lat = rand()%1700/10.0-85; lon = rand()%3600/10.0-180; ui->axWidget_map1->dynamicCall("osm_set_center_pos(double,double)",lat,lon); //Get map center position @@ -262,12 +262,15 @@ void testcontainer::on_pushButton_test_mark_clicked() QMessageBox::information(this,"geomarker1::delete_marks",res); res = ui->axWidget_map1->dynamicCall("osm_layer_call_function(QString,QString)","geomarker1", - "function=update_point;name=ID1;type=1;" - "lat=31.3737;lon=121.3783474;" + QString("function=update_point;name=ID1;type=1;" + "lat=%1;lon=%2;" "style_pen=2;color_pen=0,0,255,128;width_pen=3;" "style_brush=1;color_brush=0,255,0,128;" "color_label=0,0,255,96;weight_label=99;size_label=12;" - "width=16;height=20;").toString(); + "width=16;height=20;") + .arg(rand()%1700/10.0-85) + .arg(rand()%3600/10.0-180) + ).toString(); if (res.contains("error")) QMessageBox::information(this,"geomarker1::update_point",res); @@ -308,11 +311,16 @@ void testcontainer::on_pushButton_test_line_clicked() QMessageBox::information(this,"geomarker1::delete_marks",res); res = ui->axWidget_map1->dynamicCall("osm_layer_call_function(QString,QString)","geomarker1", - "function=update_line;name=ID3;type=3;" - "lat0=31.3737;lon0=121.3783474;" - "lat1=40.3737;lon1=111.34347;" + QString("function=update_line;name=ID3;type=3;" + "lat0=%1;lon0=%2;" + "lat1=%3;lon1=%4;" "style_pen=4;color_pen=255,0,0,96;" - "width_pen=2;").toString(); + "width_pen=2;") + .arg(rand()%1700/10.0-85) + .arg(rand()%3600/10.0-180) + .arg(rand()%1700/10.0-85) + .arg(rand()%3600/10.0-180) + ).toString(); if (res.contains("error")) QMessageBox::information(this,"geomarker1::update_line",res); @@ -354,7 +362,7 @@ void testcontainer::timerEvent(QTimerEvent * e) { if (e->timerId()==m_nAnTimer) { - static double tposlat = 31, tposlon=121; + static double tposlat = rand()%1700/10.0-85 , tposlon= rand()%3600/10.0-180; tposlat += sin(tposlon * 3.14/180.0)/5+0.1; tposlon -= cos(tposlat * 3.14/180.0)/5+0.1; if (tposlat > 85 ) tposlat = -85; @@ -408,3 +416,13 @@ void testcontainer::on_pushButton_test_cache_clicked() res = ui->axWidget_map1->dynamicCall("osm_set_cache_expire_days(QString,int)","OSM",res.toInt()+1).toString(); QMessageBox::information(this,"geomarker1::osm_get_cache_expire_days",res); } +void testcontainer::on_pushButton_test_xml_clicked() +{ + QString res = ui->axWidget_map1->dynamicCall("osm_layer_call_function(QString,QString)","geomarker1", + "function=load_xml;xml=.//test.xml;").toString(); + QMessageBox::information(this,"geomarker1::load_xml",res); + res = ui->axWidget_map1->dynamicCall("osm_layer_call_function(QString,QString)","geomarker1", + "function=save_xml;xml=.//test.xml;").toString(); + QMessageBox::information(this,"geomarker1::save_xml",res); + +} diff --git a/test_container/testcontainer.h b/test_container/testcontainer.h index dc399c5..5dfb28b 100644 --- a/test_container/testcontainer.h +++ b/test_container/testcontainer.h @@ -37,6 +37,7 @@ protected slots: void on_pushButton_test_line_clicked(); void on_pushButton_test_polygon_clicked(); void on_pushButton_test_request_clicked(); + void on_pushButton_test_xml_clicked(); }; #endif // TESTCONTAINER_H diff --git a/test_container/testcontainer.ui b/test_container/testcontainer.ui index e4979fb..7c9e2d0 100644 --- a/test_container/testcontainer.ui +++ b/test_container/testcontainer.ui @@ -6,7 +6,7 @@ 0 0 - 892 + 973 600 @@ -163,6 +163,13 @@ + + + + xml + + + -- GitLab