kmdi Library API Documentation

KMdiChildArea Class Reference

Internal class. More...

#include <kmdichildarea.h>

Inheritance diagram for KMdiChildArea:

QFrame List of all members.

Public Slots

void cascadeWindows ()
void cascadeMaximized ()
void expandVertical ()
void expandHorizontal ()
void focusTopChild ()
void tilePragma ()
void tileAnodine ()
void tileVertically ()
void layoutMinimizedChildren ()

Signals

void noMaximizedChildFrmLeft (KMdiChildFrm *)
void nowMaximized (bool)
void sysButtonConnectionsMustChange (KMdiChildFrm *, KMdiChildFrm *)
void popupWindowMenu (QPoint)
void lastChildFrmClosed ()

Public Member Functions

 KMdiChildArea (QWidget *parent)
 ~KMdiChildArea ()
void manageChild (KMdiChildFrm *lpC, bool bShow=true, bool bCascade=true)
void destroyChild (KMdiChildFrm *child, bool focusTopChild=true)
void destroyChildButNotItsView (KMdiChildFrm *lpC, bool bFocusTopChild=true)
void setTopChild (KMdiChildFrm *child, bool setFocus=false)
KMdiChildFrmtopChild () const
int getVisibleChildCount () const
QPoint getCascadePoint (int indexOfWindow=-1)
void setMdiCaptionFont (const QFont &fnt)
void setMdiCaptionActiveForeColor (const QColor &clr)
void setMdiCaptionActiveBackColor (const QColor &clr)
void setMdiCaptionInactiveForeColor (const QColor &clr)
void setMdiCaptionInactiveBackColor (const QColor &clr)

Static Public Member Functions

static void getCaptionColors (const QPalette &pal, QColor &activeBG, QColor &activeFG, QColor &inactiveBG, QColor &inactiveFG) KDE_DEPRECATED

Public Attributes

QPtrList< KMdiChildFrm > * m_pZ
QSize m_defaultChildFrmSize

Protected Member Functions

void tileAllInternal (int maxWnds)
virtual void resizeEvent (QResizeEvent *)
void mousePressEvent (QMouseEvent *e)
void childMinimized (KMdiChildFrm *lpC, bool bWasMaximized)

Protected Attributes

QFont m_captionFont
QColor m_captionActiveBackColor
QColor m_captionActiveForeColor
QColor m_captionInactiveBackColor
QColor m_captionInactiveForeColor
int m_captionFontLineSpacing

Friends

class KMdiChildFrmCaption
class KMdiChildFrm

Detailed Description

Internal class.

The main frame widget KMdiMainFrm consists of 2 child widgets. One is this class. It's the widget where the child frames (emulated toplevel MDI views) live in. This class is the manager for the child frame widgets because it controls the Z-order widget stack of KMdiChildFrm's. It provides all placing and positioning algorithms for docked (attached) MDI views.

KMdiChildArea doesn't know anything about the actual MDI views. It only knows and manages the frame widgets of attached MDI views. All actions and stuff concerning only to childframes are handled here.

Definition at line 52 of file kmdichildarea.h.


Constructor & Destructor Documentation

KMdiChildArea::KMdiChildArea QWidget parent  ) 
 

Consruction.

Note: This class needn't to know about KMdiMainFrm .

Definition at line 48 of file kmdichildarea.cpp.

References m_captionActiveBackColor, m_captionActiveForeColor, m_captionFont, m_captionInactiveBackColor, m_captionInactiveForeColor, m_defaultChildFrmSize, and m_pZ.

KMdiChildArea::~KMdiChildArea  ) 
 

Destructor : THERE should be no child windows anymore.

.. Howewer it simply deletes all the child widgets :)

Definition at line 66 of file kmdichildarea.cpp.

References m_pZ.


Member Function Documentation

void KMdiChildArea::manageChild KMdiChildFrm lpC,
bool  bShow = true,
bool  bCascade = true
 

Appends a new KMdiChildFrm to this manager.

The child is shown,raised and gets focus if this window has it.

Definition at line 72 of file kmdichildarea.cpp.

References focusTopChild(), getCascadePoint(), m_pZ, KMdiChildFrm::setState(), KMdiChildFrm::state(), sysButtonConnectionsMustChange(), and topChild().

void KMdiChildArea::destroyChild KMdiChildFrm child,
bool  focusTopChild = true
 

