kwin Library API Documentation

kdecoration_p.h

00001 /***************************************************************** 00002 This file is part of the KDE project. 00003 00004 Copyright (C) 2003 Lubos Lunak <l.lunak@kde.org> 00005 00006 Permission is hereby granted, free of charge, to any person obtaining a 00007 copy of this software and associated documentation files (the "Software"), 00008 to deal in the Software without restriction, including without limitation 00009 the rights to use, copy, modify, merge, publish, distribute, sublicense, 00010 and/or sell copies of the Software, and to permit persons to whom the 00011 Software is furnished to do so, subject to the following conditions: 00012 00013 The above copyright notice and this permission notice shall be included in 00014 all copies or substantial portions of the Software. 00015 00016 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 00017 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00018 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 00019 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 00020 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 00021 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 00022 DEALINGS IN THE SOFTWARE. 00023 ******************************************************************/ 00024 00025 #ifndef KDECORATION_P_H 00026 #define KDECORATION_P_H 00027 00028 // 00029 // This header file is internal. I mean it. 00030 // 00031 00032 #include "kdecoration.h" 00033 #include <qwidget.h> 00034 #include <qvaluelist.h> 00035 00036 class KConfig; 00037 00038 class KDecorationOptionsPrivate : public KDecorationDefines 00039 { 00040 public: 00041 KDecorationOptionsPrivate(); 00042 virtual ~KDecorationOptionsPrivate(); 00043 void defaultKWinSettings(); // shared implementation 00044 unsigned long updateKWinSettings( KConfig* ); // shared implementation 00045 BorderSize findPreferredBorderSize( BorderSize size, QValueList< BorderSize > ) const; // shared implementation 00046 00047 QColor colors[NUM_COLORS*2]; 00048 QColorGroup *cg[NUM_COLORS*2]; 00049 QFont activeFont, inactiveFont, activeFontSmall, inactiveFontSmall; 00050 QString title_buttons_left; 00051 QString title_buttons_right; 00052 bool custom_button_positions; 00053 bool show_tooltips; 00054 BorderSize border_size, cached_border_size; 00055 bool move_resize_maximized_windows; 00056 }; 00057 00058 class KDecorationBridge : public KDecorationDefines 00059 { 00060 public: 00061 virtual bool isActive() const = 0; 00062 virtual bool isCloseable() const = 0; 00063 virtual bool isMaximizable() const = 0; 00064 virtual MaximizeMode maximizeMode() const = 0; 00065 virtual bool isMinimizable() const = 0; 00066 virtual bool providesContextHelp() const = 0; 00067 virtual int desktop() const = 0; 00068 virtual bool isModal() const = 0; 00069 virtual bool isShadeable() const = 0; 00070 virtual bool isShade() const = 0; 00071 virtual bool isSetShade() const = 0; 00072 virtual bool keepAbove() const = 0; 00073 virtual bool keepBelow() const = 0; 00074 virtual bool isMovable() const = 0; 00075 virtual bool isResizable() const = 0; 00076 virtual NET::WindowType windowType( unsigned long supported_types ) const = 0; 00077 virtual QIconSet icon() const = 0; 00078 virtual QString caption() const = 0; 00079 virtual void processMousePressEvent( QMouseEvent* ) = 0; 00080 virtual void showWindowMenu( const QRect &) = 0; 00081 virtual void showWindowMenu( QPoint ) = 0; 00082 virtual void performWindowOperation( WindowOperation ) = 0; 00083 virtual void setMask( const QRegion&, int ) = 0; 00084 virtual bool isPreview() const = 0; 00085 virtual QRect geometry() const = 0; 00086 virtual QRect iconGeometry() const = 0; 00087 virtual QRegion unobscuredRegion( const QRegion& r ) const = 0; 00088 virtual QWidget* workspaceWidget() const = 0; 00089 virtual void closeWindow() = 0; 00090 virtual void maximize( MaximizeMode mode ) = 0; 00091 virtual void minimize() = 0; 00092 virtual void showContextHelp() = 0; 00093 virtual void setDesktop( int desktop ) = 0; 00094 virtual void titlebarDblClickOperation() = 0; 00095 virtual void setShade( bool set ) = 0; 00096 virtual void setKeepAbove( bool ) = 0; 00097 virtual void setKeepBelow( bool ) = 0; 00098 // not part of public API 00099 virtual int currentDesktop() const = 0; 00100 virtual QWidget* initialParentWidget() const = 0; 00101 virtual Qt::WFlags initialWFlags() const = 0; 00102 virtual void helperShowHide( bool ) = 0; 00103 virtual void grabXServer( bool grab ) = 0; 00104 }; 00105 00106 #endif
KDE Logo
This file is part of the documentation for kwin Library Version 3.3.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Fri Aug 13 21:47:05 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003