diff -rupN -x '*~' -x '*.mak' -x config.ep -x config.log -x cleanup mythtv.orig/mythplugins//configure mythtv/mythplugins//configure
--- mythtv.orig/mythplugins//configure	2012-02-04 18:15:43.000000000 +0100
+++ mythtv/mythplugins//configure	2012-02-04 19:03:50.000000000 +0100
@@ -118,6 +118,7 @@ sdl
 exif
 newexif
 dcraw
+worldweather
 "
 
 enable $PLUGIN_LIST $CONFIG_LIST
@@ -183,6 +184,7 @@ MythVideo related options:
 
 MythWeather related options:
   --enable-mythweather     build the mythweather plugin [$weather]
+  --enable-worldweather    build the world weather map screen [$worldweather]
 
 MythZoneMinder related options:
   --enable-mythzoneminder  build the mythzoneminder plugin [$zoneminder]
@@ -254,6 +256,10 @@ for opt do
   ;;
   --disable-dcraw) dcraw="no"
   ;;
+  --enable-worldweather) worldweather="yes"
+  ;;
+  --disable-worldweather) worldweather="no"
+  ;;
   --icc-profile=*) icc=`echo $opt | cut -d '=' -f 2`
   ;;
   --enable-all)
@@ -462,6 +468,15 @@ if ! disabled weather; then
         disable_weather "DateTime::Format::ISO8601"
     check_pl_lib "SOAP::Lite"  || disable_weather "SOAP::Lite"
     check_pl_lib "JSON"  || disable_weather "JSON"
+
+    if test "$worldweather" != "no" ; then
+        worldweather="no"
+        if has_library libQtLocation ; then
+            if has_header qt4/QtLocation/QGeoCoordinate ; then
+                worldweather="yes"
+            fi
+        fi
+    fi
 fi
 
 if test "$dcraw" != "no" ; then
@@ -658,9 +673,40 @@ else
   echo "        MythVideo      plugin will not be built"
 fi
 
+###########################################################
+#                                                         #
+#   MythWeather related configuration options             #
+#                                                         #
+###########################################################
+
 if test "$weather" = "yes" ; then
   echo "        MythWeather    plugin will be built"
   echo "SUBDIRS += mythweather" >> ./config.pro
+  echo "/*" >  ./mythweather/mythweather/config.h
+  echo "    Automatically generated by configure - do not modify" >> ./mythweather/mythweather/config.h
+  echo "*/" >> ./mythweather/mythweather/config.h
+
+  echo "#" > ./mythweather/config.pro
+  echo "#    Automatically generated by configure - modify only under penalty of death" >> ./mythweather/config.pro
+  echo "#" >> ./mythweather/config.pro
+
+  echo "#" > ./mythweather/mythweather/config.pro
+  echo "#    Automatically generated by configure - modify only under penalty of death" >> ./mythweather/mythweather/config.pro
+  echo "#" >> ./mythweather/mythweather/config.pro
+  if test "$worldweather" = "yes" ; then
+    echo "        World weather map screen         will be included in MythWeather"
+    echo "#define USE_WORLDWEATHERMAP 1" >> ./mythweather/mythweather/config.h
+    echo "CONFIG += mobility" >> ./mythweather/mythweather/config.pro
+    echo "MOBILITY += location" >> ./mythweather/mythweather/config.pro
+    echo "HEADERS += worldweatherscreen.h location.h" >> ./mythweather/mythweather/config.pro
+    echo "SOURCES += worldweatherscreen.cpp location.cpp" >> ./mythweather/mythweather/config.pro
+    echo "installmaps.path = $${PREFIX}/share/mythtv/mythweather/bluemarble" >> ./mythweather/mythweather/config.pro
+    echo "installmaps.files = bluemarble/*.png" >> ./mythweather/mythweather/config.pro
+    echo "INSTALLS += datafiles installscripts installmaps" >> ./mythweather/mythweather/config.pro
+  fi
+  if test "$worldweather" = "no" ; then
+          echo "        World weather map screen         will not be included in MythWeather"
+  fi
 else
   echo "        MythWeather    plugin will not be built"
 fi
