|  | Home · Overviews · Examples

# QUndoGroup Class Reference
[com.trolltech.qt.gui module]

The `QUndoGroup` class is a group of `QUndoStack` objects. More...

Inherits `QObject`.

## Detailed Description

The `QUndoGroup` class is a group of `QUndoStack` objects.

For an overview of the Qt's undo framework, see the overview.

An application often has multiple undo stacks, one for each opened document. At the same time, an application usually has one undo action and one redo action, which triggers undo or redo in the active document.

`QUndoGroup` is a group of `QUndoStack` objects, one of which may be active. It has an `undo` and `redo` slot, which calls QUndoStack::undo() and QUndoStack::redo() for the active stack. It also has the functions `createUndoAction` and `createRedoAction`. The actions returned by these functions behave in the same way as those returned by QUndoStack::createUndoAction() and QUndoStack::createRedoAction() of the active stack.

Stacks are added to a group with `addStack` and removed with `removeStack`. A stack is implicitly added to a group when it is created with the group as its parent `QObject`.

It is the programmer's responsibility to specify which stack is active by calling QUndoStack::setActive(), usually when the associated document window receives focus. The active stack may also be set with `setActiveStack`, and is returned by `activeStack`.

When a stack is added to a group using `addStack`, the group does not take ownership of the stack. This means the stack has to be deleted separately from the group. When a stack is deleted, it is automatically removed from a group. A stack may belong to only one group. Adding it to another group will cause it to be removed from the previous group.

A `QUndoGroup` is also useful in conjunction with `QUndoView`. If a `QUndoView` is set to watch a group using QUndoView::setGroup(), it will update itself to display the active stack.