summaryrefslogtreecommitdiff
path: root/include/SDL_events.h
diff options
context:
space:
mode:
authorSam Lantinga <slouken@libsdl.org>2009-09-19 13:29:40 +0000
committerSam Lantinga <slouken@libsdl.org>2009-09-19 13:29:40 +0000
commitd4f133c2bf110ee558f88feeee4238a8337b669a (patch)
tree3fc070bc81353170019e82abccaebfc873d8b6ec /include/SDL_events.h
parentc03508fe86cd5d18fa7b39e0cbd59fb16f512d30 (diff)
Merged a cleaned up version of Jiang's code changes from Google Summer of Code 2009
--HG-- extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%403823
Diffstat (limited to 'include/SDL_events.h')
-rw-r--r--include/SDL_events.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/include/SDL_events.h b/include/SDL_events.h
index e9e8d07d..be199dcf 100644
--- a/include/SDL_events.h
+++ b/include/SDL_events.h
@@ -60,6 +60,7 @@ typedef enum
SDL_WINDOWEVENT, /**< Window state change */
SDL_KEYDOWN, /**< Keys pressed */
SDL_KEYUP, /**< Keys released */
+ SDL_TEXTEDITING, /**< Keyboard text editing (composition) */
SDL_TEXTINPUT, /**< Keyboard text input */
SDL_MOUSEMOTION, /**< Mouse moved */
SDL_MOUSEBUTTONDOWN, /**< Mouse button pressed */
@@ -97,6 +98,7 @@ typedef enum
SDL_KEYDOWNMASK = SDL_EVENTMASK(SDL_KEYDOWN),
SDL_KEYUPMASK = SDL_EVENTMASK(SDL_KEYUP),
SDL_KEYEVENTMASK = SDL_EVENTMASK(SDL_KEYDOWN) | SDL_EVENTMASK(SDL_KEYUP),
+ SDL_TEXTEDITINGMASK = SDL_EVENTMASK(SDL_TEXTEDITING),
SDL_TEXTINPUTMASK = SDL_EVENTMASK(SDL_TEXTINPUT),
SDL_MOUSEMOTIONMASK = SDL_EVENTMASK(SDL_MOUSEMOTION),
SDL_MOUSEBUTTONDOWNMASK = SDL_EVENTMASK(SDL_MOUSEBUTTONDOWN),
@@ -149,6 +151,20 @@ typedef struct SDL_KeyboardEvent
} SDL_KeyboardEvent;
/**
+ * \struct SDL_TextEditingEvent
+ *
+ * \brief Keyboard text editing event structure (event.edit.*)
+ */
+#define SDL_TEXTEDITINGEVENT_TEXT_SIZE (32)
+typedef struct SDL_TextEditingEvent
+{
+ Uint8 type; /**< SDL_TEXTEDITING */
+ char text[SDL_TEXTEDITINGEVENT_TEXT_SIZE]; /**< The editing text */
+ int start; /**< The start cursor of selected editing text */
+ int length; /**< The length of selected editing text */
+} SDL_TextEditingEvent;
+
+/**
* \struct SDL_TextInputEvent
*
* \brief Keyboard text input event structure (event.text.*)
@@ -350,6 +366,7 @@ typedef union SDL_Event
Uint8 type; /**< Event type, shared with all events */
SDL_WindowEvent window; /**< Window event data */
SDL_KeyboardEvent key; /**< Keyboard event data */
+ SDL_TextEditingEvent edit; /**< Text editing event data */
SDL_TextInputEvent text; /**< Text input event data */
SDL_MouseMotionEvent motion; /**< Mouse motion event data */
SDL_MouseButtonEvent button; /**< Mouse button event data */