PlumaTab

## PlumaTab PlumaTab |

## Synopsis

    enum                PlumaTabState;
                        PlumaTabPrivate;
    struct              PlumaTab;
    PlumaView *         pluma_tab_get_view                  (PlumaTab *tab);
    PlumaDocument *     pluma_tab_get_document              (PlumaTab *tab);
    PlumaTab *          pluma_tab_get_from_document         (PlumaDocument *doc);
    PlumaTabState       pluma_tab_get_state                 (PlumaTab *tab);
    gboolean            pluma_tab_get_auto_save_enabled     (PlumaTab *tab);
    void                pluma_tab_set_auto_save_enabled     (PlumaTab *tab,
                                                             gboolean enable);
    gint                pluma_tab_get_auto_save_interval    (PlumaTab *tab);
    void                pluma_tab_set_auto_save_interval    (PlumaTab *tab,
                                                             gint interval);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkBox
                                     +----GtkVBox
                                           +----PlumaTab

## Implemented Interfaces

PlumaTab implements AtkImplementorIface, GtkBuildable and GtkOrientable.

## Properties

      "autosave"                 gboolean              : Read / Write
      "autosave-interval"        gint                  : Read / Write
      "name"                     gchar*                : Read
      "state"                    PlumaTabState         : Read

## Description

## Details

### enum PlumaTabState

    typedef enum {
    	PLUMA_TAB_STATE_NORMAL = 0,
    	PLUMA_TAB_STATE_LOADING,
    	PLUMA_TAB_STATE_REVERTING,
    	PLUMA_TAB_STATE_SAVING,
    	PLUMA_TAB_STATE_PRINTING,
    	PLUMA_TAB_STATE_PRINT_PREVIEWING,
    	PLUMA_TAB_STATE_SHOWING_PRINT_PREVIEW,
    	PLUMA_TAB_STATE_GENERIC_NOT_EDITABLE,
    	PLUMA_TAB_STATE_LOADING_ERROR,
    	PLUMA_TAB_STATE_REVERTING_ERROR,
    	PLUMA_TAB_STATE_SAVING_ERROR,
    	PLUMA_TAB_STATE_GENERIC_ERROR,
    	PLUMA_TAB_STATE_CLOSING,
    	PLUMA_TAB_STATE_EXTERNALLY_MODIFIED_NOTIFICATION,
    	PLUMA_TAB_NUM_OF_STATES /* This is not a valid state */
    } PlumaTabState;

`PLUMA_TAB_STATE_NORMAL` |
`PLUMA_TAB_STATE_LOADING` |
`PLUMA_TAB_STATE_REVERTING` |
`PLUMA_TAB_STATE_SAVING` |
`PLUMA_TAB_STATE_PRINTING` |
`PLUMA_TAB_STATE_PRINT_PREVIEWING` |
`PLUMA_TAB_STATE_SHOWING_PRINT_PREVIEW` |
`PLUMA_TAB_STATE_GENERIC_NOT_EDITABLE` |
`PLUMA_TAB_STATE_LOADING_ERROR` |
`PLUMA_TAB_STATE_REVERTING_ERROR` |
`PLUMA_TAB_STATE_SAVING_ERROR` |
`PLUMA_TAB_STATE_GENERIC_ERROR` |
`PLUMA_TAB_STATE_CLOSING` |
`PLUMA_TAB_STATE_EXTERNALLY_MODIFIED_NOTIFICATION` |
`PLUMA_TAB_NUM_OF_STATES` |

### PlumaTabPrivate

    typedef struct _PlumaTabPrivate PlumaTabPrivate;

### struct PlumaTab

    struct PlumaTab;

### pluma_tab_get_view ()

    PlumaView *         pluma_tab_get_view                  (PlumaTab *tab);

Gets the PlumaView inside `tab`.

`tab` : | a PlumaTab
Returns : | the PlumaView inside `tab`

### pluma_tab_get_document ()

    PlumaDocument *     pluma_tab_get_document              (PlumaTab *tab);

Gets the PlumaDocument associated to `tab`.

`tab` : | a PlumaTab
Returns : | the PlumaDocument associated to `tab`

### pluma_tab_get_from_document ()

    PlumaTab *          pluma_tab_get_from_document         (PlumaDocument *doc);

Gets the PlumaTab associated with `doc`.

`doc` : | a PlumaDocument
Returns : | the PlumaTab associated with `doc`

### pluma_tab_get_state ()

    PlumaTabState       pluma_tab_get_state                 (PlumaTab *tab);

Gets the PlumaTabState of `tab`.

`tab` : | a PlumaTab
Returns : | the PlumaTabState of `tab`

### pluma_tab_get_auto_save_enabled ()

    gboolean            pluma_tab_get_auto_save_enabled     (PlumaTab *tab);

Gets the current state for the autosave feature

`tab` : | a PlumaTab
Returns : | `TRUE` if the autosave is enabled, else `FALSE`

### pluma_tab_set_auto_save_enabled ()

    void                pluma_tab_set_auto_save_enabled     (PlumaTab *tab,
                                                             gboolean enable);

Enables or disables the autosave feature. It does not install an autosave timeout if the document is new or is read-only

`tab` : | a PlumaTab
`enable` : | enable (`TRUE`) or disable (`FALSE`) auto save

### pluma_tab_get_auto_save_interval ()

    gint                pluma_tab_get_auto_save_interval    (PlumaTab *tab);

Gets the current interval for the autosaves

`tab` : | a PlumaTab
Returns : | the value of the autosave

### pluma_tab_set_auto_save_interval ()

    void                pluma_tab_set_auto_save_interval    (PlumaTab *tab,
                                                             gint interval);

Sets the interval for the autosave feature. It does nothing if the interval is the same as the one already present. It removes the old interval timeout and adds a new one with the autosave passed as argument.

`tab` : | a PlumaTab
`interval` : | the new interval

## Property Details

### The `"autosave"` property

      "autosave"                 gboolean              : Read / Write

Autosave feature.

Default value: TRUE

### The `"autosave-interval"` property

      "autosave-interval"        gint                  : Read / Write

Time between two autosaves.

Allowed values: >= 0

Default value: 0

### The `"name"` property

      "name"                     gchar*                : Read

The tab's name.

Default value: NULL

### The `"state"` property

      "state"                    PlumaTabState         : Read

The tab's state.

Default value: PLUMA_TAB_STATE_NORMAL