Destroys a managed KMdiChildFrm Also deletes the client attached to this child.

Definition at line 109 of file kmdichildarea.cpp.

References KMdiChildFrm::caption(), focusTopChild(), m_pZ, noMaximizedChildFrmLeft(), KMdiChildFrm::state(), sysButtonConnectionsMustChange(), and topChild().

void KMdiChildArea::destroyChildButNotItsView KMdiChildFrm lpC,
bool  bFocusTopChild = true
 

Destroys a managed KMdiChildFrm Clients attached to the KMdiChildFrm are not deleted.

Parameters:
child 

Definition at line 141 of file kmdichildarea.cpp.

References KMdiChildFrm::caption(), focusTopChild(), m_pZ, noMaximizedChildFrmLeft(), KMdiChildFrm::state(), sysButtonConnectionsMustChange(), topChild(), and KMdiChildFrm::unsetClient().

void KMdiChildArea::setTopChild KMdiChildFrm child,
bool  setFocus = false
 

Brings the child child to the top of the stack The child is focused if setFocus is true.

If setFocus is false, the child is just raised.

Parameters:
child 

Definition at line 171 of file kmdichildarea.cpp.

References KMdiChildFrm::caption(), m_pZ, KMdiChildFrm::setState(), KMdiChildFrm::state(), sysButtonConnectionsMustChange(), and topChild().

Referenced by KMdiChildFrm::mousePressEvent(), and KMdiChildFrm::raiseAndActivate().

KMdiChildFrm* KMdiChildArea::topChild  )  const [inline]
 

Returns the topmost child (the active one) or 0 if there are no children.

Note that the topmost child may be also hidded , if ALL the windows are minimized.

Definition at line 143 of file kmdichildarea.h.

Referenced by childMinimized(), destroyChild(), destroyChildButNotItsView(), focusTopChild(), manageChild(), resizeEvent(), KMdiChildFrm::setClient(), KMdiChildFrm::setState(), setTopChild(), tileAllInternal(), tileAnodine(), and tileVertically().

int KMdiChildArea::getVisibleChildCount  )  const
 

Returns the number of visible children.

Definition at line 482 of file kmdichildarea.cpp.

References m_pZ.

Referenced by tileAllInternal(), tileAnodine(), and tileVertically().

QPoint KMdiChildArea::getCascadePoint int  indexOfWindow = -1  ) 
 

Calculates the cascade point for the given index.

If index is -1 the cascade point is calculated for the window following the last window

Parameters:
indexOfWindow the index of the window in relation the z-ordered window list

Definition at line 258 of file kmdichildarea.cpp.

References KMdiChildFrmCaption::heightHint(), m_defaultChildFrmSize, KMdiChildFrm::m_pCaption, and m_pZ.

Referenced by cascadeMaximized(), cascadeWindows(), and manageChild().

void KMdiChildArea::setMdiCaptionFont const QFont fnt  ) 
 

Sets the MDI childframe window caption font A relayout does not occur when using this function.

Definition at line 747 of file kmdichildarea.cpp.

References m_captionFont, and m_pZ.

void KMdiChildArea::setMdiCaptionActiveForeColor const QColor clr  ) 
 

Sets the foreground color of the active MDI childframe window caption A relayout does not occur when using this function.

Definition at line 759 of file kmdichildarea.cpp.

References m_captionActiveForeColor.

void KMdiChildArea::setMdiCaptionActiveBackColor const QColor clr  ) 
 

Sets the background color of the active MDI childframe window captions A relayout does not occur when using this function.

Definition at line 764 of file kmdichildarea.cpp.

References m_captionActiveBackColor.

void KMdiChildArea::setMdiCaptionInactiveForeColor const QColor clr  ) 
 

Sets the foreground color of inactive MDI childframe window captions A relayout does not occur when using this function.

Definition at line 769 of file kmdichildarea.cpp.

References m_captionInactiveForeColor.

void KMdiChildArea::setMdiCaptionInactiveBackColor const QColor clr  ) 
 

Sets the background color of inactive MDI childframe window captions A relayout does not occur when using this function.

Definition at line 774 of file kmdichildarea.cpp.

References m_captionInactiveBackColor.

void KMdiChildArea::getCaptionColors const QPalette pal,
QColor activeBG,
QColor activeFG,
QColor inactiveBG,
QColor inactiveFG
[static]
 

