summaryrefslogtreecommitdiff
path: root/core/launcher/launcherview.cpp
authormickeyl <mickeyl>2005-02-16 19:20:06 (UTC)
committer mickeyl <mickeyl>2005-02-16 19:20:06 (UTC)
commit5ad21664e5db417a18682903a660f4651c68ff12 (patch) (unidiff)
tree12fc6b3e45b3575cf71c2b5dd1e26c4592f5381b /core/launcher/launcherview.cpp
parent4fc6942eed4abdc0d4b5e1b3460a32852731c7b4 (diff)
downloadopie-5ad21664e5db417a18682903a660f4651c68ff12.zip
opie-5ad21664e5db417a18682903a660f4651c68ff12.tar.gz
opie-5ad21664e5db417a18682903a660f4651c68ff12.tar.bz2
this patch adds the possibility to have a static (as in non-scrolling) background
in the launcher. major drawback: most of our machines (at least the SA1100 based ones) are too slow to make it flicker free w/ tracking (repainting while dragging the scrollbar). so i needed to disable tracking for the static background. it's a hidden setting and disabled per default. please play around with it and give me your comments. How to enable: Launcher.conf: [GUI] StaticBackground = 1
Diffstat (limited to 'core/launcher/launcherview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/launcher/launcherview.cpp29
1 files changed, 23 insertions, 6 deletions
diff --git a/core/launcher/launcherview.cpp b/core/launcher/launcherview.cpp
index 2b34cc5..e7229ee 100644
--- a/core/launcher/launcherview.cpp
+++ b/core/launcher/launcherview.cpp
@@ -287,16 +287,24 @@ LauncherIconView::LauncherIconView( QWidget* parent, const char* name )
287{ 287{
288 m_EyeCallBack = 0; 288 m_EyeCallBack = 0;
289 if (!sm_EyeCache) sm_EyeCache = new QMap<QString,QPixmap>(); 289 if (!sm_EyeCache) sm_EyeCache = new QMap<QString,QPixmap>();
290 sortmeth = Name; 290 sortmeth = Name;
291 hidden.setAutoDelete(TRUE); 291 hidden.setAutoDelete(TRUE);
292 ike = FALSE; 292 ike = FALSE;
293 calculateGrid( Bottom ); 293 calculateGrid( Bottom );
294 connect(&m_eyeTimer,SIGNAL(timeout()),this,SLOT(stopEyeTimer())); 294 connect(&m_eyeTimer,SIGNAL(timeout()),this,SLOT(stopEyeTimer()));
295 Config config( "Launcher" );
296 config.setGroup( "GUI" );
297 staticBackground = config.readEntry( "StaticBackground", false );
298 if ( staticBackground )
299 {
300 setStaticBackground( true );
301 verticalScrollBar()->setTracking( false );
302 }
295} 303}
296 304
297LauncherIconView::~LauncherIconView() 305LauncherIconView::~LauncherIconView()
298{ 306{
299 odebug << "LauncherIconView::~LauncherIconView()" << oendl; 307 odebug << "LauncherIconView::~LauncherIconView()" << oendl;
300#if 0 // debuggery 308#if 0 // debuggery
301 QListIterator<AppLnk> it(hidden); 309 QListIterator<AppLnk> it(hidden);
302 AppLnk* l; 310 AppLnk* l;
@@ -349,27 +357,36 @@ void LauncherIconView::setTypeFilter(const QString& typefilter, bool resort)
349void LauncherIconView::setItemTextPos( ItemTextPos pos ) 357void LauncherIconView::setItemTextPos( ItemTextPos pos )
350{ 358{
351 calculateGrid( pos ); 359 calculateGrid( pos );
352 QIconView::setItemTextPos( pos ); 360 QIconView::setItemTextPos( pos );
353} 361}
354 362
355void LauncherIconView::drawBackground( QPainter *p, const QRect &r ) 363void LauncherIconView::drawBackground( QPainter *p, const QRect &r )
356{ 364{
357 if ( !bgPixmap.isNull() ) { 365 if ( bgPixmap.isNull() )
358 p->drawTiledPixmap( r, bgPixmap, 366 {
359 QPoint( (r.x() + contentsX()) % bgPixmap.width(),
360 (r.y() + contentsY()) % bgPixmap.height() ) );
361 } else {
362 p->fillRect( r, bgColor ); 367 p->fillRect( r, bgColor );
363 } 368 }
369 else
370 {
371 if ( staticBackground )
372 {
373 p->drawPixmap( r.x(), r.y(), bgPixmap, r.x(), r.y(), r.width(), r.height() );
374 }
375 else
376 {
377 p->drawTiledPixmap( r, bgPixmap, QPoint( (r.x() + contentsX()) % bgPixmap.width(),
378 (r.y() + contentsY()) % bgPixmap.height() ) );
379 }
380 }
364} 381}
365 382
366void LauncherIconView::addCatsAndMimes(AppLnk* app) 383void LauncherIconView::addCatsAndMimes(AppLnk* app)
367 { 384{
368 // QStringList c = app->categories(); 385 // QStringList c = app->categories();
369 // for (QStringList::ConstIterator cit=c.begin(); cit!=c.end(); ++cit) { 386 // for (QStringList::ConstIterator cit=c.begin(); cit!=c.end(); ++cit) {
370 // cats.replace(*cit,(void*)1); 387 // cats.replace(*cit,(void*)1);
371 // } 388 // }
372 QString maj=app->type(); 389 QString maj=app->type();
373 int sl=maj.find('/'); 390 int sl=maj.find('/');
374 if (sl>=0) { 391 if (sl>=0) {
375 QString k; 392 QString k;