summaryrefslogtreecommitdiffstats
path: root/weather
diff options
context:
space:
mode:
authorLuiz Agostini <luiz.agostini@openbossa.org>2009-10-31 18:19:33 -0300
committerLuiz Agostini <luiz.agostini@openbossa.org>2009-11-05 00:42:08 -0300
commit691f8eec255eb56805df2b24f68b75a689417c3a (patch)
tree448287396e9614ae7fcde89c46437f8a1d99a9db /weather
parent699ca328ed70776d6a8357de62784e3fff5447e6 (diff)
Weather: rain is now using pixmap loader.
Signed-off-by: Luiz Agostini <luiz.agostini@openbossa.org>
Diffstat (limited to 'weather')
-rw-r--r--weather/bootmanager.cpp2
-rw-r--r--weather/forecastrain.cpp12
-rw-r--r--weather/forecastrain.h2
3 files changed, 14 insertions, 2 deletions
diff --git a/weather/bootmanager.cpp b/weather/bootmanager.cpp
index 6b2d9ad..cf36ecb 100644
--- a/weather/bootmanager.cpp
+++ b/weather/bootmanager.cpp
@@ -3,6 +3,7 @@
#include "forecastprovider.h"
#include "pixmaploader.h"
#include "forecasthungitem.h"
+#include "forecastrain.h"
#include <QDebug>
@@ -22,6 +23,7 @@ void BootManager::run()
m_pendingResponses = m_keys.count();
PixmapLoader::connectToOnIdleSignal(this, SLOT(pixmapLoaderIsIdle()));
int count = ForecastHungItem::loadImages();
+ count += ForecastRain::loadImages();
m_imagesLoaded = count == 0;
diff --git a/weather/forecastrain.cpp b/weather/forecastrain.cpp
index 41ba8fd..1b61d32 100644
--- a/weather/forecastrain.cpp
+++ b/weather/forecastrain.cpp
@@ -31,14 +31,15 @@
#include "forecastrain.h"
#include "settings.h"
+#include "pixmaploader.h"
typedef struct
{
const char * const prefix;
- QPixmap pic() const { return Settings::getScaledPic(name()); }
+ QString name() const { return prefix; }
+ QPixmap pic() const { return PixmapLoader::getPic(name()); }
private:
- QString name() const { return prefix; }
} RainItemData;
@@ -63,6 +64,13 @@ ForecastRain::ForecastRain(RainType type, QGraphicsItem *parent)
m_animation.setLoopCount(-1);
}
+int ForecastRain::loadImages()
+{
+ for (int i = 0; i < RainItemCount;++i)
+ PixmapLoader::load(RainItemArray[i].name());
+ return RainItemCount;
+}
+
void ForecastRain::start()
{
if (m_items.count() > 1) {
diff --git a/weather/forecastrain.h b/weather/forecastrain.h
index ebaa335..91b5aaf 100644
--- a/weather/forecastrain.h
+++ b/weather/forecastrain.h
@@ -54,6 +54,8 @@ public:
};
ForecastRain(RainType type, QGraphicsItem *parent = 0);
+ static int loadImages();
+
QRectF boundingRect () const;
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0);