SVN commit 837917 by ssingh: adding json parsing section to gecoding api -This line, and those below, will be ignored-- M src/plugins/marble/twitter/twitterPlugin.cpp M src/plugins/marble/twitter/jsonparser.cpp M src/plugins/marble/twitter/twitterPlugin.h M src/plugins/marble/twitter/jsonparser.h M +1 -1 CMakeLists.txt M +15 -0 twitter/jsonparser.cpp M +10 -1 twitter/jsonparser.h M +5 -3 twitter/twitterPlugin.cpp M +1 -1 twitter/twitterPlugin.h --- trunk/KDE/kdeedu/marble/src/plugins/marble/CMakeLists.txt #837916:837917 @@ -5,5 +5,5 @@ add_subdirectory( mapscale ) add_subdirectory( stars ) # add_subdirectory( panoramio ) -# add_subdirectory ( twitter ) +add_subdirectory ( twitter ) --- trunk/KDE/kdeedu/marble/src/plugins/marble/twitter/jsonparser.cpp #837916:837917 @@ -56,3 +56,18 @@ return parsedJsonOutput; } + +googleMapDataStructure jsonParser::parseObject(QString &content) +{ +QString temp = "var myJSONObject = " + content; +int iterator = 0;//the count starts fom one +googleMapDataStructure returnStructure; + +myEngine.evaluate ( temp ); +returnStructure.lat=myEngine.evaluate ( QString ( "return myJSONObject[" ) ++ QString::number ( iterator ) ++ QString ( "].user.name;" ) ).toString();; +returnStructure.lon=; +// qDebug +return returnStructure; +} \ No newline at end of file --- trunk/KDE/kdeedu/marble/src/plugins/marble/twitter/jsonparser.h #837916:837917 @@ -29,11 +29,18 @@ */ struct twitterDataStructure { +//defining the only parts that are required ,, all oher fields are hence left QString user; QString location; QString text; }; +struct googleMapDataStructure +{ +double lat; +double lon; +}; + class jsonParser :public QObject { public: @@ -45,7 +52,9 @@ QList parseAllObjects ( const QString &content, int numberOfObjects );//for parsing a list objects - private: + googleMapDataStructure parseObject(QString &content);//google geocoding api parser + + private: QList parsedJsonOutput; twitterDataStructure dataStorage; --- trunk/KDE/kdeedu/marble/src/plugins/marble/twitter/twitterPlugin.cpp #837916:837917 @@ -126,14 +126,16 @@ GeoDataPoint twitterPlugin::findLatLonOfStreetAddress(QString streetAddress) { -// static double y=0; -// y+=50; GeoDataPoint tempLatLon(0.0,0.0,0.0,GeoDataPoint::Degree ); m_downloadManager->addJob("http://maps.google.com/maps/geo?q="+streetAddress+"&output=json&key=ABQIAAAASD_v8YRzG0tBD18730KjmRTxoHoIpYL45xcSRJH0O7cH64DuXRT7rQeRcgCLAhjkteQ8vkWAATM_JQ","finLatLon","findLatLon"); - connect + connect ( m_downloadManager, SIGNAL ( downloadComplete ( QString, QString ) ), this, SLOT ( slotGeoCodingReplyRecieved ( QString , QString ) ) ); return tempLatLon; } +void twitterPlugin::slotGeoCodingReplyRecieved(QString ,QString) +{ + +} Q_EXPORT_PLUGIN2 ( twitterPlugin, twitterPlugin ) #include "twitterPlugin.moc" --- trunk/KDE/kdeedu/marble/src/plugins/marble/twitter/twitterPlugin.h #837916:837917 @@ -67,7 +67,7 @@ public slots: void slotJsonDownloadComplete ( QString , QString );//completed download of json reply fom panoramio -// void slotImageDownloadComplete ( QString , QString );//completed download of image + void slotGeoCodingReplyRecieved ( QString , QString );//completed download of image signals: void statusMessageForImageDownloadingProcess(QString); private: