## IAnjutaEditorLineMode IAnjutaEditorLineMode — Text editor line mode |

## Stability Level

Unstable, unless otherwise indicated

## Synopsis

    #include <libanjuta/interfaces/ianjuta-editor-line-mode.h>

    #define             IANJUTA_EDITOR_LINE_MODE_ERROR
    struct              IAnjutaEditorLineModeIface;
    enum                IAnjutaEditorLineModeType;
    void                ianjuta_editor_line_mode_convert    (IAnjutaEditorLineMode *obj,
                                                             IAnjutaEditorLineModeType mode,
                                                             GError **err);
    GQuark              ianjuta_editor_line_mode_error_quark
                                                            (void);
    void                ianjuta_editor_line_mode_fix        (IAnjutaEditorLineMode *obj,
                                                             GError **err);
    IAnjutaEditorLineModeType ianjuta_editor_line_mode_get  (IAnjutaEditorLineMode *obj,
                                                             GError **err);
    void                ianjuta_editor_line_mode_set        (IAnjutaEditorLineMode *obj,
                                                             IAnjutaEditorLineModeType mode,
                                                             GError **err);

## Object Hierarchy

      GEnum
       +----IAnjutaEditorLineModeType

## Description

## Details

### IANJUTA_EDITOR_LINE_MODE_ERROR

    #define IANJUTA_EDITOR_LINE_MODE_ERROR ianjuta_editor_line_mode_error_quark()

### struct IAnjutaEditorLineModeIface

    struct IAnjutaEditorLineModeIface {
    	IAnjutaEditorIface g_iface;

    	void (*convert) (IAnjutaEditorLineMode *obj, IAnjutaEditorLineModeType mode, GError **err);
    	void (*fix) (IAnjutaEditorLineMode *obj, GError **err);
    	IAnjutaEditorLineModeType (*get) (IAnjutaEditorLineMode *obj, GError **err);
    	void (*set) (IAnjutaEditorLineMode *obj, IAnjutaEditorLineModeType mode, GError **err);
    };

### enum IAnjutaEditorLineModeType

    typedef enum {
    	IANJUTA_EDITOR_LINE_MODE_LF,
    	IANJUTA_EDITOR_LINE_MODE_CR,
    	IANJUTA_EDITOR_LINE_MODE_CRLF
    } IAnjutaEditorLineModeType;

This enumeration is used to specify the type of text. Note that not all editors implement this.

`IANJUTA_EDITOR_LINE_MODE_LF` | Line-Feed (Unix)
`IANJUTA_EDITOR_LINE_MODE_CR` | Carat return (Max)
`IANJUTA_EDITOR_LINE_MODE_CRLF` | Caret return + line-feed (Windows)

### ianjuta_editor_line_mode_convert ()

    void                ianjuta_editor_line_mode_convert    (IAnjutaEditorLineMode *obj,
                                                             IAnjutaEditorLineModeType mode,
                                                             GError **err);

Set the line ending mode to the given `mode` and convert all line end characters in the buffer to `mode` line end characters.

`obj` : | Self
`mode` : | Line mode to convert.
`err` : | Error propagation and reporting

### ianjuta_editor_line_mode_error_quark ()

    GQuark              ianjuta_editor_line_mode_error_quark
                                                            (void);

### ianjuta_editor_line_mode_fix ()

    void                ianjuta_editor_line_mode_fix        (IAnjutaEditorLineMode *obj,
                                                             GError **err);

Convert EOL characters to majority of line mode. This is helpful when the buffer contains mixed line modes and we want to fix it.

`obj` : | Self
`err` : | Error propagation and reporting

### ianjuta_editor_line_mode_get ()

    IAnjutaEditorLineModeType ianjuta_editor_line_mode_get  (IAnjutaEditorLineMode *obj,
                                                             GError **err);

Get current line ending mode. It is auto-detected from the buffer contents.

`obj` : | Self
`err` : | Error propagation and reporting

### ianjuta_editor_line_mode_set ()

    void                ianjuta_editor_line_mode_set        (IAnjutaEditorLineMode *obj,
                                                             IAnjutaEditorLineModeType mode,
                                                             GError **err);

Set the line ending mode to the given `mode`. Existing line end characters in the buffer are not touched. Only the newly added texts will have `mode` line end characters.

`obj` : | Self
`mode` : | Line mode to set.
`err` : | Error propagation and reporting