summaryrefslogtreecommitdiff
path: root/core/launcher
Unidiff
Diffstat (limited to 'core/launcher') (more/less context) (show whitespace changes)
-rw-r--r--core/launcher/launcher.cpp8
-rw-r--r--core/launcher/launcherview.cpp24
-rw-r--r--core/launcher/launcherview.h3
3 files changed, 27 insertions, 8 deletions
diff --git a/core/launcher/launcher.cpp b/core/launcher/launcher.cpp
index 4255b44..4ec5f4c 100644
--- a/core/launcher/launcher.cpp
+++ b/core/launcher/launcher.cpp
@@ -447,24 +447,32 @@ void LauncherTabWidget::launcherMessage( const QCString &msg, const QByteArray &
447 setBusyIndicatorType( type ); 447 setBusyIndicatorType( type );
448 }else if ( msg == "home()" ) { 448 }else if ( msg == "home()" ) {
449 if ( isVisibleWindow( static_cast<QWidget*>(parent())->winId() ) ) { 449 if ( isVisibleWindow( static_cast<QWidget*>(parent())->winId() ) ) {
450 if (categoryBar) 450 if (categoryBar)
451 categoryBar->nextTab(); 451 categoryBar->nextTab();
452 }else { 452 }else {
453 static_cast<QWidget*>(parent())->raise(); 453 static_cast<QWidget*>(parent())->raise();
454 } 454 }
455 } else if (msg=="doctabEnabled(int)") { 455 } else if (msg=="doctabEnabled(int)") {
456 int id; stream >> id; 456 int id; stream >> id;
457 odebug << "Doctab enabled " << id << oendl; 457 odebug << "Doctab enabled " << id << oendl;
458 reCheckDoctab(id); 458 reCheckDoctab(id);
459 } else if ( msg == "setStaticBackground(bool)" ) {
460 int set; stream >> set;
461 odebug << "setStaticBackground " << set << oendl;
462 for (int i = 0; i < categoryBar->count(); i++ )
463 {
464 LauncherView* view = static_cast<LauncherTab*>( categoryBar->tab(i) )->view;
465 view->iconView()->setStaticBackgroundPicture( set );
466 }
459 } 467 }
460} 468}
461 469
462void LauncherTabWidget::reCheckDoctab(int how) 470void LauncherTabWidget::reCheckDoctab(int how)
463{ 471{
464 if ((bool)how == docTabEnabled) { 472 if ((bool)how == docTabEnabled) {
465 /* nothing to do */ 473 /* nothing to do */
466 return; 474 return;
467 } 475 }
468 if (docLoadingWidget) { 476 if (docLoadingWidget) {
469 stack->removeWidget(docLoadingWidget); 477 stack->removeWidget(docLoadingWidget);
470 delete docLoadingWidget; 478 delete docLoadingWidget;
diff --git a/core/launcher/launcherview.cpp b/core/launcher/launcherview.cpp
index e7229ee..a4c7561 100644
--- a/core/launcher/launcherview.cpp
+++ b/core/launcher/launcherview.cpp
@@ -285,45 +285,55 @@ QMap<QString,QPixmap>* LauncherIconView::sm_EyeCache=0;
285LauncherIconView::LauncherIconView( QWidget* parent, const char* name ) 285LauncherIconView::LauncherIconView( QWidget* parent, const char* name )
286 : QIconView(parent,name),tf(""),cf(0),bsy(0),busyTimer(0),bigIcns(TRUE),bgColor(white),numColumns(0) 286 : QIconView(parent,name),tf(""),cf(0),bsy(0),busyTimer(0),bigIcns(TRUE),bgColor(white),numColumns(0)
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" ); 295 Config config( "Launcher" );
296 config.setGroup( "GUI" ); 296 config.setGroup( "GUI" );
297 staticBackground = config.readEntry( "StaticBackground", false ); 297 setStaticBackgroundPicture( config.readBoolEntry( "StaticBackground", true ) );
298 if ( staticBackground )
299 {
300 setStaticBackground( true );
301 verticalScrollBar()->setTracking( false );
302 }
303} 298}
304 299
305LauncherIconView::~LauncherIconView() 300LauncherIconView::~LauncherIconView()
306{ 301{
307 odebug << "LauncherIconView::~LauncherIconView()" << oendl; 302 odebug << "LauncherIconView::~LauncherIconView()" << oendl;
308#if 0 // debuggery 303#if 0 // debuggery
309 QListIterator<AppLnk> it(hidden); 304 QListIterator<AppLnk> it(hidden);
310 AppLnk* l; 305 AppLnk* l;
311 while ((l=it.current())) { 306 while ((l=it.current())) {
312 ++it; 307 ++it;
313 //odebug << "" << l << ": hidden (should remove)" << oendl; 308 //odebug << "" << l << ": hidden (should remove)" << oendl;
314 } 309 }
315#endif 310#endif
316} 311}
317 312
313void LauncherIconView::setStaticBackgroundPicture( bool enable )
314{
315 staticBackground = enable;
316 if ( staticBackground )
317 {
318 setStaticBackground( true );
319 verticalScrollBar()->setTracking( false );
320 }
321 else
322 {
323 setStaticBackground( false );
324 verticalScrollBar()->setTracking( true );
325 }
326}
327
318int LauncherIconView::compare(const AppLnk* a, const AppLnk* b) 328int LauncherIconView::compare(const AppLnk* a, const AppLnk* b)
319{ 329{
320 switch (sortmeth) { 330 switch (sortmeth) {
321 case Name: 331 case Name:
322 return a->name().lower().compare(b->name().lower()); 332 return a->name().lower().compare(b->name().lower());
323 case Date: { 333 case Date: {
324 QFileInfo fa(a->linkFileKnown() ? a->linkFile() : a->file()); 334 QFileInfo fa(a->linkFileKnown() ? a->linkFile() : a->file());
325 QFileInfo fb(b->linkFileKnown() ? b->linkFile() : b->file()); 335 QFileInfo fb(b->linkFileKnown() ? b->linkFile() : b->file());
326 return fa.lastModified().secsTo(fb.lastModified()); 336 return fa.lastModified().secsTo(fb.lastModified());
327 } 337 }
328 case Type: 338 case Type:
329 return a->type().compare(b->type()); 339 return a->type().compare(b->type());
@@ -361,25 +371,25 @@ void LauncherIconView::setItemTextPos( ItemTextPos pos )
361} 371}
362 372
363void LauncherIconView::drawBackground( QPainter *p, const QRect &r ) 373void LauncherIconView::drawBackground( QPainter *p, const QRect &r )
364{ 374{
365 if ( bgPixmap.isNull() ) 375 if ( bgPixmap.isNull() )
366 { 376 {
367 p->fillRect( r, bgColor ); 377 p->fillRect( r, bgColor );
368 } 378 }
369 else 379 else
370 { 380 {
371 if ( staticBackground ) 381 if ( staticBackground )
372 { 382 {
373 p->drawPixmap( r.x(), r.y(), bgPixmap, r.x(), r.y(), r.width(), r.height() ); 383 p->drawTiledPixmap( r, bgPixmap, QPoint( r.x() % bgPixmap.width(), r.y() % bgPixmap.height() ) );
374 } 384 }
375 else 385 else
376 { 386 {
377 p->drawTiledPixmap( r, bgPixmap, QPoint( (r.x() + contentsX()) % bgPixmap.width(), 387 p->drawTiledPixmap( r, bgPixmap, QPoint( (r.x() + contentsX()) % bgPixmap.width(),
378 (r.y() + contentsY()) % bgPixmap.height() ) ); 388 (r.y() + contentsY()) % bgPixmap.height() ) );
379 } 389 }
380 } 390 }
381} 391}
382 392
383void LauncherIconView::addCatsAndMimes(AppLnk* app) 393void LauncherIconView::addCatsAndMimes(AppLnk* app)
384{ 394{
385 // QStringList c = app->categories(); 395 // QStringList c = app->categories();
diff --git a/core/launcher/launcherview.h b/core/launcher/launcherview.h
index 97b1dea..6a2d197 100644
--- a/core/launcher/launcherview.h
+++ b/core/launcher/launcherview.h
@@ -73,26 +73,26 @@ public:
73 73
74 enum BackgroundType { Ruled, SolidColor, Image }; 74 enum BackgroundType { Ruled, SolidColor, Image };
75 void setBackgroundType( BackgroundType t, const QString & ); 75 void setBackgroundType( BackgroundType t, const QString & );
76 BackgroundType backgroundType() const { return bgType; } 76 BackgroundType backgroundType() const { return bgType; }
77 77
78 void setTextColor( const QColor & ); 78 void setTextColor( const QColor & );
79 QColor textColor() const { return textCol; } 79 QColor textColor() const { return textCol; }
80 80
81 void setViewFont( const QFont & ); 81 void setViewFont( const QFont & );
82 void clearViewFont(); 82 void clearViewFont();
83 83
84 void setColNumber( int ); 84 void setColNumber( int );
85
86 void relayout(void); 85 void relayout(void);
86 LauncherIconView* iconView() { return icons; };
87 87
88signals: 88signals:
89 void clicked( const AppLnk * ); 89 void clicked( const AppLnk * );
90 void rightPressed( AppLnk * ); 90 void rightPressed( AppLnk * );
91 91
92protected slots: 92protected slots:
93 void selectionChanged(); 93 void selectionChanged();
94 void returnPressed( QIconViewItem *item ); 94 void returnPressed( QIconViewItem *item );
95 void itemClicked( int, QIconViewItem * ); 95 void itemClicked( int, QIconViewItem * );
96 void itemPressed( int, QIconViewItem * ); 96 void itemPressed( int, QIconViewItem * );
97 void sortBy(int); 97 void sortBy(int);
98 void showType(int); 98 void showType(int);
@@ -160,24 +160,25 @@ class LauncherIconView : public QIconView {
160 Q_OBJECT 160 Q_OBJECT
161public: 161public:
162 LauncherIconView( QWidget* parent, const char* name=0 ); 162 LauncherIconView( QWidget* parent, const char* name=0 );
163 ~LauncherIconView(); 163 ~LauncherIconView();
164 QIconViewItem* busyItem() const; 164 QIconViewItem* busyItem() const;
165 165
166#ifdef USE_ANIMATED_BUSY_ICON_OVERLAY 166#ifdef USE_ANIMATED_BUSY_ICON_OVERLAY
167 QPixmap busyPixmap() const { return busyPix; } 167 QPixmap busyPixmap() const { return busyPix; }
168#endif 168#endif
169 void setBigIcons( bool bi ); 169 void setBigIcons( bool bi );
170 void updateCategoriesAndMimeTypes(); 170 void updateCategoriesAndMimeTypes();
171 void setBusyIndicatorType ( BusyIndicatorType t ); 171 void setBusyIndicatorType ( BusyIndicatorType t );
172 void setStaticBackgroundPicture( bool enable );
172 void doAutoScroll() 173 void doAutoScroll()
173 { 174 {
174 // We don't want rubberbanding (yet) 175 // We don't want rubberbanding (yet)
175 } 176 }
176 177
177 void setBusy(bool on); 178 void setBusy(bool on);
178 bool inKeyEvent() const { return ike; } 179 bool inKeyEvent() const { return ike; }
179 180
180 void addItem(AppLnk* app, bool resort=TRUE); 181 void addItem(AppLnk* app, bool resort=TRUE);
181 bool removeLink(const QString& linkfile,bool removeCache = true); 182 bool removeLink(const QString& linkfile,bool removeCache = true);
182 void changeItem(const AppLnk&old,AppLnk*nlink); 183 void changeItem(const AppLnk&old,AppLnk*nlink);
183 184