diff options
Diffstat (limited to 'source/blender/windowmanager/wm_surface.h')
-rw-r--r-- | source/blender/windowmanager/wm_surface.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/source/blender/windowmanager/wm_surface.h b/source/blender/windowmanager/wm_surface.h index e1b00ae1ade..8ab6301e8c9 100644 --- a/source/blender/windowmanager/wm_surface.h +++ b/source/blender/windowmanager/wm_surface.h @@ -27,6 +27,10 @@ struct bContext; +#ifdef __cplusplus +extern "C" { +#endif + typedef struct wmSurface { struct wmSurface *next, *prev; @@ -38,6 +42,11 @@ typedef struct wmSurface { void (*draw)(struct bContext *); /** Free customdata, not the surface itself (done by wm_surface API) */ void (*free_data)(struct wmSurface *); + + /** Called when surface is activated for drawing (made drawable). */ + void (*activate)(void); + /** Called when surface is deactivated for drawing (current drawable cleared). */ + void (*deactivate)(void); } wmSurface; /* Create/Free */ @@ -54,4 +63,8 @@ void wm_surface_clear_drawable(void); void wm_surface_set_drawable(wmSurface *surface, bool activate); void wm_surface_reset_drawable(void); +#ifdef __cplusplus +} +#endif + #endif /* __WM_SURFACE_H__ */ |