kmdichildarea.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
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 KMDI_EXPORT KMdiChildArea : public QFrame
00053 {
00054 friend class KMdiChildFrmCaption;
00055 friend class KMdiChildFrm;
00056
00057 Q_OBJECT
00058
00059
00060 public:
00064 QPtrList<KMdiChildFrm> *m_pZ;
00065
00069 QSize m_defaultChildFrmSize;
00070 protected:
00074 QFont m_captionFont;
00075
00079 QColor m_captionActiveBackColor;
00080
00084 QColor m_captionActiveForeColor;
00085
00089 QColor m_captionInactiveBackColor;
00090
00094 QColor m_captionInactiveForeColor;
00095
00096 int m_captionFontLineSpacing;
00097
00098
00099 public:
00100
00104 KMdiChildArea( QWidget *parent );
00105
00110 ~KMdiChildArea();
00111
00116 void manageChild( KMdiChildFrm *lpC, bool bShow = true, bool bCascade = true );
00117
00122 void destroyChild( KMdiChildFrm* child, bool focusTopChild = true );
00123
00128 void destroyChildButNotItsView( KMdiChildFrm *lpC, bool bFocusTopChild = true );
00129
00135 void setTopChild( KMdiChildFrm* child, bool setFocus = false );
00136
00141 inline KMdiChildFrm * topChild() const { return m_pZ->last(); }
00142
00146 int getVisibleChildCount() const;
00147
00153 QPoint getCascadePoint( int indexOfWindow = -1 );
00154
00159 void setMdiCaptionFont( const QFont &fnt );
00160
00165 void setMdiCaptionActiveForeColor( const QColor &clr );
00166
00171 void setMdiCaptionActiveBackColor( const QColor &clr );
00172
00177 void setMdiCaptionInactiveForeColor( const QColor &clr );
00178
00183 void setMdiCaptionInactiveBackColor( const QColor &clr );
00184
00194 static void getCaptionColors( const QPalette &pal, QColor &activeBG, QColor &activeFG,
00195 QColor &inactiveBG, QColor &inactiveFG ) KDE_DEPRECATED;
00196
00197 public slots:
00201 void cascadeWindows();
00202
00206 void cascadeMaximized();
00207
00211 void expandVertical();
00212
00216 void expandHorizontal();
00217
00222 void focusTopChild();
00223
00227 void tilePragma();
00228
00232 void tileAnodine();
00233
00237 void tileVertically();
00238
00242 void layoutMinimizedChildren();
00243
00244 protected:
00245
00249 void tileAllInternal( int maxWnds );
00250
00254 virtual void resizeEvent( QResizeEvent * );
00255
00259 void mousePressEvent( QMouseEvent *e );
00260
00264 void childMinimized( KMdiChildFrm *lpC, bool bWasMaximized );
00265
00266 signals:
00270 void noMaximizedChildFrmLeft( KMdiChildFrm* );
00271
00275 void nowMaximized( bool );
00276
00283 void sysButtonConnectionsMustChange( KMdiChildFrm*, KMdiChildFrm* );
00284
00289 void popupWindowMenu( QPoint );
00290
00295 void lastChildFrmClosed();
00296
00297 private:
00298
00299 KMdiChildAreaPrivate *d;
00300 };
00301
00302 #endif // _KMDICHILDAREA_H_
00303
00304
|