Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2009-12-19 17:58:24 +0300
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2009-12-19 17:58:24 +0300
commit924122199b3f4e8c548397c9859c783514008ea2 (patch)
tree9f9a073cc8f6e2d7abf532593d4cba0e8828b4bb /source/blender/windowmanager/WM_types.h
parent7e8af5868e3eea49f544a0487a01cb2134b6cb4d (diff)
Bugfix: doubles are not supported correctly in SDNA, double click
introduced one in wmWindow.last_click_time. Moved this to the wmEvent struct, which now no is in DNA, was needed for RNA wrapping but not needed anymore.
Diffstat (limited to 'source/blender/windowmanager/WM_types.h')
-rw-r--r--source/blender/windowmanager/WM_types.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/source/blender/windowmanager/WM_types.h b/source/blender/windowmanager/WM_types.h
index 2a742b29d1c..318945918e7 100644
--- a/source/blender/windowmanager/WM_types.h
+++ b/source/blender/windowmanager/WM_types.h
@@ -288,6 +288,44 @@ typedef struct wmGesture {
/* customdata for lasso is short array */
} wmGesture;
+/* ************** wmEvent ************************ */
+
+/* each event should have full modifier state */
+/* event comes from eventmanager and from keymap */
+typedef struct wmEvent {
+ struct wmEvent *next, *prev;
+
+ short type; /* event code itself (short, is also in keymap) */
+ short val; /* press, release, scrollvalue */
+ short x, y; /* mouse pointer position, screen coord */
+ short mval[2]; /* region mouse position, name convention pre 2.5 :) */
+ short unicode; /* future, ghost? */
+ char ascii; /* from ghost */
+ char pad;
+
+ /* previous state */
+ short prevtype;
+ short prevval;
+ short prevx, prevy;
+ double prevclicktime;
+
+ /* modifier states */
+ short shift, ctrl, alt, oskey; /* oskey is apple or windowskey, value denotes order of pressed */
+ short keymodifier; /* rawkey modifier */
+
+ short pad1;
+
+ /* keymap item, set by handler (weak?) */
+ const char *keymap_idname;
+
+ /* custom data */
+ short custom; /* custom data type, stylus, 6dof, see wm_event_types.h */
+ short customdatafree;
+ int pad2;
+ void *customdata; /* ascii, unicode, mouse coords, angles, vectors, dragdrop info */
+
+} wmEvent;
+
/* ************** custom wmEvent data ************** */
typedef struct wmTabletData {
int Active; /* 0=EVT_TABLET_NONE, 1=EVT_TABLET_STYLUS, 2=EVT_TABLET_ERASER */