kmdi Library API Documentation

kmdichildarea.h

00001 //---------------------------------------------------------------------------- 00002 // filename : kmdichildarea.h 00003 //---------------------------------------------------------------------------- 00004 // Project : KDE MDI extension 00005 // 00006 // begin : 07/1999 by Szymon Stefanek as part of kvirc 00007 // (an IRC application) 00008 // changes : 09/1999 by Falk Brettschneider to create an 00009 // - 06/2000 stand-alone Qt extension set of 00010 // classes and a Qt-based library 00011 // 2000-2003 maintained by the KDevelop project 00012 // 00013 // copyright : (C) 1999-2003 by Falk Brettschneider 00014 // and 00015 // Szymon Stefanek (stefanek@tin.it) 00016 // email : falkbr@kdevelop.org (Falk Brettschneider) 00017 //---------------------------------------------------------------------------- 00018 // 00019 //---------------------------------------------------------------------------- 00020 // 00021 // This program is free software; you can redistribute it and/or modify 00022 // it under the terms of the GNU Library General Public License as 00023 // published by the Free Software Foundation; either version 2 of the 00024 // License, or (at your option) any later version. 00025 // 00026 //---------------------------------------------------------------------------- 00027 00028 #ifndef _KMDI_CHILD_AREA_H_ 00029 #define _KMDI_CHILD_AREA_H_ 00030 00031 #include <qframe.h> 00032 #include <qptrlist.h> 00033 00034 #include "kmdichildfrm.h" 00035 #include "kmdichildview.h" 00036 00037 class KMdiChildAreaPrivate; 00038 00052 class KMdiChildArea : public QFrame 00053 { 00054 friend class KMdiChildFrmCaption; 00055 friend class KMdiChildFrm; 00056 00057 Q_OBJECT 00058 00059 // attributes 00060 public: 00064 QPtrList<KMdiChildFrm> *m_pZ; //Auto delete enabled 00068 QSize m_defaultChildFrmSize; 00069 00070 protected: 00074 QFont m_captionFont; 00078 QColor m_captionActiveBackColor; 00082 QColor m_captionActiveForeColor; 00086 QColor m_captionInactiveBackColor; 00090 QColor m_captionInactiveForeColor; 00094 int m_captionFontLineSpacing; 00095 00096 // methods 00097 public: 00101 KMdiChildArea(QWidget *parent); 00106 ~KMdiChildArea(); 00107 00112 void manageChild(KMdiChildFrm *lpC,bool bShow=true,bool bCascade=true); 00117 void destroyChild(KMdiChildFrm *lpC,bool bFocusTopChild = true); 00122 void destroyChildButNotItsView(KMdiChildFrm *lpC,bool bFocusTopChild = true); 00128 void setTopChild(KMdiChildFrm *lpC,bool bSetFocus=false); 00133 inline KMdiChildFrm * topChild() const { return m_pZ->last(); }; 00137 int getVisibleChildCount() const; 00142 QPoint getCascadePoint(int indexOfWindow = -1); 00146 void setMdiCaptionFont(const QFont &fnt); 00150 void setMdiCaptionActiveForeColor(const QColor &clr); 00154 void setMdiCaptionActiveBackColor(const QColor &clr); 00158 void setMdiCaptionInactiveForeColor(const QColor &clr); 00162 void setMdiCaptionInactiveBackColor(const QColor &clr); 00163 00170 static void getCaptionColors( const QPalette &pal, 00171 QColor &activeBG, QColor &activeFG, QColor &inactiveBG, QColor &inactiveFG ); 00172 00173 public slots: 00177 void cascadeWindows(); 00181 void cascadeMaximized(); 00185 void expandVertical(); 00189 void expandHorizontal(); 00195 void focusTopChild(); 00199 void tilePragma(); 00203 void tileAnodine(); 00207 void tileVertically(); 00211 void layoutMinimizedChildren(); 00212 00213 protected: 00217 void tileAllInternal(int maxWnds); 00221 virtual void resizeEvent(QResizeEvent *); 00225 void mousePressEvent(QMouseEvent *e); 00229 void childMinimized(KMdiChildFrm *lpC,bool bWasMaximized); 00230 00231 signals: 00235 void noMaximizedChildFrmLeft(KMdiChildFrm*); 00239 void nowMaximized(bool); 00246 void sysButtonConnectionsMustChange(KMdiChildFrm*, KMdiChildFrm*); 00252 void popupWindowMenu( QPoint); 00257 void lastChildFrmClosed(); 00258 00259 private: 00260 KMdiChildAreaPrivate *d; 00261 }; 00262 00263 #endif // _KMDICHILDAREA_H_ 00264 00265 // kate: space-indent on; indent-width 2; replace-tabs on;
KDE Logo
This file is part of the documentation for kmdi Library Version 3.2.3.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sun Oct 10 18:56:03 2004 by doxygen 1.3.7 written by Dimitri van Heesch, © 1997-2003