summaryrefslogtreecommitdiff
authorzecke <zecke>2004-02-18 19:10:20 (UTC)
committer zecke <zecke>2004-02-18 19:10:20 (UTC)
commit859ad22772e90dfbd4a8c0760ddc52d451f50011 (patch) (unidiff)
treef5c37a68dd06326703205f665aa193ce16481b6c
parent7d16774139aa40fb812d636bcf9ad3f45aa2b9e1 (diff)
downloadopie-859ad22772e90dfbd4a8c0760ddc52d451f50011.zip
opie-859ad22772e90dfbd4a8c0760ddc52d451f50011.tar.gz
opie-859ad22772e90dfbd4a8c0760ddc52d451f50011.tar.bz2
Commit the patch to allow overwriting the inline image
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--library/resource.cpp29
1 files changed, 22 insertions, 7 deletions
diff --git a/library/resource.cpp b/library/resource.cpp
index 4108883..f70658d 100644
--- a/library/resource.cpp
+++ b/library/resource.cpp
@@ -23,32 +23,34 @@
23#include "resource.h" 23#include "resource.h"
24#include "mimetype.h" 24#include "mimetype.h"
25#include <qdir.h> 25#include <qdir.h>
26#include <qfile.h> 26#include <qfile.h>
27#include <qregexp.h> 27#include <qregexp.h>
28#include <qpixmapcache.h> 28#include <qpixmapcache.h>
29#include <qpainter.h> 29#include <qpainter.h>
30 30
31// this namespace is just a workaround for a gcc bug 31// this namespace is just a workaround for a gcc bug
32// gcc exports inline functions in the generated file 32// gcc exports inline functions in the generated file
33// inlinepics_p.h 33// inlinepics_p.h
34 34
35namespace { 35namespace {
36#include "inlinepics_p.h" 36#include "inlinepics_p.h"
37} 37}
38 38
39static bool g_notUseSet = ::getenv("OVERWRITE_ICON_SET");
40
39/*! 41/*!
40 \class Resource resource.h 42 \class Resource resource.h
41 \brief The Resource class provides access to named resources. 43 \brief The Resource class provides access to named resources.
42 44
43 The resources may be provided from files or other sources. 45 The resources may be provided from files or other sources.
44 46
45 The allSounds() function returns a list of all the sounds available. 47 The allSounds() function returns a list of all the sounds available.
46 A particular sound can be searched for using findSound(). 48 A particular sound can be searched for using findSound().
47 49
48 Images can be loaded with loadImage(), loadPixmap(), loadBitmap() 50 Images can be loaded with loadImage(), loadPixmap(), loadBitmap()
49 and loadIconSet(). 51 and loadIconSet().
50 52
51 \ingroup qtopiaemb 53 \ingroup qtopiaemb
52*/ 54*/
53 55
54/*! 56/*!
@@ -146,40 +148,53 @@ QString Resource::findSound( const QString &name )
146 148
147/*! 149/*!
148 Returns a list of all sound names. 150 Returns a list of all sound names.
149*/ 151*/
150QStringList Resource::allSounds() 152QStringList Resource::allSounds()
151{ 153{
152 QDir resourcedir( QPEApplication::qpeDir() + "sounds/", "*.wav" ); 154 QDir resourcedir( QPEApplication::qpeDir() + "sounds/", "*.wav" );
153 QStringList entries = resourcedir.entryList(); 155 QStringList entries = resourcedir.entryList();
154 QStringList result; 156 QStringList result;
155 for (QStringList::Iterator i=entries.begin(); i != entries.end(); ++i) 157 for (QStringList::Iterator i=entries.begin(); i != entries.end(); ++i)
156 result.append((*i).replace(QRegExp("\\.wav"),"")); 158 result.append((*i).replace(QRegExp("\\.wav"),""));
157 return result; 159 return result;
158} 160}
159 161
160static QImage load_image(const QString &name) 162static QImage load_image(const QString &name)
161{ 163{
162 QImage img = qembed_findImage(name.latin1()); 164 if (g_notUseSet ) {
163 if ( img.isNull() ) { 165 // try file
164 // No inlined image, try file 166 QImage img;
165 QString f = Resource::findPixmap(name); 167 QString f = Resource::findPixmap(name);
166 if ( !f.isEmpty() ) 168 if ( !f.isEmpty() )
167 img.load(f); 169 img.load(f);
170 if (img.isNull() )
171 img = qembed_findImage(name.latin1() );
172 return img;
173 }
174 else{
175 QImage img = qembed_findImage(name.latin1());
176
177 if ( img.isNull() ) {
178 // No inlined image, try file
179 QString f = Resource::findPixmap(name);
180 if ( !f.isEmpty() )
181 img.load(f);
182 }
183 return img;
168 } 184 }
169 return img;
170} 185}
171 186
172/*! 187/*!
173 Returns the QImage called \a name. You should avoid including 188 Returns the QImage called \a name. You should avoid including
174 any filename type extension (e.g. .png, .xpm). 189 any filename type extension (e.g. .png, .xpm).
175*/ 190*/
176QImage Resource::loadImage( const QString &name) 191QImage Resource::loadImage( const QString &name)
177{ 192{
178 #ifndef QT_NO_DEPTH_32// have alpha-blended pixmaps 193 #ifndef QT_NO_DEPTH_32// have alpha-blended pixmaps
179 static QImage last_enabled; 194 static QImage last_enabled;
180 static QString last_enabled_name; 195 static QString last_enabled_name;
181 if ( name == last_enabled_name ) 196 if ( name == last_enabled_name )
182 return last_enabled; 197 return last_enabled;
183#endif 198#endif
184 QImage img = load_image(name); 199 QImage img = load_image(name);
185 #ifndef QT_NO_DEPTH_32// have alpha-blended pixmaps 200 #ifndef QT_NO_DEPTH_32// have alpha-blended pixmaps