diff -rupN -x '*~' -x '*.mak' -x config.ep -x config.log -x cleanup mythtv.orig/mythplugins//mythweather/mythweather/location.cpp mythtv/mythplugins//mythweather/mythweather/location.cpp
--- mythtv.orig/mythplugins//mythweather/mythweather/location.cpp	1970-01-01 01:00:00.000000000 +0100
+++ mythtv/mythplugins//mythweather/mythweather/location.cpp	2012-02-04 20:02:05.000000000 +0100
@@ -0,0 +1,110 @@
+/*
+    Copyright (C) 2012 EngSaS - Engineering Solutions and Services Langenbach. All rights reserved.
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+
+#include "location.h"
+
+#include <mythimage.h>
+#include <mythmainwindow.h>
+
+#include <QStringList>
+#include <QPainter>
+#include <QPixmap>
+#include <QFont>
+#include <QFontMetrics>
+
+void Location::setName(QString name)
+{
+    m_name = name;
+}
+
+QString Location::name() const
+{
+    return m_name;
+}
+
+void Location::setCurrentTemperature(QString temperature)
+{
+    m_currentTemperature = temperature;
+}
+
+QString Location::currentTemperature() const
+{
+    return m_currentTemperature;
+}
+
+void Location::setCurrentWeatherIcon(QString icon)
+{
+    if(!icon.startsWith(":/weathermap/") && !icon.startsWith(":"))
+        icon = ":/weathermap/"+ icon;
+    m_currentWeatherIcon = icon;
+}
+
+QString Location::currentWeatherIcon() const
+{
+    return m_currentWeatherIcon;
+}
+
+bool Location::addToMap(MythImage* map, QPoint position)
+{
+    if(!map)
+        return false;
+
+    // load weather icon
+    MythImage *weatherIcon = GetMythMainWindow()->GetCurrentPainter()->GetFormatImage();
+    weatherIcon->UpRef();
+    weatherIcon->Load(currentWeatherIcon());
+    if(weatherIcon->isNull())
+        weatherIcon->Load("unknown.png");
+
+    // add the temperature value
+    QFont iconFont;
+    iconFont.setPixelSize(40);
+    QFontMetrics metrics(iconFont);
+    QString text = QObject::tr("%1: %2 C").arg(name()).arg(currentTemperature());
+    int iconWidth = weatherIcon->size().width();
+    if(iconWidth < metrics.width(text))
+        iconWidth = metrics.width(text);
+
+    QPixmap icon(iconWidth,
+                 weatherIcon->size().height() + 1.2 * float(metrics.height()));
+    icon.fill(Qt::transparent);
+    QPainter painter;
+    painter.begin(&icon);
+    painter.setFont(iconFont);
+    painter.setPen(Qt::white);
+    // remember: iconWidth = weatherIcon.width()
+    painter.drawImage((icon.width() - iconWidth)/2, 0, *weatherIcon);
+    painter.drawText(float(icon.width() - metrics.width(text)) / 2.0,
+                     weatherIcon->height(),
+                     text
+    );
+    painter.end();
+
+    icon = icon.scaled(iconWidth, 60, Qt::KeepAspectRatio);
+    // set offset
+    position.setX(position.x() - icon.width()/2);
+    position.setY(position.y() - 40);
+    painter.begin(map);
+    painter.drawPixmap(position.x(), position.y(), icon);
+    painter.end();
+		
+		weatherIcon->DownRef();
+
+    return true;
+}
diff -rupN -x '*~' -x '*.mak' -x config.ep -x config.log -x cleanup mythtv.orig/mythplugins//mythweather/mythweather/location.h mythtv/mythplugins//mythweather/mythweather/location.h
--- mythtv.orig/mythplugins//mythweather/mythweather/location.h	1970-01-01 01:00:00.000000000 +0100
+++ mythtv/mythplugins//mythweather/mythweather/location.h	2012-02-04 19:58:06.000000000 +0100
@@ -0,0 +1,54 @@
+/*
+    Copyright (C) 2012 EngSaS - Engineering Solutions and Services Langenbach. All rights reserved.
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+
+#ifndef LOCATION_H
+#define LOCATION_H
+
+// #include <QGeoCoordinate>
+
+class MythImage;
+
+#include <QMetaType>
+
+/**
+    * @brief Represents a location with its coordinates and weather.
+    */
+class Location
+{
+    public:
+        inline Location(){ m_currentWeatherIcon = "unknown.png"; }
+
+        void setName(QString name);
+        QString name() const;
+        void setCurrentTemperature(QString temperature);
+        QString currentTemperature() const;
+        void setCurrentWeatherIcon(QString icon);
+        QString currentWeatherIcon() const;
+        bool addToMap(MythImage *map, QPoint position);
+
+    private:
+        QString m_name, m_station, m_currentWeatherIcon;
+        QString m_currentTemperature;
+};
+
+typedef QList<Location*> Locations;
+
+Q_DECLARE_METATYPE(Location)
+
+#endif // LOCATION_H
diff -rupN -x '*~' -x '*.mak' -x config.ep -x config.log -x cleanup mythtv.orig/mythplugins//mythweather/mythweather/mythweather.pro mythtv/mythplugins//mythweather/mythweather/mythweather.pro
--- mythtv.orig/mythplugins//mythweather/mythweather/mythweather.pro	2012-02-04 18:15:48.000000000 +0100
+++ mythtv/mythplugins//mythweather/mythweather/mythweather.pro	2012-02-04 17:33:44.000000000 +0100
@@ -25,8 +25,14 @@ INSTALLS += datafiles installscripts
 # Input
 
 HEADERS += weather.h weatherSource.h sourceManager.h weatherScreen.h dbcheck.h
