## IAnjutaDocument IAnjutaDocument — Interface for all kind of editable resources that will be managed by IAnjutaDocumentManager |

## Stability Level

Unstable, unless otherwise indicated

## Functions

GQuark | ianjuta_document_error_quark ()
void | ianjuta_document_begin_undo_action ()
gboolean | ianjuta_document_can_redo ()
gboolean | ianjuta_document_can_undo ()
void | ianjuta_document_clear ()
void | ianjuta_document_copy ()
void | ianjuta_document_cut ()
void | ianjuta_document_end_undo_action ()
const gchar * | ianjuta_document_get_filename ()
void | ianjuta_document_grab_focus ()
void | ianjuta_document_paste ()
void | ianjuta_document_redo ()
void | ianjuta_document_undo ()

## Signals

void | update-ui | Run Last

## Types and Values

#define | IANJUTA_DOCUMENT_ERROR

## Object Hierarchy

        GInterface
        ╰── IAnjutaDocument

## Includes

    #include <libanjuta/interfaces/ianjuta-document.h>

## Description

## Functions

### ianjuta_document_error_quark ()

    GQuark
    ianjuta_document_error_quark (void);

### ianjuta_document_begin_undo_action ()

    void
    ianjuta_document_begin_undo_action (IAnjutaDocument *obj,
                                        GError **err);

Begins the mark of undoable action. Calls to this are stacked and each must be ended with `ianjuta_document_end_action()`.

#### Parameters

obj | Self |
err | Error propagation and reporting |

### ianjuta_document_can_redo ()

    gboolean
    ianjuta_document_can_redo (IAnjutaDocument *obj,
                               GError **err);

Can the editor redo the last operation?

#### Parameters

obj | Self |
err | Error propagation and reporting |

#### Returns

TRUE if editor can redo, else FALSE

### ianjuta_document_can_undo ()

    gboolean
    ianjuta_document_can_undo (IAnjutaDocument *obj,
                               GError **err);

Can the editor undo the last operation?

#### Parameters

obj | Self |
err | Error propagation and reporting |

#### Returns

TRUE if editor can undo, else FALSE

### ianjuta_document_clear ()

    void
    ianjuta_document_clear (IAnjutaDocument *obj,
                            GError **err);

Clear selection

#### Parameters

obj | Self |
err | Error propagation and reporting |

### ianjuta_document_copy ()

    void
    ianjuta_document_copy (IAnjutaDocument *obj,
                           GError **err);

Copy selection to clipboard.

#### Parameters

obj | Self |
err | Error propagation and reporting |

### ianjuta_document_cut ()

    void
    ianjuta_document_cut (IAnjutaDocument *obj,
                          GError **err);

Cut selection to clipboard.

#### Parameters

obj | Self |
err | Error propagation and reporting |

### ianjuta_document_end_undo_action ()

    void
    ianjuta_document_end_undo_action (IAnjutaDocument *obj,
                                      GError **err);

Ends the mark of undoable action.

#### Parameters

obj | Self |
err | Error propagation and reporting |

### ianjuta_document_get_filename ()

    const gchar *
    ianjuta_document_get_filename (IAnjutaDocument *obj,
                                   GError **err);

Allows obtaining of the filename the editor was loaded from.

#### Parameters

obj | Self |
err | Error propagation and reporting |

#### Returns

The name of the file. Not to be freed by caller.

### ianjuta_document_grab_focus ()

    void
    ianjuta_document_grab_focus (IAnjutaDocument *obj,
                                 GError **err);

Grabs the focus.

#### Parameters

obj | Self |
err | Error propagation and reporting |

### ianjuta_document_paste ()

    void
    ianjuta_document_paste (IAnjutaDocument *obj,
                            GError **err);

Paste clipboard at current position.

#### Parameters

obj | Self |
err | Error propagation and reporting |

### ianjuta_document_redo ()

    void
    ianjuta_document_redo (IAnjutaDocument *obj,
                           GError **err);

Redo last undo operation

#### Parameters

obj | Self |
err | Error propagation and reporting |

### ianjuta_document_undo ()

    void
    ianjuta_document_undo (IAnjutaDocument *obj,
                           GError **err);

Undo last operation

#### Parameters

obj | Self |
err | Error propagation and reporting |

## Types and Values

### IANJUTA_DOCUMENT_ERROR

    #define IANJUTA_DOCUMENT_ERROR ianjuta_document_error_quark()

## Signal Details

### The `“update-ui”` signal

    void
    user_function (IAnjutaDocument *obj,
                   gpointer         user_data)

This signal is emitted when the document assumes the UI must be updated because some internal state of the document has changed. For example, if current line position is changed, it needs to be reflected to the UI.

#### Parameters

obj | Self |
user_data | user data set when the signal handler was connected. |

Flags: Run Last