# kdecore Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Source Files

# kwin.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 #ifndef KWIN_H
    00020 #define KWIN_H
    00021
    00022 #include <sys/types.h>
    00023 #include <qwindowdefs.h>
    00024 #include <qstring.h>
    00025 #include <qpixmap.h>
    00026
    00027 #include "netwm_def.h"
    00028
    00057 class KWin
    00058 {
    00059 public:
    00060
    00068     static void setActiveWindow( WId win);
    00069
    00073     static void invokeContextHelp();
    00074
    00075
    00085     static void setSystemTrayWindowFor( WId trayWin, WId forWin );
    00086
    00087
    00091     struct Info
    00092     {
    00094         WId win;
    00096         long unsigned int state;
    00098         NET::MappingState mappingState;
    00100         NETStrut strut;
    00102         NET::WindowType windowType;
    00104         QString visibleName;
    00106         QString name;
    00108         int desktop;
    00110         bool onAllDesktops;
    00112         pid_t pid;
    00117         bool isIconified() const { return mappingState == NET::Iconic; }
    00119         QRect geometry;
    00121         QRect frameGeometry;
    00122
    00129         QString visibleNameWithState() const;
    00130     };
    00131
    00137     static Info info( WId win );
    00138
    00155     static QPixmap icon( WId win, int width = -1, int height = -1, bool scale = false );
    00156
    00157
    00164     static void  setIcons( WId win, const QPixmap& icon, const QPixmap& miniIcon );
    00165
    00176     static void setType( WId win, NET::WindowType windowType );
    00177
    00188     static void setState( WId win, unsigned long state );
    00189
    00200     static void clearState( WId win, unsigned long  state );
    00201
    00210     static void setOnAllDesktops( WId win, bool b );
    00211
    00218     static void setOnDesktop( WId win, int desktop);
    00219
    00229     static void setStrut( WId win, int left, int right, int top, int bottom );
    00230
    00235     static int currentDesktop();
    00236
    00242     static int numberOfDesktops();
    00243
    00249     static void setCurrentDesktop( int desktop );
    00250
    00251
    00260     static void iconifyWindow( WId win, bool animation = true  );
    00261
    00270     static void deIconifyWindow( WId win, bool animation = true );
    00271
    00272 #ifndef KDE_NO_COMPAT
    00273
    00277     static void appStarted();
    00278 #endif
    00279 };
    00280
    00281 #endif

This file is part of the documentation for kdelibs Version 3.1.5.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Jan 28 12:46:59 2004 by doxygen 1.3.4 written by Dimitri van Heesch, © 1997-2001