-HEADERS += weatherSetup.h weatherUtils.h
+HEADERS += weatherSetup.h weatherUtils.h config.h
 SOURCES += main.cpp weather.cpp weatherSource.cpp sourceManager.cpp weatherScreen.cpp
 SOURCES += dbcheck.cpp weatherSetup.cpp weatherUtils.cpp
 
 include ( ../../libs-targetfix.pro )
+
+include (config.pro)
+
+!exists( config.pro ) {
+   error(Missing config.pro: please run the configure script)
+}
diff -rupN -x '*~' -x '*.mak' -x config.ep -x config.log -x cleanup mythtv.orig/mythplugins//mythweather/mythweather/weatherScreen.cpp mythtv/mythplugins//mythweather/mythweather/weatherScreen.cpp
--- mythtv.orig/mythplugins//mythweather/mythweather/weatherScreen.cpp	2012-02-04 18:15:48.000000000 +0100
+++ mythtv/mythplugins//mythweather/mythweather/weatherScreen.cpp	2012-02-04 18:39:46.000000000 +0100
@@ -8,10 +8,18 @@ using namespace std;
 // MythWeather headers
 #include "weather.h"
 #include "weatherScreen.h"
+#include "config.h"
+#ifdef USE_WORLDWEATHERMAP
+    #include "worldweatherscreen.h"
+#endif
 
 WeatherScreen *WeatherScreen::loadScreen(MythScreenStack *parent,
                                          ScreenListInfo *screenDefn, int id)
 {
+#ifdef USE_WORLDWEATHERMAP
+    if(screenDefn->name == "World Weather")
+        return new WorldWeatherScreen(parent, screenDefn, id);
+#endif
     return new WeatherScreen(parent, screenDefn, id);
 }
 
