author | mickeyl <mickeyl> | 2005-02-17 14:26:43 (UTC) |
---|---|---|
committer | mickeyl <mickeyl> | 2005-02-17 14:26:43 (UTC) |
commit | faaa7b79330fe3c5647182fafdb2bb584dc70638 (patch) (side-by-side diff) | |
tree | ffa63faf248cf20f363b80b579855b124d34032f | |
parent | 766ac02e5586cd67b75b320fe1abee513384860c (diff) | |
download | opie-faaa7b79330fe3c5647182fafdb2bb584dc70638.zip opie-faaa7b79330fe3c5647182fafdb2bb584dc70638.tar.gz opie-faaa7b79330fe3c5647182fafdb2bb584dc70638.tar.bz2 |
The response to the static background pixmap was overwhelmingly positive, hence:
* fix static background pixmap also for tiled pixmaps
* make it customizable via LauncherSettings
* enable it per default
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | core/launcher/launcher.cpp | 8 | ||||
-rw-r--r-- | core/launcher/launcherview.cpp | 28 | ||||
-rw-r--r-- | core/launcher/launcherview.h | 3 | ||||
-rw-r--r-- | core/settings/launcher/tabssettings.cpp | 13 | ||||
-rw-r--r-- | core/settings/launcher/tabssettings.h | 2 |
6 files changed, 43 insertions, 13 deletions
@@ -3,4 +3,6 @@ New Features ------------ + * Launcher: Support a static background pixmap (mickeyl) + * LauncherSettings: Choose whether to have a static background pixmap (mickeyl) Fixed Bugs 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 @@ -457,4 +457,12 @@ void LauncherTabWidget::launcherMessage( const QCString &msg, const QByteArray & odebug << "Doctab enabled " << id << oendl; reCheckDoctab(id); + } else if ( msg == "setStaticBackground(bool)" ) { + int set; stream >> set; + odebug << "setStaticBackground " << set << oendl; + for (int i = 0; i < categoryBar->count(); i++ ) + { + LauncherView* view = static_cast<LauncherTab*>( categoryBar->tab(i) )->view; + view->iconView()->setStaticBackgroundPicture( set ); + } } } 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 @@ -295,10 +295,5 @@ LauncherIconView::LauncherIconView( QWidget* parent, const char* name ) Config config( "Launcher" ); config.setGroup( "GUI" ); - staticBackground = config.readEntry( "StaticBackground", false ); - if ( staticBackground ) - { - setStaticBackground( true ); - verticalScrollBar()->setTracking( false ); - } + setStaticBackgroundPicture( config.readBoolEntry( "StaticBackground", true ) ); } @@ -316,4 +311,19 @@ LauncherIconView::~LauncherIconView() } +void LauncherIconView::setStaticBackgroundPicture( bool enable ) +{ + staticBackground = enable; + if ( staticBackground ) + { + setStaticBackground( true ); + verticalScrollBar()->setTracking( false ); + } + else + { + setStaticBackground( false ); + verticalScrollBar()->setTracking( true ); + } +} + int LauncherIconView::compare(const AppLnk* a, const AppLnk* b) { @@ -371,10 +381,10 @@ void LauncherIconView::drawBackground( QPainter *p, const QRect &r ) if ( staticBackground ) { - p->drawPixmap( r.x(), r.y(), bgPixmap, r.x(), r.y(), r.width(), r.height() ); + p->drawTiledPixmap( r, bgPixmap, QPoint( r.x() % bgPixmap.width(), r.y() % bgPixmap.height() ) ); } else { - p->drawTiledPixmap( r, bgPixmap, QPoint( (r.x() + contentsX()) % bgPixmap.width(), - (r.y() + contentsY()) % bgPixmap.height() ) ); + p->drawTiledPixmap( r, bgPixmap, QPoint( (r.x() + contentsX()) % bgPixmap.width(), + (r.y() + contentsY()) % bgPixmap.height() ) ); } } 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 @@ -83,6 +83,6 @@ public: void setColNumber( int ); - void relayout(void); + LauncherIconView* iconView() { return icons; }; signals: @@ -170,4 +170,5 @@ public: void updateCategoriesAndMimeTypes(); void setBusyIndicatorType ( BusyIndicatorType t ); + void setStaticBackgroundPicture( bool enable ); void doAutoScroll() { diff --git a/core/settings/launcher/tabssettings.cpp b/core/settings/launcher/tabssettings.cpp index 42f0568..fca6b20 100644 --- a/core/settings/launcher/tabssettings.cpp +++ b/core/settings/launcher/tabssettings.cpp @@ -84,4 +84,7 @@ TabsSettings::TabsSettings ( QWidget *parent, const char *name ) m_busyani = new QCheckBox ( tr( "Enable animated busy indicator" ), this ); lay-> addMultiCellWidget ( m_busyani, 6, 6, 0, 1 ); + + m_staticbackground = new QCheckBox( tr( "Enable static background pixmap" ), this ); + lay->addMultiCellWidget( m_staticbackground, 7, 7, 0, 1 ); p1-> setEnabled ( false ); @@ -96,4 +99,5 @@ TabsSettings::TabsSettings ( QWidget *parent, const char *name ) QWhatsThis::add ( m_bigbusy, tr( "Activate this, if you want a big busy indicator in the middle of the screen instead of the one in taskbar." )); QWhatsThis::add ( m_busyani, tr( "Activate this, if you want an animatedbusy indicator for starting applications in the Launcher." )); + QWhatsThis::add ( m_staticbackground, tr( "Activate this, if you want the background pixmap not to scroll with the icons." )); } @@ -123,4 +127,5 @@ void TabsSettings::init ( ) m_busyani-> setChecked ( cfg. readEntry ( "BusyType" ). lower ( ) == "animated" ); m_bigbusy->setChecked( cfg. readBoolEntry ( "BigBusy" ) ); + m_staticbackground->setChecked( cfg.readBoolEntry( "StaticBackground", true ) ); } @@ -280,6 +285,6 @@ void TabsSettings::accept ( ) QString busytype = QString ( m_busyani-> isChecked ( ) ? "Animated" : "" ); cfg. writeEntry ( "BusyType", busytype ); - - cfg. writeEntry ( "BigBusy", m_bigbusy->isChecked( ) ); + cfg. writeEntry ( "BigBusy", m_bigbusy->isChecked( ) ); + cfg. writeEntry ( "StaticBackground", m_staticbackground->isChecked( ) ); { @@ -287,4 +292,8 @@ void TabsSettings::accept ( ) e << busytype; } + { + QCopEnvelope e ( "QPE/Launcher", "setStaticBackground(bool)" ); + e << m_staticbackground->isChecked(); + } } diff --git a/core/settings/launcher/tabssettings.h b/core/settings/launcher/tabssettings.h index 600c65c..bbe1e72 100644 --- a/core/settings/launcher/tabssettings.h +++ b/core/settings/launcher/tabssettings.h @@ -60,5 +60,5 @@ private: QStringList m_ids; QMap <QString, TabConfig> m_tabs; - QCheckBox *m_busyani, *m_bigbusy; + QCheckBox *m_busyani, *m_bigbusy, *m_staticbackground; }; |