## ETextEventProcessor ETextEventProcessor |

## Synopsis

    struct              ETextEventProcessor;
    enum                ETextEventProcessorCommandPosition;
    enum                ETextEventProcessorCommandAction;
                        ETextEventProcessorCommand;
                        ETextEventProcessorEventButton;
                        ETextEventProcessorEventKey;
                        ETextEventProcessorEventMotion;
    union               ETextEventProcessorEvent;
    enum                ETextEventProcessorCaps;
    gint                e_text_event_processor_handle_event (ETextEventProcessor *tep,
                                                             ETextEventProcessorEvent *event);

## Object Hierarchy

      GObject
       +----ETextEventProcessor
             +----ETextEventProcessorEmacsLike

## Properties

      "allow-newlines"           gboolean              : Read / Write

## Signals

      "command"                                        : Run Last

## Description

## Details

### struct ETextEventProcessor

    struct ETextEventProcessor;

### enum ETextEventProcessorCommandPosition

    typedef enum {
    	E_TEP_VALUE,
    	E_TEP_SELECTION,

    	E_TEP_START_OF_BUFFER,
    	E_TEP_END_OF_BUFFER,

    	E_TEP_START_OF_LINE,
    	E_TEP_END_OF_LINE,

    	E_TEP_FORWARD_CHARACTER,
    	E_TEP_BACKWARD_CHARACTER,

    	E_TEP_FORWARD_WORD,
    	E_TEP_BACKWARD_WORD,

    	E_TEP_FORWARD_LINE,
    	E_TEP_BACKWARD_LINE,

    	E_TEP_FORWARD_PARAGRAPH,
    	E_TEP_BACKWARD_PARAGRAPH,

    	E_TEP_FORWARD_PAGE,
    	E_TEP_BACKWARD_PAGE,

    	E_TEP_SELECT_WORD,
    	E_TEP_SELECT_ALL
    } ETextEventProcessorCommandPosition;

`E_TEP_VALUE` |
`E_TEP_SELECTION` |
`E_TEP_START_OF_BUFFER` |
`E_TEP_END_OF_BUFFER` |
`E_TEP_START_OF_LINE` |
`E_TEP_END_OF_LINE` |
`E_TEP_FORWARD_CHARACTER` |
`E_TEP_BACKWARD_CHARACTER` |
`E_TEP_FORWARD_WORD` |
`E_TEP_BACKWARD_WORD` |
`E_TEP_FORWARD_LINE` |
`E_TEP_BACKWARD_LINE` |
`E_TEP_FORWARD_PARAGRAPH` |
`E_TEP_BACKWARD_PARAGRAPH` |
`E_TEP_FORWARD_PAGE` |
`E_TEP_BACKWARD_PAGE` |
`E_TEP_SELECT_WORD` |
`E_TEP_SELECT_ALL` |

### enum ETextEventProcessorCommandAction

    typedef enum {
    	E_TEP_MOVE,
    	E_TEP_SELECT,
    	E_TEP_DELETE,
    	E_TEP_INSERT,

    	E_TEP_CAPS,

    	E_TEP_COPY,
    	E_TEP_PASTE,
    	E_TEP_GET_SELECTION,
    	E_TEP_SET_SELECT_BY_WORD,
    	E_TEP_ACTIVATE,

    	E_TEP_GRAB,
    	E_TEP_UNGRAB,

    	E_TEP_NOP
    } ETextEventProcessorCommandAction;

`E_TEP_MOVE` |
`E_TEP_SELECT` |
`E_TEP_DELETE` |
`E_TEP_INSERT` |
`E_TEP_CAPS` |
`E_TEP_COPY` |
`E_TEP_PASTE` |
`E_TEP_GET_SELECTION` |
`E_TEP_SET_SELECT_BY_WORD` |
`E_TEP_ACTIVATE` |
`E_TEP_GRAB` |
`E_TEP_UNGRAB` |
`E_TEP_NOP` |

### ETextEventProcessorCommand

    typedef struct {
    	ETextEventProcessorCommandPosition position;
    	ETextEventProcessorCommandAction action;
    	gint value;
    	const gchar *string;
    	GdkDevice *device;
    	guint32 time;
    } ETextEventProcessorCommand;

### ETextEventProcessorEventButton

    typedef struct {
    	GdkEventType type;
    	guint32 time;
    	guint state;
    	guint button;
    	gint position;
    	GdkDevice *device;
    } ETextEventProcessorEventButton;

### ETextEventProcessorEventKey

    typedef struct {
    	GdkEventType type;
    	guint32 time;
    	guint state;
    	guint keyval;
    	gint length;
    	const gchar *string;
    } ETextEventProcessorEventKey;

### ETextEventProcessorEventMotion

    typedef struct {
    	GdkEventType type;
    	guint32 time;
    	guint state;
    	gint position;
    } ETextEventProcessorEventMotion;

### union ETextEventProcessorEvent

    union _ETextEventProcessorEvent {
    	GdkEventType type;
    	ETextEventProcessorEventButton button;
    	ETextEventProcessorEventKey key;
    	ETextEventProcessorEventMotion motion;
    };

### enum ETextEventProcessorCaps

    typedef enum {
    	E_TEP_CAPS_UPPER,
    	E_TEP_CAPS_LOWER,
    	E_TEP_CAPS_TITLE
    } ETextEventProcessorCaps;

`E_TEP_CAPS_UPPER` |
`E_TEP_CAPS_LOWER` |
`E_TEP_CAPS_TITLE` |

### e_text_event_processor_handle_event ()

    gint                e_text_event_processor_handle_event (ETextEventProcessor *tep,
                                                             ETextEventProcessorEvent *event);

## Property Details

### The `"allow-newlines"` property

      "allow-newlines"           gboolean              : Read / Write

Allow newlines.

Default value: FALSE

## Signal Details

### The `"command"` signal

    void                user_function                      (ETextEventProcessor *etexteventprocessor,
                                                            gpointer             arg1,
                                                            gpointer             user_data)                : Run Last