[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    extragear/utils/rsibreak/src
From:       Tom Albers <toma () kde ! org>
Date:       2010-10-01 20:16:01
Message-ID: 20101001201601.6D235AC891 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1181695 by toma:

When there is a new screen added, the primaryScreen might change. Adapt all the code \
to cope with such a change. Untested. BUG=201215


 M  +2 -3      breakbase.cpp  
 M  +7 -1      breakcontrol.cpp  
 M  +1 -0      breakcontrol.h  
 M  +8 -0      plasmaeffect.cpp  
 M  +3 -0      plasmaeffect.h  
 M  +19 -4     slideshoweffect.cpp  
 M  +4 -1      slideshoweffect.h  


--- trunk/extragear/utils/rsibreak/src/breakbase.cpp #1181694:1181695
@@ -127,14 +127,13 @@
 
 void BreakBase::setGrayEffectOnAllScreens( bool on )
 {
-    if (m_grayEffectOnAllScreensActivated == on )
-        return;
-
     m_grayEffectOnAllScreensActivated = on;
     delete m_grayEffectOnAllScreens;
+    if ( on ) {
     m_grayEffectOnAllScreens = new GrayEffectOnAllScreens();
     m_grayEffectOnAllScreens->setLevel( 70 );
 }
+}
 
 void BreakBase::setGrayEffectLevel( int level )
 {
--- trunk/extragear/utils/rsibreak/src/breakcontrol.cpp #1181694:1181695
@@ -58,8 +58,14 @@
 
     setLayout( m_vbox );
 
+    connect( QApplication::desktop(), SIGNAL( screenCountChanged( int ) ),
+            SLOT( slotCenterIt() ) );
 
-    //center it!
+    slotCenterIt();
+}
+
+void BreakControl::slotCenterIt()
+{
     const QRect r( QApplication::desktop()->screenGeometry(
                        QApplication::desktop()->primaryScreen() ) );
 
--- trunk/extragear/utils/rsibreak/src/breakcontrol.h #1181694:1181695
@@ -39,6 +39,7 @@
     void paintEvent( QPaintEvent *event );
 
 private slots:
+    void slotCenterIt();
     void slotLock();
 
 signals:
--- trunk/extragear/utils/rsibreak/src/plasmaeffect.cpp #1181694:1181695
@@ -28,6 +28,14 @@
         : BreakBase( parent )
 {
     // Make all other screens gray...
+    slotGray();
+    connect( QApplication::desktop(), SIGNAL( screenCountChanged( int ) ),
+            SLOT( slotGray() ) );
+}
+
+void PlasmaEffect::slotGray()
+{
+    // Make all other screens gray...
     setGrayEffectOnAllScreens( true );
     excludeGrayEffectOnScreen( QApplication::desktop()->primaryScreen() );
 }
--- trunk/extragear/utils/rsibreak/src/plasmaeffect.h #1181694:1181695
@@ -33,6 +33,9 @@
 public slots:
     void activate();
     void deactivate();
+
+private slots:
+    void slotGray();
 };
 
 #endif // PLASMAEFFECT_H
--- trunk/extragear/utils/rsibreak/src/slideshoweffect.cpp #1181694:1181695
@@ -33,8 +33,9 @@
         : BreakBase( parent ), m_searchRecursive( false ), m_showSmallImages(false)
 {
     // Make all other screens gray...
-    setGrayEffectOnAllScreens( true );
-    excludeGrayEffectOnScreen( QApplication::desktop()->primaryScreen() );
+    slotGray();
+    connect( QApplication::desktop(), SIGNAL( screenCountChanged( int ) ),
+             SLOT( slotGray() ) );
 
     m_slidewidget = new SlideWidget( 0 );
     KWindowSystem::forceActiveWindow( m_slidewidget->winId() );
@@ -53,6 +54,13 @@
     delete m_slidewidget;
 }
 
+void SlideEffect::slotGray()
+{
+    // Make all other screens gray...
+    setGrayEffectOnAllScreens( true );
+    excludeGrayEffectOnScreen( QApplication::desktop()->primaryScreen() );
+}
+
 bool SlideEffect::hasImages()
 {
     return m_files.count() > 0;
@@ -190,13 +198,20 @@
 SlideWidget::SlideWidget( QWidget *parent )
         : QWidget( parent, Qt::Popup )
 {
+    slotDimension();
+    connect( QApplication::desktop(), SIGNAL( screenCountChanged( int ) ),
+             SLOT( slotDimension() ) );
+}
+
+SlideWidget::~SlideWidget() {}
+
+void SlideWidget::slotDimension()
+{
     QRect rect = QApplication::desktop()->screenGeometry(
                      QApplication::desktop()->primaryScreen() );
     setGeometry( rect );
 }
 
-SlideWidget::~SlideWidget() {}
-
 void SlideWidget::setImage( QImage* image )
 {
     QPalette palette;
--- trunk/extragear/utils/rsibreak/src/slideshoweffect.h #1181694:1181695
@@ -39,8 +39,8 @@
     bool hasImages();
     void loadImage();
 
-
 private slots:
+    void slotGray();
     void slotNewSlide();
 
 private:
@@ -75,6 +75,9 @@
     ~SlideWidget();
 
     void setImage( QImage* image );
+
+private slots:
+    void slotDimension();
 };
 
 #   endif


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic