-rw-r--r-- | library/resource.cpp | 35 | ||||
-rw-r--r-- | library/resource.h | 11 |
2 files changed, 33 insertions, 13 deletions
diff --git a/library/resource.cpp b/library/resource.cpp index 18139b9..da09892 100644 --- a/library/resource.cpp +++ b/library/resource.cpp @@ -27,2 +27,8 @@ +/* + * enable or disable the search for the icon without .png or .xpm + * suffix. We would use MimeType to lookup possible extensions... + */ +bool qpe_fast_findPixmap = false; // visible in libqpe + // this namespace is just a workaround for a gcc bug @@ -67,4 +73,4 @@ QPixmap Resource::loadPixmap( const QString &pix ) if ( !QPixmapCache::find(key,pm) ) { - QImage I = loadImage(pix); - if( I.isNull() ) { + QImage I = loadImage(pix); + if( I.isNull() ) { qWarning( "Could not load %s", pix.latin1() ); @@ -74,2 +80,4 @@ QPixmap Resource::loadPixmap( const QString &pix ) } + }else { + qWarning("In Cache for %s pixmap %s", qApp->argv()[0], pix.local8Bit().data() ); } @@ -142,13 +150,16 @@ QString Resource::findPixmap( const QString &pix ) - // All formats... - QStringList exts = opie_imageExtensions(); - for ( QStringList::ConstIterator it = exts.begin(); it!=exts.end(); ++it ) { - QString f = picsPath + pix + "." + *it; - if ( QFile(f).exists() ) - return f; - } + if ( !qpe_fast_findPixmap ) { + printf("Doing slow search for %s %s\n", qApp->argv()[0], pix.local8Bit().data() ); + // All formats... + QStringList exts = opie_imageExtensions(); + for ( QStringList::ConstIterator it = exts.begin(); it!=exts.end(); ++it ) { + QString f = picsPath + pix + "." + *it; + if ( QFile(f).exists() ) + return f; + } - // Finally, no (or existing) extension... - if ( QFile( picsPath + pix ).exists() ) - return picsPath + pix; + // Finally, no (or existing) extension... + if ( QFile( picsPath + pix ).exists() ) + return picsPath + pix; + } diff --git a/library/resource.h b/library/resource.h index 1f1ba9a..4a3502a 100644 --- a/library/resource.h +++ b/library/resource.h @@ -44,5 +44,12 @@ public: +extern bool qpe_fast_findPixmap; // Inline for compatibility with SHARP ROMs -inline QIconSet Resource::loadIconSet( const QString &pix ) +inline QIconSet Resource::loadIconSet( const QString &pix ) { + /* + * disable the slow load + */ + bool oldMode = qpe_fast_findPixmap; + qpe_fast_findPixmap = true; + QPixmap dpm = loadPixmap( pix + "_disabled" ); @@ -52,2 +59,4 @@ inline QIconSet Resource::loadIconSet( const QString &pix ) is.setPixmap( dpm, pm.width() <= 22 ? QIconSet::Small : QIconSet::Large, QIconSet::Disabled ); + + qpe_fast_findPixmap = oldMode; return is; |