summaryrefslogtreecommitdiff
path: root/library/resource.cpp
authormickeyl <mickeyl>2005-02-19 17:18:27 (UTC)
committer mickeyl <mickeyl>2005-02-19 17:18:27 (UTC)
commitbe32e0c045814142954ac37c89715313633d6aa2 (patch) (side-by-side diff)
tree93a6fc7a84b4073fb04cc0b3377c4bb7e11bd091 /library/resource.cpp
parentb7bf9c7acdc010eb30bc246372efb0d1b394166a (diff)
downloadopie-be32e0c045814142954ac37c89715313633d6aa2.zip
opie-be32e0c045814142954ac37c89715313633d6aa2.tar.gz
opie-be32e0c045814142954ac37c89715313633d6aa2.tar.bz2
make inline image support optional
Diffstat (limited to 'library/resource.cpp') (more/less context) (show whitespace changes)
-rw-r--r--library/resource.cpp34
1 files changed, 29 insertions, 5 deletions
diff --git a/library/resource.cpp b/library/resource.cpp
index b31876f..3b5e9ec 100644
--- a/library/resource.cpp
+++ b/library/resource.cpp
@@ -29,9 +29,11 @@
// gcc exports inline functions in the generated file
// inlinepics_p.h
+#ifndef LIBQPE_NO_INLINE_IMAGES
namespace {
#include "inlinepics_p.h"
}
+#endif
static bool g_notUseSet = ::getenv("OVERWRITE_ICON_SET");
@@ -96,7 +98,6 @@ QBitmap Resource::loadBitmap( const QString &pix )
QString Resource::findPixmap( const QString &pix )
{
QString picsPath = QPEApplication::qpeDir() + "pics/";
-
QString f;
// Common case optimizations...
@@ -107,6 +108,17 @@ QString Resource::findPixmap( const QString &pix )
if ( QFile( f ).exists() )
return f;
+#ifdef LIBQPE_NO_INLINE_IMAGES
+ QString picsPathInline = picsPath + "inline/";
+ // Common case optimizations...
+ f = picsPathInline + pix + ".png";
+ if ( QFile( f ).exists() )
+ return f;
+ f = picsPathInline + pix + ".xpm";
+ if ( QFile( f ).exists() )
+ return f;
+#endif
+
// All formats...
QStrList fileFormats = QImageIO::inputFormats();
QString ff = fileFormats.first();
@@ -163,20 +175,32 @@ QStringList Resource::allSounds()
static QImage load_image(const QString &name)
{
+ QImage img;
+
if (g_notUseSet ) {
// try file
- QImage img;
QString f = Resource::findPixmap(name);
if ( !f.isEmpty() )
img.load(f);
+#ifndef LIBQPE_NO_INLINE_IMAGES
if (img.isNull() )
img = qembed_findImage(name.latin1() );
+#endif
return img;
}
else{
- QImage img = qembed_findImage(name.latin1());
-
- if ( img.isNull() ) {
+#ifndef LIBQPE_NO_INLINE_IMAGES
+ img = qembed_findImage(name.latin1());
+#else
+ QString f = Resource::findPixmap( "/inline/" + name );
+ if ( !f.isEmpty() )
+ {
+ img.load(f);
+ return img;
+ }
+#endif
+ if ( img.isNull() )
+ {
// No inlined image, try file
QString f = Resource::findPixmap(name);
if ( !f.isEmpty() )