kwin.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
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.