kdeui Library API Documentation

krootpixmap.h

00001 /* vi: ts=8 sts=4 sw=4
00002  *
00003  * $Id: krootpixmap.h,v 1.14 2002/03/08 18:01:07 rich Exp $
00004  * This file is part of the KDE project, module kdesktop.
00005  * Copyright (C) 1999,2000 Geert Jansen <jansen@kde.org>
00006  *
00007  * You can Freely distribute this program under the GNU Library General
00008  * Public License. See the file "COPYING.LIB" for the exact licensing terms.
00009  */
00010 
00011 #ifndef __KRootPixmap_h_Included__
00012 #define __KRootPixmap_h_Included__
00013 
00014 #include <qobject.h>
00015 #include <qcolor.h>
00016 
00017 #ifndef Q_WS_QWS //FIXME
00018 
00019 class QRect;
00020 class QWidget;
00021 class QTimer;
00022 class KSharedPixmap;
00023 class KRootPixmapData;
00024 
00045 class KRootPixmap: public QObject
00046 {
00047     Q_OBJECT
00048 
00049 public:
00058     KRootPixmap( QWidget *target, const char *name=0 );
00059 
00064     KRootPixmap( QWidget *target, QObject *parent, const char *name=0 );
00065 
00069     virtual ~KRootPixmap();
00070 
00075     bool isAvailable() const;
00076 
00080     bool isActive() const { return m_bActive; }
00081 
00085     int currentDesktop() const;
00086 
00091     bool customPainting() const { return m_bCustomPaint; }
00092 
00093 #ifndef KDE_NO_COMPAT
00094 
00098     bool checkAvailable(bool) { return isAvailable(); }
00099 #endif
00100 
00101 public slots:
00105     virtual void start();
00106 
00110     virtual void stop();
00111 
00122     void setFadeEffect(double strength, const QColor &color);
00123 
00130     void repaint( bool force );
00131 
00137     void repaint();
00138 
00145     void setCustomPainting( bool enable ) { m_bCustomPaint = enable; }
00146 
00151     void enableExports();
00152 
00153 signals:
00160     void backgroundUpdated( const QPixmap &pm );
00161 
00162 protected:
00167     virtual bool eventFilter(QObject *, QEvent *);
00168 
00174     virtual void updateBackground( KSharedPixmap * );
00175 
00176 private slots:
00177     void slotBackgroundChanged(int);
00178     void slotDone(bool);
00179 
00180 private:
00181     bool m_bActive, m_bInit, m_bCustomPaint;
00182     int m_Desk;
00183 
00184     double m_Fade;
00185     QColor m_FadeColor;
00186 
00187     QRect m_Rect;
00188     QWidget *m_pWidget;
00189     QTimer *m_pTimer;
00190     KSharedPixmap *m_pPixmap;
00191     KRootPixmapData *d;
00192 
00193     void init();
00194 };
00195 
00196 #endif // ! Q_WS_QWS
00197 #endif // __KRootPixmap_h_Included__
00198 
KDE Logo
This file is part of the documentation for kdelibs Version 3.1.0.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Oct 8 12:21:01 2003 by doxygen 1.2.18 written by Dimitri van Heesch, © 1997-2001