author | mark <mark> | 2002-02-23 18:25:50 (UTC) |
---|---|---|
committer | mark <mark> | 2002-02-23 18:25:50 (UTC) |
commit | c200950a2b120b015783f1552fd68c355bcc3185 (patch) (side-by-side diff) | |
tree | de9337b1d339fb18c14b7711ce53f6547bc6e2e7 | |
parent | cb8381a2969b3a51697ec2034a919fffa9a9c022 (diff) | |
download | opie-c200950a2b120b015783f1552fd68c355bcc3185.zip opie-c200950a2b120b015783f1552fd68c355bcc3185.tar.gz opie-c200950a2b120b015783f1552fd68c355bcc3185.tar.bz2 |
Makes it possible to choose your background image with a config item in
qpe.conf
Accepts both absolute paths '/opt/QtPalmtop/pics/mypic.png' and
loadPixmap type paths 'mypic'
-rw-r--r-- | core/launcher/launcherview.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/core/launcher/launcherview.cpp b/core/launcher/launcherview.cpp index 7b20fdc..0df949e 100644 --- a/core/launcher/launcherview.cpp +++ b/core/launcher/launcherview.cpp @@ -18,16 +18,17 @@ ** **********************************************************************/ #include "launcherview.h" #include <qpe/qpeapplication.h> #include <qpe/applnk.h> #include <qpe/qpedebug.h> +#include <qpe/config.h> #include <qpe/categories.h> #include <qpe/categoryselect.h> #include <qpe/menubutton.h> #include <qpe/resource.h> #include <qpe/qpetoolbar.h> #include <qtimer.h> #include <qdict.h> @@ -121,16 +122,21 @@ public: if (sl>=0) { QString k = maj.left(sl); mimes.replace(k,(void*)1); } } void drawBackground( QPainter *p, const QRect &r ) { + Config config("qpe"); + config.setGroup("Appearance"); + QString backgroundImage = config.readEntry("BackgroundImage"); + + if (backgroundImage.isNull()) backgroundImage="qpe-background"; int backgroundMode = QPixmap::defaultDepth() >= 12 ? 1 : 0; //int backgroundMode = 2; if ( backgroundMode == 1 ) { // Double buffer the background static QPixmap *bg = NULL; static QColor bgColor; @@ -138,19 +144,23 @@ public: if ( (bg == NULL) || (bgColor != colorGroup().button()) ) { // Create a new background double buffer if (bg == NULL) bg = new QPixmap( width(), height() ); bgColor = colorGroup().button(); QPainter painter( bg ); painter.fillRect( QRect( 0, 0, width(), height() ), colorGroup().background().light(110)); - - // Overlay the Qtopia logo in the center - QImage logo = Resource::loadImage( "qpe-background" ); + // Overlay the Qtopia logo in the center + QImage logo; + if (QFile::exists(backgroundImage)) { + logo = QImage(backgroundImage); + } else { + logo = Resource::loadImage(backgroundImage ); + } if ( !logo.isNull() ) painter.drawImage( (width() - logo.width()) / 2, (height() - logo.height()) / 2, logo ); } // Draw the double buffer to the widget (it is tiled for when the icon view is large) p->drawTiledPixmap( r, *bg, QPoint( (r.x() + contentsX()) % bg->width(), (r.y() + contentsY()) % bg->height() ) ); |