Gets all caption colors, consistent with current WM settings (or other Desktop settings e.g.

system settings for win32) This method is useful not only for KMDI child windows. Colors are returned via activeBG, activeFG, inactiveBG, inactiveFG references.

Deprecated:
Use KGlobalSettings::activeTitleColor(), KGlobalSettings::activeTextColor(), KGlobalSettings::inactiveTitleColor() and KGlobalSettings::inactiveTextColor() instead.

Definition at line 780 of file kmdichildarea.cpp.

void KMdiChildArea::cascadeWindows  )  [slot]
 

Cascades all windows resizing them to the minimum size.

Definition at line 382 of file kmdichildarea.cpp.

References focusTopChild(), getCascadePoint(), m_pZ, KMdiChildFrm::restorePressed(), and KMdiChildFrm::state().

void KMdiChildArea::cascadeMaximized  )  [slot]
 

Cascades all windows resizing them to the maximum available size.

Definition at line 404 of file kmdichildarea.cpp.

References focusTopChild(), getCascadePoint(), m_pZ, KMdiChildFrm::restorePressed(), and KMdiChildFrm::state().

void KMdiChildArea::expandVertical  )  [slot]
 

Maximize all windows but only in vertical direction.

Definition at line 438 of file kmdichildarea.cpp.

References focusTopChild(), m_pZ, KMdiChildFrm::restorePressed(), and KMdiChildFrm::state().

void KMdiChildArea::expandHorizontal  )  [slot]
 

Maximize all windows but only in horizontal direction.

Definition at line 460 of file kmdichildarea.cpp.

References focusTopChild(), m_pZ, KMdiChildFrm::restorePressed(), and KMdiChildFrm::state().

void KMdiChildArea::focusTopChild  )  [slot]
 

Gives focus to the topmost child if it doesn't get focus automatically or you want to wait to give it focus.

Definition at line 355 of file kmdichildarea.cpp.

References KMdiChildView::activate(), KMdiChildFrm::caption(), lastChildFrmClosed(), KMdiChildFrm::m_pClient, m_pZ, and topChild().

Referenced by cascadeMaximized(), cascadeWindows(), childMinimized(), destroyChild(), destroyChildButNotItsView(), expandHorizontal(), expandVertical(), and manageChild().

void KMdiChildArea::tilePragma  )  [slot]
 

Tile Pragma.

Definition at line 494 of file kmdichildarea.cpp.

References tileAllInternal().

void KMdiChildArea::tileAnodine  )  [slot]
 

Tile Anodine.

Definition at line 602 of file kmdichildarea.cpp.

References KMdiChildView::activate(), getVisibleChildCount(), KMdiChildFrm::m_pClient, m_pZ, KMdiChildFrm::restorePressed(), KMdiChildFrm::state(), and topChild().

void KMdiChildArea::tileVertically  )  [slot]
 

Tile all the windows in the child area vertically.

Definition at line 676 of file kmdichildarea.cpp.

References getVisibleChildCount(), m_pZ, KMdiChildFrm::restorePressed(), KMdiChildFrm::state(), and topChild().

void KMdiChildArea::layoutMinimizedChildren  )  [slot]
 

Position and layout the minimized child frames.

Definition at line 723 of file kmdichildarea.cpp.

References m_pZ, and KMdiChildFrm::state().

Referenced by resizeEvent(), and KMdiChildFrm::switchToMinimizeLayout().

void KMdiChildArea::tileAllInternal int  maxWnds  )  [protected]
 

Internally used for the tile algorithm.

Definition at line 500 of file kmdichildarea.cpp.

References KMdiChildView::activate(), getVisibleChildCount(), m_defaultChildFrmSize, KMdiChildFrm::m_pClient, m_pZ, KMdiChildFrm::restorePressed(), KMdiChildFrm::state(), and topChild().

Referenced by tilePragma().

void KMdiChildArea::resizeEvent QResizeEvent  )  [protected, virtual]
 

Automatically resizes a maximized MDI view and layouts the positions of minimized MDI views.

Definition at line 227 of file kmdichildarea.cpp.

References KMdiChildFrmCaption::heightHint(), layoutMinimizedChildren(), KMdiChildFrm::m_pCaption, KMdiChildFrm::m_pClient, KMdiChildFrm::state(), and topChild().

void KMdiChildArea::mousePressEvent QMouseEvent e  )  [protected]
 

