summaryrefslogtreecommitdiff
path: root/library
authorzecke <zecke>2004-02-18 19:10:20 (UTC)
committer zecke <zecke>2004-02-18 19:10:20 (UTC)
commit859ad22772e90dfbd4a8c0760ddc52d451f50011 (patch) (side-by-side diff)
treef5c37a68dd06326703205f665aa193ce16481b6c /library
parent7d16774139aa40fb812d636bcf9ad3f45aa2b9e1 (diff)
downloadopie-859ad22772e90dfbd4a8c0760ddc52d451f50011.zip
opie-859ad22772e90dfbd4a8c0760ddc52d451f50011.tar.gz
opie-859ad22772e90dfbd4a8c0760ddc52d451f50011.tar.bz2
Commit the patch to allow overwriting the inline image
Diffstat (limited to 'library') (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
@@ -15,48 +15,50 @@
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
#define QTOPIA_INTERNAL_MIMEEXT
#include <qpe/qpeapplication.h>
#include "resource.h"
#include "mimetype.h"
#include <qdir.h>
#include <qfile.h>
#include <qregexp.h>
#include <qpixmapcache.h>
#include <qpainter.h>
// this namespace is just a workaround for a gcc bug
// gcc exports inline functions in the generated file
// inlinepics_p.h
namespace {
#include "inlinepics_p.h"
}
+static bool g_notUseSet = ::getenv("OVERWRITE_ICON_SET");
+
/*!
\class Resource resource.h
\brief The Resource class provides access to named resources.
The resources may be provided from files or other sources.
The allSounds() function returns a list of all the sounds available.
A particular sound can be searched for using findSound().
Images can be loaded with loadImage(), loadPixmap(), loadBitmap()
and loadIconSet().
\ingroup qtopiaemb
*/
/*!
\fn Resource::Resource()
\internal
*/
/*!
Returns the QPixmap called \a pix. You should avoid including
any filename type extension (e.g. .png, .xpm).
*/
@@ -138,56 +140,69 @@ QString Resource::findSound( const QString &name )
QString picsPath = QPEApplication::qpeDir() + "sounds/";
QString result;
if ( QFile( (result = picsPath + name + ".wav") ).exists() )
return result;
return QString();
}
/*!
Returns a list of all sound names.
*/
QStringList Resource::allSounds()
{
QDir resourcedir( QPEApplication::qpeDir() + "sounds/", "*.wav" );
QStringList entries = resourcedir.entryList();
QStringList result;
for (QStringList::Iterator i=entries.begin(); i != entries.end(); ++i)
result.append((*i).replace(QRegExp("\\.wav"),""));
return result;
}
static QImage load_image(const QString &name)
{
- QImage img = qembed_findImage(name.latin1());
- if ( img.isNull() ) {
- // No inlined image, try file
- QString f = Resource::findPixmap(name);
- if ( !f.isEmpty() )
- img.load(f);
+ if (g_notUseSet ) {
+ // try file
+ QImage img;
+ QString f = Resource::findPixmap(name);
+ if ( !f.isEmpty() )
+ img.load(f);
+ if (img.isNull() )
+ img = qembed_findImage(name.latin1() );
+ return img;
+ }
+ else{
+ QImage img = qembed_findImage(name.latin1());
+
+ if ( img.isNull() ) {
+ // No inlined image, try file
+ QString f = Resource::findPixmap(name);
+ if ( !f.isEmpty() )
+ img.load(f);
+ }
+ return img;
}
- return img;
}
/*!
Returns the QImage called \a name. You should avoid including
any filename type extension (e.g. .png, .xpm).
*/
QImage Resource::loadImage( const QString &name)
{
#ifndef QT_NO_DEPTH_32 // have alpha-blended pixmaps
static QImage last_enabled;
static QString last_enabled_name;
if ( name == last_enabled_name )
return last_enabled;
#endif
QImage img = load_image(name);
#ifndef QT_NO_DEPTH_32 // have alpha-blended pixmaps
if ( img.isNull() ) {
// No file, try generating
if ( name[name.length()-1]=='d' && name.right(9)=="_disabled" ) {
last_enabled_name = name.left(name.length()-9);
last_enabled = load_image(last_enabled_name);
if ( last_enabled.isNull() ) {
last_enabled_name = QString::null;
} else {