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:
Diffstat (limited to 'source/blender/windowmanager/WM_types.h')
-rw-r--r--source/blender/windowmanager/WM_types.h54
1 files changed, 43 insertions, 11 deletions
diff --git a/source/blender/windowmanager/WM_types.h b/source/blender/windowmanager/WM_types.h
index 27a730f9dae..3b3eacc3651 100644
--- a/source/blender/windowmanager/WM_types.h
+++ b/source/blender/windowmanager/WM_types.h
@@ -117,21 +117,53 @@ typedef struct wmNotifier {
struct wmWindow *window;
int swinid;
- int type;
- int value;
- void *data;
+ unsigned int category, data, subtype, action;
+
+ void *reference;
} wmNotifier;
-enum {
- WM_NOTE_WINDOW_REDRAW,
- WM_NOTE_SCREEN_CHANGED,
- WM_NOTE_GESTURE_REDRAW,
- WM_NOTE_MARKERS_CHANGED,
- WM_NOTE_OBJECT_CHANGED,
- WM_NOTE_LAST
-};
+/* 4 levels
+
+0xFF000000; category
+0x00FF0000; data
+0x0000FF00; data subtype (unused?)
+0x000000FF; action
+*/
+
+/* category */
+#define NOTE_CATEGORY 0xFF000000
+#define NC_WINDOW (1<<24)
+#define NC_SCREEN (2<<24)
+#define NC_SCENE (3<<24)
+#define NC_OBJECT (4<<24)
+#define NC_MATERIAL (5<<24)
+#define NC_TEXTURE (6<<24)
+
+/* data type, 256 entries is enough, it can overlap */
+#define NOTE_DATA 0x00FF0000
+
+ /* Scene, node users level */
+#define ND_MARKERS (2<<16)
+#define ND_FRAME (3<<16)
+#define ND_RENDER_OPTIONS (4<<16)
+#define ND_NODES (5<<16)
+#define ND_SEQUENCER (6<<16)
+ /* Object */
+#define ND_TRANSFORM (16<<16)
+#define ND_SHADING (17<<16)
+
+/* subtype, 256 entries too */
+#define NOTE_SUBTYPE 0x0000FF00
+
+/* action classification */
+#define NOTE_ACTION (0x000000FF)
+#define NA_EDITED 1
+#define NA_EVALUATED 2
+#define NA_ADDED 3
+#define NA_REMOVED 4
+
/* ************** Gesture Manager data ************** */