Gsv::UndoManager Class Reference

Undo manager interface for View. More...

`#include <gtksourceviewmm/undomanager.h>`

Inheritance diagram for Gsv::UndoManager:
[legend]

List of all members.

## Public Member Functions

GtkSourceUndoManager* | gobj ()
| Provides access to the underlying C GObject.
const GtkSourceUndoManager* | gobj () const
| Provides access to the underlying C GObject.
bool | can_undo () const
| Get whether there are undo operations available.
bool | can_redo () const
| Get whether there are redo operations available.
void | undo ()
| Perform a single undo.
void | redo ()
| Perform a single redo.
void | begin_not_undoable_action ()
| Begin a not undoable action on the buffer.
void | end_not_undoable_action ()
| Ends a not undoable action on the buffer.
void | can_undo_changed ()
| Emits the 'can-undo-changed' signal.
void | can_redo_changed ()
| Emits the 'can-redo-changed' signal.
Glib::SignalProxy0< void > | signal_can_undo_changed ()
| Emitted when the ability to undo has changed.
Glib::SignalProxy0< void > | signal_can_redo_changed ()
| Emitted when the ability to redo has changed.

## Related Functions

(Note that these are not member functions.)
Glib::RefPtr< Gsv::UndoManager > | wrap (GtkSourceUndoManager* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

Undo manager interface for View.

The UndoManager interface can be implemented to provide custom undo management to a Buffer. Use Buffer::set_undo_manager() to install a custom undo manager for a particular source buffer.

Use UndoManager::can_undo_changed() and UndoManager::can_redo_changed() when respectively the undo state or redo state of the undo stack has changed.

Since gtksourceviewmm 2.10:

## Member Function Documentation

void Gsv::UndoManager::begin_not_undoable_action | ( |  | ) |

Begin a not undoable action on the buffer.

All changes between this call and the call to end_not_undoable_action() cannot be undone. This function should be re-entrant.

Since gtksourceviewmm 2.10:

bool Gsv::UndoManager::can_redo | ( |  | ) | const

Get whether there are redo operations available.

Returns:
  `true` if there are redo operations available, `false` otherwise.

Since gtksourceviewmm 2.10:

void Gsv::UndoManager::can_redo_changed | ( |  | ) |

Emits the 'can-redo-changed' signal.

Since gtksourceviewmm 2.10:

bool Gsv::UndoManager::can_undo | ( |  | ) | const

Get whether there are undo operations available.

Returns:
  `true` if there are undo operations available, `false` otherwise.

Since gtksourceviewmm 2.10:

void Gsv::UndoManager::can_undo_changed | ( |  | ) |

Emits the 'can-undo-changed' signal.

Since gtksourceviewmm 2.10:

void Gsv::UndoManager::end_not_undoable_action | ( |  | ) |

Ends a not undoable action on the buffer.

Since gtksourceviewmm 2.10:

void Gsv::UndoManager::redo | ( |  | ) |

Perform a single redo.

Calling this function when there are no redo operations available is an error. Use can_redo() to find out if there are redo operations available.

Since gtksourceviewmm 2.10:

Glib::SignalProxy0< void > Gsv::UndoManager::signal_can_redo_changed | ( |  | ) |

Emitted when the ability to redo has changed.

Prototype:
  `void on_my_can_redo_changed()`

Glib::SignalProxy0< void > Gsv::UndoManager::signal_can_undo_changed | ( |  | ) |

Emitted when the ability to undo has changed.

Prototype:
  `void on_my_can_undo_changed()`

void Gsv::UndoManager::undo | ( |  | ) |

Perform a single undo.

Calling this function when there are no undo operations available is an error. Use can_undo() to find out if there are undo operations available.

Since gtksourceviewmm 2.10:

## Friends And Related Function Documentation

Glib::RefPtr< Gsv::UndoManager > wrap | ( | GtkSourceUndoManager * | object,
|  | bool | take_copy = `false`
| ) |  | `[related]`

A Glib::wrap() method for this object.

Parameters:

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns:
  A C++ instance that wraps this C instance.