kdecore Library: kwinmodule.h Source File (kdecore Library)

| # kdecore Library API Documentation
Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# kwinmodule.h

    00001 /* This file is part of the KDE libraries
    00002     Copyright (C) 1999 Matthias Ettrich (ettrich@kde.org)
    00003
    00004     This library is free software; you can redistribute it and/or
    00005     modify it under the terms of the GNU Library General Public
    00006     License as published by the Free Software Foundation; either
    00007     version 2 of the License, or (at your option) any later version.
    00008
    00009     This library is distributed in the hope that it will be useful,
    00010     but WITHOUT ANY WARRANTY; without even the implied warranty of
    00011     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00012     Library General Public License for more details.
    00013
    00014     You should have received a copy of the GNU Library General Public License
    00015     along with this library; see the file COPYING.LIB.  If not, write to
    00016     the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    00017     Boston, MA 02111-1307, USA.
    00018 */
    00019 /*
    00020  * kwinmodule.h. Part of the KDE project.
    00021  */
    00022
    00023 #ifndef KWINMODULE_H
    00024 #define KWINMODULE_H
    00025
    00026 #include <qobject.h>
    00027 #include <qvaluelist.h>
    00028 #include "kdelibs_export.h"
    00029
    00030 #ifdef Q_OS_UNIX
    00031
    00032 class KWinModulePrivate;
    00033
    00052 class KDECORE_EXPORT KWinModule : public QObject
    00053 {
    00054     Q_OBJECT
    00055
    00056 public:
    00057
    00058     enum { INFO_DESKTOP=1,
    00059            INFO_WINDOWS=2,
    00060            INFO_ALL=32767 };
    00088     KWinModule( QObject* parent, int what );
    00094     KWinModule( QObject* parent = 0 );
    00095
    00099     ~KWinModule();
    00100
    00119     const QValueList<WId>& windows() const;
    00120
    00127     const QValueList<WId>& stackingOrder() const;
    00128
    00134     bool hasWId(WId id) const;
    00135
    00140     const QValueList<WId>& systemTrayWindows() const;
    00141
    00146     int currentDesktop() const;
    00147
    00152     int numberOfDesktops() const;
    00153
    00159     WId activeWindow() const;
    00160
    00168     QRect workArea( int desktop = - 1 ) const;
    00169
    00170
    00181     QRect workArea( const QValueList<WId> &excludes, int desktop = -1) const;
    00182
    00188     QString desktopName( int desktop ) const;
    00189
    00195     void setDesktopName( int desktop, const QString& name );
    00196
    00206     void doNotManage( const QString& title );
    00207
    00208
    00209 signals:
    00210
    00215     void currentDesktopChanged( int desktop);
    00216
    00221     void windowAdded(WId id);
    00222
    00227     void windowRemoved(WId id);
    00228
    00233     void activeWindowChanged(WId id);
    00234
    00238     void desktopNamesChanged();
    00239
    00244     void numberOfDesktopsChanged(int num);
    00245
    00250     void systemTrayWindowAdded(WId id);
    00251
    00256     void systemTrayWindowRemoved(WId id);
    00257
    00261     void workAreaChanged();
    00262
    00268     void strutChanged();
    00269
    00274     void stackingOrderChanged();
    00275
    00276
    00287     void windowChanged(WId id, const unsigned long* properties );
    00288
    00298     void windowChanged(WId id, unsigned int properties);
    00299
    00304     void windowChanged(WId id);
    00305
    00306 protected:
    00307     virtual void connectNotify( const char* signal );
    00308
    00309 private:
    00310     void init(int);
    00311
    00312     KWinModulePrivate* d;
    00313
    00314     friend class KWinModulePrivate;
    00315 };
    00316
    00317 #endif //Q_OS_UNIX
    00318
    00319 #endif

This file is part of the documentation for kdecore Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:18:12 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003