kmdichildarea.h
00001 
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 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; 
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   
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 
 
This file is part of the documentation for kmdi Library Version 3.2.0.