From 8f904d99e7b6e04b6043226a63f6c417171a7cad Mon Sep 17 00:00:00 2001 From: sandman Date: Tue, 01 Oct 2002 22:44:28 +0000 Subject: busyindicator type can now be changed at run-time --- diff --git a/core/launcher/launcher.cpp b/core/launcher/launcher.cpp index 6948976..66cc3e6 100644 --- a/core/launcher/launcher.cpp +++ b/core/launcher/launcher.cpp @@ -247,6 +247,9 @@ void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder, ((LauncherView*)stack->widget(0))->setFocus(); + cfg. setGroup ( "GUI" ); + setBusyIndicatorType ( cfg. readEntry ( "BusyType", QString::null )); + categoryBar->show(); stack->show(); } @@ -371,6 +374,12 @@ LauncherView *CategoryTabWidget::view( const QString &id ) return (LauncherView *)stack->widget(idx); } +void CategoryTabWidget::setBusyIndicatorType ( const QString &type ) +{ + for ( QStringList::Iterator it = ids. begin ( ); it != ids. end ( ); ++it ) + view ( *it )-> setBusyIndicatorType ( type ); +} + //=========================================================================== CategoryTabBar::CategoryTabBar( QWidget *parent, const char *name ) @@ -1167,6 +1176,11 @@ void Launcher::launcherMessage( const QCString &msg, const QByteArray &data) tabs->view(id)->setViewFont( QFont(fam, size, weight, italic!=0) ); qDebug( "setFont: %s, %d, %d, %d", fam.latin1(), size, weight, italic ); } + else if ( msg == "setBusyIndicatorType(QString)" ) { + QString type; + stream >> type; + tabs->setBusyIndicatorType(type); + } } void Launcher::storageChanged() diff --git a/core/launcher/launcher.h b/core/launcher/launcher.h index e3881ea..89bf6f3 100644 --- a/core/launcher/launcher.h +++ b/core/launcher/launcher.h @@ -63,7 +63,7 @@ public: void setBusy(bool on); QString getAllDocLinkInfo() const; LauncherView *view( const QString &id ); - + void setBusyIndicatorType ( const QString &type ); signals: void selected(const QString&); void clicked(const AppLnk*); diff --git a/core/launcher/launcherview.cpp b/core/launcher/launcherview.cpp index e15b150..fa46543 100644 --- a/core/launcher/launcherview.cpp +++ b/core/launcher/launcherview.cpp @@ -52,6 +52,11 @@ public: int ref; }; +enum BusyIndicatorType { + BIT_Normal = 0, + BIT_Blinking +}; + static QMap *bgCache = 0; class LauncherIconView : public QIconView { @@ -82,6 +87,8 @@ public: } #endif } + + void setBusyIndicatorType ( BusyIndicatorType t ) { busyType = t; } QPixmap* busyPixmap() const { return (QPixmap*)&bpm[::abs(busystate)]; } QIconViewItem* busyItem() const { return bsy; } @@ -97,7 +104,6 @@ public: void setBusy(bool on) { QIconViewItem *c = on ? currentItem() : 0; - qDebug ( "set busy %d -> %s", on, c ? c-> text ().latin1() : "(null)" ); if ( bsy != c ) { QIconViewItem *oldbsy = bsy; @@ -136,11 +142,15 @@ public: bpm [i].convertFromImage( img ); } - busystate = 0; - if ( busytimer ) - killTimer ( busytimer ); - timerEvent ( 0 ); - busytimer = startTimer ( 200 ); + if ( busyType == BIT_Blinking ) { + busystate = 0; + if ( busytimer ) + killTimer ( busytimer ); + busytimer = startTimer ( 200 ); + } + else + busystate = 3; + timerEvent ( 0 ); } else { killTimer ( busytimer ); @@ -337,6 +347,7 @@ private: QColor bgColor; int busytimer; int busystate; + BusyIndicatorType busyType; }; @@ -913,3 +924,11 @@ void LauncherView::paletteChange( const QPalette &p ) icons->setPalette( QPalette(cg,cg,cg) ); } + +void LauncherView::setBusyIndicatorType ( const QString &type ) +{ + if ( type. lower ( ) == "blink" ) + icons-> setBusyIndicatorType ( BIT_Blinking ); + else + icons-> setBusyIndicatorType ( BIT_Normal ); +} diff --git a/core/launcher/launcherview.h b/core/launcher/launcherview.h index 2fb37b6..194e4a2 100644 --- a/core/launcher/launcherview.h +++ b/core/launcher/launcherview.h @@ -65,6 +65,8 @@ public: void setViewFont( const QFont & ); + void setBusyIndicatorType ( const QString &type ); + public slots: void populate( AppLnkSet *folder, const QString& categoryfilter ); @@ -97,6 +99,7 @@ private: BackgroundType bgType; QString bgName; QColor textCol; + int busyType; }; #endif // LAUNCHERVIEW_H -- cgit v0.9.0.2