@@ -24,7 +32,6 @@ WeatherScreen::WeatherScreen(MythScreenS
     m_prepared(false),
     m_id(id)
 {
-
     QStringList types = m_screenDefn->dataTypes;
 
     for (int i = 0; i < types.size(); ++i)
diff -rupN -x '*~' -x '*.mak' -x config.ep -x config.log -x cleanup mythtv.orig/mythplugins//mythweather/mythweather/weatherUtils.cpp mythtv/mythplugins//mythweather/mythweather/weatherUtils.cpp
--- mythtv.orig/mythplugins//mythweather/mythweather/weatherUtils.cpp	2012-02-04 18:15:48.000000000 +0100
+++ mythtv/mythplugins//mythweather/mythweather/weatherUtils.cpp	2012-02-04 18:39:52.000000000 +0100
@@ -8,6 +8,10 @@
 
 // MythWeather headers
 #include "weatherUtils.h"
+#include "config.h"
+#ifdef USE_WORLDWEATHERMAP
+    #include "worldweatherscreen.h"
+#endif
 
 static QString getScreenTitle(const QString &screenName)
 {
@@ -33,6 +37,15 @@ ScreenListMap loadScreens()
 {
     ScreenListMap screens;
     QList<QString> searchpath = GetMythUI()->GetThemeSearchPath();
+
+#ifdef USE_WORLDWEATHERMAP
+    ScreenListInfo info = WorldWeatherScreen::info();
+    screens[info.name].multiLoc = false;
+    screens[info.name].name = info.name;
+    screens[info.name].title = info.title;
+    screens[info.name].hasUnits = true;
+    screens[info.name].dataTypes = info.dataTypes;
+#endif
     
     // Check the theme first if it has its own weather-screens.xml
     
diff -rupN -x '*~' -x '*.mak' -x config.ep -x config.log -x cleanup mythtv.orig/mythplugins//mythweather/mythweather/worldweatherscreen.cpp mythtv/mythplugins//mythweather/mythweather/worldweatherscreen.cpp
--- mythtv.orig/mythplugins//mythweather/mythweather/worldweatherscreen.cpp	1970-01-01 01:00:00.000000000 +0100
+++ mythtv/mythplugins//mythweather/mythweather/worldweatherscreen.cpp	2012-02-04 19:59:47.000000000 +0100
@@ -0,0 +1,239 @@
+/*
+    Copyright (C) 2012 EngSaS - Engineering Solutions and Services Langenbach. All rights reserved.
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+
+#include "worldweatherscreen.h"
+
+#include "location.h"
+
+#include <QGeoSearchManager>
+#include <QGeoServiceProvider>
+#include <QGeoCoordinate>
+#include <QGeoAddress>
+
+#include <mythimage.h>
+#include <mythuiimage.h>
+#include <mythmainwindow.h>
+#include <mythdirs.h>
+
+#include <cmath>
+
+using namespace QtMobility;
+
+#include <QDebug>
+
+WorldWeatherScreen::WorldWeatherScreen(MythScreenStack* parent,
+                                       ScreenListInfo* screenDefn, int id)
+    : WeatherScreen(parent, screenDefn, id)
+{
+    m_map = NULL;
+    m_geoProvider = NULL;
+    m_geoSearch = NULL;
+// 	manager = NULL;
+}
+
+WorldWeatherScreen::~WorldWeatherScreen()
+{
+    if(m_geoProvider)
+        delete m_geoProvider;
+    m_map->DownRef();
+}
+
+ScreenListInfo WorldWeatherScreen::info()
+{
+    ScreenListInfo info;
+    info.name = "World Weather";
+    info.title = tr("World Weather");
+    info.hasUnits = false;
+    // seems to be ignored right now
+    info.multiLoc = true;
+    info.dataTypes << "cclocation" << "c1location" << "temp";
+    info.dataTypes << "weather" << "weather_icon" << "copyright";
+    return info;
+}
+
+bool WorldWeatherScreen::Create(void )
+{
+    bool foundtheme = false;
+
+    // Load the theme for this screen
+    foundtheme = LoadWindowFromXML("weather-ui.xml", "World Weather", this);
+
+    if (!foundtheme)
+        return false;
+
+    bool err = false;
+
+    UIUtilE::Assign(this, m_mapImage, "map_image", &err);
+
+    if (err)
+    {
+        VERBOSE(VB_IMPORTANT, "Window World Weather is missing required elements.");
+        return false;
+    }
+
+    if (!prepareScreen(true))
+        return false;
+
+    return true;
+}
+
+void WorldWeatherScreen::newData(QString loc, units_t units, DataMap data)
+{
+    Location *location = new Location();
+    QGeoAddress address;
+    foreach(QString key, data.uniqueKeys()){
+        qDebug() << "WorldWeather::newData: "+ key +": "+ data.value(key);
+        if(key.endsWith("location")){
+            QStringList names = data.value(key).split(", ");
+            if(names.size() < 2)
+                return;
+            location->setName(names[0]);
+            address.setCity(names[0]);
+            address.setCountry(names[1]);
+        }
+        if(key == "temp")
+            location->setCurrentTemperature(data.value(key));
+        if(key == "weather_icon")
+            location->setCurrentWeatherIcon(data.value(key));
+    }
+    if(address.isEmpty())
+        return;
+    m_locations << location;
+    QGeoSearchReply *reply = m_geoSearch->geocode(address);
+    connect(reply, SIGNAL(finished()), this, SLOT(geocodingFinished()));
+}
+
+bool WorldWeatherScreen::prepareScreen(bool checkOnly)
+{
+    // setup provider and scene
+    if(!m_geoProvider)
+        m_geoProvider = new QGeoServiceProvider("nokia");
+    if(!m_geoProvider)
+        return false;
+    if(!m_geoSearch)
+        m_geoSearch = m_geoProvider->searchManager();
+    if(!m_geoSearch)
+        return false;
+
+    if(!m_map || m_map->isNull())
+        if(!loadMap(SatelliteMapDay))
+            return false;
+
+    // draw empty map
+    m_map->UpRef();
+    setMap();
+
+    return true;
+}
+
+void WorldWeatherScreen::geocodingFinished()
+{
+    qDebug() << "geocoding finished";
+    QGeoSearchReply *reply = qobject_cast<QGeoSearchReply*>(sender());
+    if(!reply)
+        return;
+    if(!reply->error() != QGeoSearchReply::NoError){
+        qDebug() << "Network error";
+// 		return;
+    }
+    if(m_locations.size() < 1)
+        return;
+
+    Location *location = m_locations.first();
+    foreach(QGeoPlace place, reply->places()){
+        qDebug() << "trying "+ place.address().city() +" --> "+ location->name();
+        if(place.address().city() == location->name()){
+            qDebug() << "add "+ place.address().city() +" to the map";
+            if(!location->addToMap(m_map, coordinateToWorldReferencePosition(place.coordinate())))
+                qDebug() << "drawing weathericon has failed";
+            m_locations.removeFirst();
+            delete location;
+            if(m_locations.size() < 1)
+                break;
+            location = m_locations.first();
+        }
+    }
+
+    setMap();
+    emit screenReady(this);
+}
+
+bool WorldWeatherScreen::loadMap(MapType type)
+{
+    if(!m_map)
+        m_map = GetMythMainWindow()->GetCurrentPainter()->GetFormatImage();
+
+    if(type == SatelliteMapNight)
+        m_map->Load(
+            QString("%1/mythweather/bluemarble/land_ocean_ice_lights_8192.png")
+            .arg(GetShareDir())
+        );
+    else
+        m_map->Load(
+            QString("%1/mythweather/bluemarble/land_shallow_topo_8192.png")
+            .arg(GetShareDir())
+        );
+    if(m_map->isNull())
+        return false;
+    m_map->Resize(GetMythMainWindow()->size(), true);
+    return !m_map->isNull();
+}
+
+void WorldWeatherScreen::setMap()
+{
+    if(!m_map || !m_mapImage)
+        return;
+
+    MythImage *image = GetMythMainWindow()->GetCurrentPainter()->GetFormatImage();
+    image->UpRef();
+    image->Assign(m_map->copy());
+    m_mapImage->SetImage(image);
+}
+
+QPoint WorldWeatherScreen::coordinateToWorldReferencePosition(
+        const QGeoCoordinate& coordinate) const
+{
+    double longitude = coordinate.longitude();
+    double latitude = coordinate.latitude();
+
+    int x = floor(longitude * mLongitude() + nLongitude());
+    int y = floor(latitude * mLatitude() + nLatitude());
+
+    return QPoint(x, y);
+}
+
+qreal WorldWeatherScreen::mLongitude() const
+{
+    return qreal(m_map->size().width())/360.0;
+}
+
+qreal WorldWeatherScreen::mLatitude() const
+{
+    return qreal(m_map->size().height())/-180.0;
+}
+
+qreal WorldWeatherScreen::nLongitude() const
+{
+    return qreal(m_map->size().width())/2.0;
+}
+
+qreal WorldWeatherScreen::nLatitude() const
+{
+    return qreal(m_map->size().height()) + mLatitude() * 90.0;
+}
diff -rupN -x '*~' -x '*.mak' -x config.ep -x config.log -x cleanup mythtv.orig/mythplugins//mythweather/mythweather/worldweatherscreen.h mythtv/mythplugins//mythweather/mythweather/worldweatherscreen.h
--- mythtv.orig/mythplugins//mythweather/mythweather/worldweatherscreen.h	1970-01-01 01:00:00.000000000 +0100
+++ mythtv/mythplugins//mythweather/mythweather/worldweatherscreen.h	2012-02-04 19:45:04.000000000 +0100
@@ -0,0 +1,109 @@
+/*
+    Copyright (C) 2012 EngSaS - Engineering Solutions and Services Langenbach. All rights reserved.
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+
+#ifndef WORLDWEATHERSCREEN_H
+#define WORLDWEATHERSCREEN_H
+
+#include "weatherScreen.h"
+#include "weatherUtils.h"
+
+class Location;
+
+#include <QGeoCoordinate>
+
+namespace QtMobility{
+    class QGeoServiceProvider;
+    class QGeoSearchManager;
+};
+
+class MythImage;
+
+class WorldWeatherScreen : public WeatherScreen
+{
+    Q_OBJECT
+    public:
+        /**
+          * @brief List of supported maps.
+          */
+        enum MapType{
+            SatelliteMapDay,		/**< Day map */
+            SatelliteMapNight  	/**< Night map */ 
+        };
+
+        WorldWeatherScreen(MythScreenStack *parent,
+                           ScreenListInfo *screenDefn, int id);
+        ~WorldWeatherScreen();
+
+        static ScreenListInfo info();
+
+        bool Create(void);
+
+    public slots:
+        void newData(QString loc, units_t units, DataMap data);
+
+    protected:
+        bool prepareScreen(bool checkOnly = false);
+
+    private slots:
+        void geocodingFinished();
+
+    private:
+        /**
+          * @brief Loads the map of @p type type from file.
+          */
+        bool loadMap(MapType type);
+        /**
+          * @brief Set a copy of m_map into m_mapImage.
+          */
+        void setMap();
+        /**
+          * @brief Converts the coordinate \a coordinate to a pixel position
+          *        on the entire map at the maximum zoom level.
+          * 
+          * @note Do not check for longitude between -180 and 180 and latitude 
+          *       between -90 and 90, because the map starts over after 180 and
+          *       -180 and so on.
+          */
+        QPoint coordinateToWorldReferencePosition(
+          const QtMobility::QGeoCoordinate &coordinate) const;
+        /**
+          * @brief pixel/Deg for longitude.
+          */
+        qreal mLongitude() const;
+        /**
+          * @brief pixel/deg for latitude.
+          */
+        qreal mLatitude() const;
+        /**
+          * @brief pixel of greenwich meridian.
+          */
+        qreal nLongitude() const;
+        /**
+          * @brief pixel of equator.
+          */
+        qreal nLatitude() const;
+
+        MythImage *m_map;
+        MythUIImage *m_mapImage;
+        QtMobility::QGeoServiceProvider *m_geoProvider;
+        QtMobility::QGeoSearchManager *m_geoSearch;
+        QList<Location*> m_locations;
+};
+
+#endif // WORLDWEATHERSCREEN_H
diff -rupN -x '*~' -x '*.mak' -x config.ep -x config.log -x cleanup mythtv.orig/mythplugins//mythweather/theme/default/weather-ui.xml mythtv/mythplugins//mythweather/theme/default/weather-ui.xml
--- mythtv.orig/mythplugins//mythweather/theme/default/weather-ui.xml	2012-02-04 18:15:48.000000000 +0100
+++ mythtv/mythplugins//mythweather/theme/default/weather-ui.xml	2012-01-27 19:36:59.000000000 +0100
@@ -45,6 +45,12 @@
         </textarea>
     </window>
 
+    <window name="World Weather">
+        <imagetype name="map_image">
+            <area>30,80,760,380</area>
+        </imagetype>
+    </window>
+    
     <window name="Current Conditions">
 
         <shape name="background1">
diff -rupN -x '*~' -x '*.mak' -x config.ep -x config.log -x cleanup mythtv.orig/mythplugins//mythweather/theme/default-wide/weather-ui.xml mythtv/mythplugins//mythweather/theme/default-wide/weather-ui.xml
--- mythtv.orig/mythplugins//mythweather/theme/default-wide/weather-ui.xml	2012-02-04 18:15:48.000000000 +0100
+++ mythtv/mythplugins//mythweather/theme/default-wide/weather-ui.xml	2012-01-27 19:37:07.000000000 +0100
@@ -45,6 +45,12 @@
         </textarea>
     </window>
 
+    <window name="World Weather">
+        <imagetype name="map_image">
+            <area>0,65,1280,640</area>
+        </imagetype>
+    </window>
+
     <window name="Current Conditions">
 
         <shape name="background1">
