Cleanup: rename keymap handler callbacks for clarity
Now there are two callbacks, the name 'keymap_callback' is too vague.
This commit is contained in:
parent
effe750ec1
commit
7ee9fe4991
|
@ -348,7 +348,7 @@ void UI_popover_end(bContext *C, uiPopover *pup, wmKeyMap *keymap)
|
|||
UI_block_flag_enable(pup->block, UI_BLOCK_SHOW_SHORTCUT_ALWAYS);
|
||||
pup->keymap = keymap;
|
||||
pup->keymap_handler = WM_event_add_keymap_handler_priority(&window->modalhandlers, keymap, 0);
|
||||
WM_event_set_keymap_handler_callback(pup->keymap_handler, popover_keymap_fn, pup);
|
||||
WM_event_set_keymap_handler_post_callback(pup->keymap_handler, popover_keymap_fn, pup);
|
||||
}
|
||||
|
||||
handle = ui_popup_block_create(C, NULL, NULL, NULL, ui_block_func_POPOVER, pup);
|
||||
|
|
|
@ -205,9 +205,9 @@ struct wmKeyMap *WM_event_get_keymap_from_toolsystem(struct wmWindowManager *wm,
|
|||
struct wmEventHandler_Keymap *WM_event_add_keymap_handler_dynamic(
|
||||
ListBase *handlers, wmEventHandler_KeymapDynamicFn *keymap_fn, void *user_data);
|
||||
|
||||
void WM_event_remove_keymap_handler(ListBase *handlers, wmKeyMap *keymap);
|
||||
void WM_event_remove_keymap_handler(ListBase *handlers, wmKeyMap *keymap);
|
||||
|
||||
void WM_event_set_keymap_handler_callback(
|
||||
void WM_event_set_keymap_handler_post_callback(
|
||||
struct wmEventHandler_Keymap *handler,
|
||||
void (keymap_tag)(wmKeyMap *keymap, wmKeyMapItem *kmi, void *user_data),
|
||||
void *user_data);
|
||||
|
|
|
@ -2392,7 +2392,7 @@ static int wm_handlers_do_intern(bContext *C, wmEvent *event, ListBase *handlers
|
|||
|
||||
for (wmKeyMapItem *kmi = keymap->items.first; kmi; kmi = kmi->next) {
|
||||
if (wm_eventmatch(event, kmi)) {
|
||||
struct wmEventHandler_KeymapFn keymap_callback = handler->keymap_callback;
|
||||
struct wmEventHandler_KeymapPost keymap_post = handler->post;
|
||||
|
||||
PRINT("%s: item matched '%s'\n", __func__, kmi->idname);
|
||||
|
||||
|
@ -2404,8 +2404,8 @@ static int wm_handlers_do_intern(bContext *C, wmEvent *event, ListBase *handlers
|
|||
if (action & WM_HANDLER_BREAK) {
|
||||
/* not always_pass here, it denotes removed handler_base */
|
||||
CLOG_INFO(WM_LOG_HANDLERS, 2, "handled! '%s'", kmi->idname);
|
||||
if (keymap_callback.handle_post_fn != NULL) {
|
||||
keymap_callback.handle_post_fn(keymap, kmi, keymap_callback.user_data);
|
||||
if (keymap_post.post_fn != NULL) {
|
||||
keymap_post.post_fn(keymap, kmi, keymap_post.user_data);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -3427,13 +3427,13 @@ void WM_event_remove_keymap_handler(ListBase *handlers, wmKeyMap *keymap)
|
|||
}
|
||||
}
|
||||
|
||||
void WM_event_set_keymap_handler_callback(
|
||||
void WM_event_set_keymap_handler_post_callback(
|
||||
wmEventHandler_Keymap *handler,
|
||||
void (keymap_tag)(wmKeyMap *keymap, wmKeyMapItem *kmi, void *user_data),
|
||||
void *user_data)
|
||||
{
|
||||
handler->keymap_callback.handle_post_fn = keymap_tag;
|
||||
handler->keymap_callback.user_data = user_data;
|
||||
handler->post.post_fn = keymap_tag;
|
||||
handler->post.user_data = user_data;
|
||||
}
|
||||
|
||||
wmEventHandler_UI *WM_event_add_ui_handler(
|
||||
|
|
|
@ -35,11 +35,6 @@ struct ScrArea;
|
|||
|
||||
/* wmKeyMap is in DNA_windowmanager.h, it's saveable */
|
||||
|
||||
struct wmEventHandler_KeymapFn {
|
||||
void (*handle_post_fn)(wmKeyMap *keymap, wmKeyMapItem *kmi, void *user_data);
|
||||
void *user_data;
|
||||
};
|
||||
|
||||
/** Custom types for handlers, for signaling, freeing */
|
||||
enum eWM_EventHandlerType {
|
||||
WM_HANDLER_TYPE_GIZMO = 1,
|
||||
|
@ -59,20 +54,27 @@ typedef struct wmEventHandler {
|
|||
const rcti *bblocal, *bbwin;
|
||||
} wmEventHandler;
|
||||
|
||||
/** Run after the keymap item runs. */
|
||||
struct wmEventHandler_KeymapPost {
|
||||
void (*post_fn)(wmKeyMap *keymap, wmKeyMapItem *kmi, void *user_data);
|
||||
void *user_data;
|
||||
};
|
||||
|
||||
/** Support for a getter function that looks up the keymap each access. */
|
||||
struct wmEventHandler_KeymapDynamic {
|
||||
wmEventHandler_KeymapDynamicFn *keymap_fn;
|
||||
void *user_data;
|
||||
};
|
||||
|
||||
/** #WM_HANDLER_TYPE_KEYMAP */
|
||||
typedef struct wmEventHandler_Keymap {
|
||||
wmEventHandler head;
|
||||
|
||||
/** Pointer to builtin/custom keymaps (never NULL). */
|
||||
wmKeyMap *keymap;
|
||||
/** Run after the keymap item runs. */
|
||||
struct wmEventHandler_KeymapFn keymap_callback;
|
||||
|
||||
/** Support for a getter function that looks up the keymap each access. */
|
||||
struct {
|
||||
wmEventHandler_KeymapDynamicFn *keymap_fn;
|
||||
void *user_data;
|
||||
} dynamic;
|
||||
struct wmEventHandler_KeymapPost post;
|
||||
struct wmEventHandler_KeymapDynamic dynamic;
|
||||
|
||||
struct bToolRef *keymap_tool;
|
||||
} wmEventHandler_Keymap;
|
||||
|
|
Loading…
Reference in New Issue