Shows the 'Window' popup menu on right mouse button click.

Definition at line 249 of file kmdichildarea.cpp.

References popupWindowMenu().

void KMdiChildArea::childMinimized KMdiChildFrm lpC,
bool  bWasMaximized
[protected]
 

Internally used.

Actions that are necessary when an MDI view gets minimized

Definition at line 319 of file kmdichildarea.cpp.

References focusTopChild(), m_pZ, and topChild().

Referenced by KMdiChildFrm::setState().

void KMdiChildArea::noMaximizedChildFrmLeft KMdiChildFrm  )  [signal]
 

Signals that there aren't maximized child frames any more.

Referenced by destroyChild(), and destroyChildButNotItsView().

void KMdiChildArea::nowMaximized bool   )  [signal]
 

Signals that the child frames are maximized now.

Referenced by KMdiChildFrm::maximizePressed(), KMdiChildFrm::minimizePressed(), and KMdiChildFrm::restorePressed().

void KMdiChildArea::sysButtonConnectionsMustChange KMdiChildFrm ,
KMdiChildFrm
[signal]
 

Signals a KMdiMainFrm that the signal/slot connections of the system buttons in the menubar (only in Maximize mode) must be updated to another MDI view because the focused MDI view has changed.

Referenced by destroyChild(), destroyChildButNotItsView(), manageChild(), and setTopChild().

void KMdiChildArea::popupWindowMenu QPoint   )  [signal]
 

Signals a KMdiMainFrm that the 'Window' popup menu must be shown.

Referenced by mousePressEvent().

void KMdiChildArea::lastChildFrmClosed  )  [signal]
 

Signals that the last attached (docked) MDI view has been closed.

Note: Detached MDI views can remain.

Referenced by focusTopChild().


Member Data Documentation

QPtrList<KMdiChildFrm>* KMdiChildArea::m_pZ
 

Z Order stack of KMdiChildFrm childframe windows (top=last).

Definition at line 64 of file kmdichildarea.h.

Referenced by cascadeMaximized(), cascadeWindows(), childMinimized(), destroyChild(), destroyChildButNotItsView(), expandHorizontal(), expandVertical(), focusTopChild(), getCascadePoint(), getVisibleChildCount(), KMdiChildArea(), layoutMinimizedChildren(), manageChild(), setMdiCaptionFont(), setTopChild(), tileAllInternal(), tileAnodine(), tileVertically(), and ~KMdiChildArea().

QSize KMdiChildArea::m_defaultChildFrmSize
 

the default size of an newly created childframe

Definition at line 69 of file kmdichildarea.h.

Referenced by getCascadePoint(), KMdiChildArea(), KMdiChildFrm::setClient(), and tileAllInternal().

QFont KMdiChildArea::m_captionFont [protected]
 

The MDI childframe window caption font.

Definition at line 74 of file kmdichildarea.h.

Referenced by KMdiChildArea(), KMdiChildFrmCaption::paintEvent(), and setMdiCaptionFont().

QColor KMdiChildArea::m_captionActiveBackColor [protected]
 

The foreground color of the active MDI childframe window caption.

Definition at line 79 of file kmdichildarea.h.

Referenced by KMdiChildArea(), KMdiChildFrmCaption::paintEvent(), KMdiChildFrmCaption::setActive(), and setMdiCaptionActiveBackColor().

QColor KMdiChildArea::m_captionActiveForeColor [protected]
 

The background color of the active MDI childframe window captions.

Definition at line 84 of file kmdichildarea.h.

Referenced by KMdiChildArea(), KMdiChildFrmCaption::paintEvent(), and setMdiCaptionActiveForeColor().

QColor KMdiChildArea::m_captionInactiveBackColor [protected]
 

The foreground color of inactive MDI childframe window captions.

Definition at line 89 of file kmdichildarea.h.

Referenced by KMdiChildArea(), KMdiChildFrmCaption::paintEvent(), KMdiChildFrmCaption::setActive(), and setMdiCaptionInactiveBackColor().

QColor KMdiChildArea::m_captionInactiveForeColor [protected]
 

The background color of inactive MDI childframe window captions.

Definition at line 94 of file kmdichildarea.h.

Referenced by KMdiChildArea(), KMdiChildFrmCaption::paintEvent(), and setMdiCaptionInactiveForeColor().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for kmdi Library Version 3.4.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed May 4 07:15:33 2005 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003