diff options
Diffstat (limited to 'source/blender/windowmanager/intern/wm.c')
-rw-r--r-- | source/blender/windowmanager/intern/wm.c | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/source/blender/windowmanager/intern/wm.c b/source/blender/windowmanager/intern/wm.c index 9e7136dc81d..f92cc511449 100644 --- a/source/blender/windowmanager/intern/wm.c +++ b/source/blender/windowmanager/intern/wm.c @@ -282,80 +282,6 @@ void WM_uilisttype_free(void) uilisttypes_hash = NULL; } -/* ************ MenuType handling ************** */ - -static GHash *menutypes_hash = NULL; - -MenuType *WM_menutype_find(const char *idname, bool quiet) -{ - MenuType *mt; - - if (idname[0]) { - mt = BLI_ghash_lookup(menutypes_hash, idname); - if (mt) - return mt; - } - - if (!quiet) - printf("search for unknown menutype %s\n", idname); - - return NULL; -} - -bool WM_menutype_add(MenuType *mt) -{ - BLI_ghash_insert(menutypes_hash, mt->idname, mt); - return true; -} - -void WM_menutype_freelink(MenuType *mt) -{ - bool ok; - - ok = BLI_ghash_remove(menutypes_hash, mt->idname, NULL, MEM_freeN); - - BLI_assert(ok); - (void)ok; -} - -/* called on initialize WM_init() */ -void WM_menutype_init(void) -{ - /* reserve size is set based on blender default setup */ - menutypes_hash = BLI_ghash_str_new_ex("menutypes_hash gh", 512); -} - -void WM_menutype_free(void) -{ - GHashIterator gh_iter; - - GHASH_ITER (gh_iter, menutypes_hash) { - MenuType *mt = BLI_ghashIterator_getValue(&gh_iter); - if (mt->ext.free) { - mt->ext.free(mt->ext.data); - } - } - - BLI_ghash_free(menutypes_hash, NULL, MEM_freeN); - menutypes_hash = NULL; -} - -bool WM_menutype_poll(bContext *C, MenuType *mt) -{ - /* If we're tagged, only use compatible. */ - if (mt->owner_id[0] != '\0') { - const WorkSpace *workspace = CTX_wm_workspace(C); - if (BKE_workspace_owner_id_check(workspace, mt->owner_id) == false) { - return false; - } - } - - if (mt->poll != NULL) { - return mt->poll(C, mt); - } - return true; -} - /* ****************************************** */ void WM_keymap_init(bContext *C) |