The QWorkspace widget provides a workspace window that can
contain decorated windows, e.g. for MDI.
More...
Detailed Description
The QWorkspace widget provides a workspace window that can
contain decorated windows, e.g. for MDI.
An MDI (multiple document interface) application has one main
window with a menu bar. The central widget of this window is a
workspace. The workspace itself contains zero, one or more
document windows, each of which displays a document.
The workspace itself is an ordinary Qt widget. It has a standard
constructor that takes a parent widget and an object name. The
parent window is usually a QMainWindow, but it need not be.
Document windows (i.e. MDI windows) are also ordinary Qt widgets
which have the workspace as parent widget. When you call show(),
hide(), showMaximized(), setCaption(), etc. on a document window,
it is shown, hidden, etc. with a frame, caption, icon and icon
text, just as you'd expect. You can provide widget flags which
will be used for the layout of the decoration or the behaviour of
the widget itself.
To change the geometry of the MDI windows it is necessary to make
the function calls to the parentWidget() of the widget, as this
will move or resize the decorated window. Similarily you have to
make the function calls to the parentWidget() of the MDI window to
get the geometry of decorated window.
A document window becomes active when it gets the keyboard focus.
You can activate it using setFocus(), and the user can activate it
by moving focus in the normal ways. The workspace emits a signal
windowActivated() when it detects the activation change, and the
function activeWindow() always returns a pointer to the active
document window.
The convenience function windowList() returns a list of all
document windows. This is useful to create a popup menu
"Windows" on the fly, for example.
QWorkspace provides two built-in layout strategies for child
windows: cascade() and tile(). Both are slots so you can easily
connect menu entries to them.
If you want your users to be able to work with document windows
larger than the actual workspace, set the scrollBarsEnabled
property to TRUE.
If the top-level window contains a menu bar and a document window
is maximised, QWorkspace moves the document window's minimize,
restore and close buttons from the document window's frame to the
workspace window's menu bar. It then inserts a window operations
menu at the far left of the menu bar.
See also Main Window and Related Classes and Organizers.
Member Function Documentation
QWorkspace::QWorkspace ( QWidget * parent = 0, const char * name = 0 )
Constructs a workspace with a parent and a name.
QWorkspace::~QWorkspace ()
Destroys the workspace and frees any allocated resources.
QWidget * QWorkspace::activeWindow () const
Returns the active window, or 0 if no window is active.
Example: mdi/application.cpp.
void QWorkspace::cascade () [slot]
Arranges all child windows in a cascade pattern.
See also tile().
Example: mdi/application.cpp.
bool QWorkspace::scrollBarsEnabled () const
Returns TRUE if the workspace provides scrollbars; otherwise returns FALSE.
See the "scrollBarsEnabled" property for details.
void QWorkspace::setScrollBarsEnabled ( bool enable )
Sets whether the workspace provides scrollbars to enable.
See the "scrollBarsEnabled" property for details.
void QWorkspace::tile () [slot]
Arranges all child windows in a tile pattern.
See also cascade().
Example: mdi/application.cpp.
void QWorkspace::windowActivated ( QWidget * w ) [signal]
This signal is emitted when the window widget w becomes active.
Note that w can be null, and that more than one signal may be
fired for one activation event.
See also activeWindow() and windowList().
QWidgetList QWorkspace::windowList () const
Returns a list of all windows.
Example: mdi/application.cpp.
Property Documentation
bool scrollBarsEnabled
This property holds whether the workspace provides scrollbars.
If this property is set to TRUE, it is possible to resize child
windows over the right or the bottom edge out of the visible area
of the workspace. The workspace shows scrollbars to make it
possible for the user to access those windows. If this property is
set to FALSE (the default), resizing windows out of the visible
area of the workspace is not permitted.
Set this property's value with setScrollBarsEnabled() and get this property's value with scrollBarsEnabled().
This file is part of the Qt toolkit.
Copyright © 1995-2002
Trolltech. All Rights Reserved.