diff options
Diffstat (limited to 'source/blender/windowmanager/wm_event_system.h')
-rw-r--r-- | source/blender/windowmanager/wm_event_system.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/source/blender/windowmanager/wm_event_system.h b/source/blender/windowmanager/wm_event_system.h index efc01b1f8a8..9127d3ec6f0 100644 --- a/source/blender/windowmanager/wm_event_system.h +++ b/source/blender/windowmanager/wm_event_system.h @@ -39,6 +39,8 @@ struct ScrArea; struct ARegion; +struct wmWidgetMap; +struct wmWidget; /* wmKeyMap is in DNA_windowmanager.h, it's savable */ @@ -68,6 +70,8 @@ typedef struct wmEventHandler { /* drop box handler */ ListBase *dropboxes; + /* widget handler */ + struct wmWidgetMap *widgetmap; } wmEventHandler; @@ -96,5 +100,14 @@ void wm_dropbox_free(void); void wm_drags_check_ops(bContext *C, wmEvent *event); void wm_drags_draw(bContext *C, wmWindow *win, rcti *rect); +/* wm_widgets.c */ +struct wmWidget *wm_widget_find_highlighted_3D(struct wmWidgetMap *wmap, struct bContext *C, const struct wmEvent *event, unsigned char *part); +wmWidget *wm_widget_find_highlighted(struct wmWidgetMap *wmap, bContext *C, const struct wmEvent *event, unsigned char *part); +void wm_widgetmap_set_highlighted_widget(struct wmWidgetMap *wmap, struct bContext *C, struct wmWidget *widget, unsigned char part); +struct wmWidget *wm_widgetmap_get_highlighted_widget(struct wmWidgetMap *wmap); + +void wm_widgetmap_set_active_widget(struct wmWidgetMap *wmap, struct bContext *C, struct wmEvent *event, struct wmWidget *widget, bool call_op); +struct wmWidget *wm_widgetmap_get_active_widget(struct wmWidgetMap *wmap); + #endif /* __WM_EVENT_SYSTEM_H__ */ |