[Bf-blender-cvs] [1b8bc74b1f9] soc-2020-custom-menus: Custom Menus : merge master
TempoDev
noreply at git.blender.org
Thu Sep 3 19:37:31 CEST 2020
Commit: 1b8bc74b1f93f460a65e255a083f48798834368f
Author: TempoDev
Date: Thu Sep 3 19:37:15 2020 +0200
Branches: soc-2020-custom-menus
https://developer.blender.org/rB1b8bc74b1f93f460a65e255a083f48798834368f
Custom Menus : merge master
===================================================================
===================================================================
diff --cc source/blender/blenloader/intern/readfile.c
index 743d2faec88,84cb898a426..241ae45ae5e
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@@ -9795,9 -8918,8 +8941,9 @@@ static BHead *read_userdef(BlendFileDat
BLO_read_list(reader, &user->user_menus);
BLO_read_list(reader, &user->addons);
BLO_read_list(reader, &user->autoexec_paths);
+ BLO_read_list(reader, &user->user_menus_group);
- for (keymap = user->user_keymaps.first; keymap; keymap = keymap->next) {
+ LISTBASE_FOREACH (wmKeyMap *, keymap, &user->user_keymaps) {
keymap->modal_items = NULL;
keymap->poll = NULL;
keymap->flag &= ~KEYMAP_UPDATE;
@@@ -9829,31 -8951,20 +8975,31 @@@
LISTBASE_FOREACH (bUserMenu *, um, &user->user_menus) {
BLO_read_list(reader, &um->items);
- LISTBASE_FOREACH (bUserMenuItem *, umi, &um->items) {
- if (umi->type == USER_MENU_TYPE_OPERATOR) {
- bUserMenuItem_Op *umi_op = (bUserMenuItem_Op *)umi;
- BLO_read_data_address(reader, &umi_op->prop);
- IDP_BlendDataRead(reader, &umi_op->prop);
- }
- }
+ read_usermenuitems(reader, &um->items, NULL);
}
- for (addon = user->addons.first; addon; addon = addon->next) {
+ LISTBASE_FOREACH (bAddon *, addon, &user->addons) {
BLO_read_data_address(reader, &addon->prop);
- IDP_DirectLinkGroup_OrFree(&addon->prop, reader);
+ IDP_BlendDataRead(reader, &addon->prop);
}
+ LISTBASE_FOREACH (bUserMenusGroup *, umg, &user->user_menus_group) {
+ BLO_read_list(reader, &umg->menus);
+ BKE_blender_user_menus_group_idname_update(umg);
+ LISTBASE_FOREACH (bUserMenu *, um, &umg->menus) {
+ BLO_read_list(reader, &um->items);
+ read_usermenuitems(reader, &um->items, NULL);
+ }
+ }
+
+ if (user->user_menus.first != NULL && user->user_menus_group.first == NULL) {
+ bUserMenusGroup *umg = BKU_blender_user_menu_default();
+ BLI_addtail(&user->user_menus_group, umg);
+ user->runtime.umg_select = umg;
+ umg->menus = user->user_menus;
+ BLI_listbase_clear(&user->user_menus);
+ }
+
// XXX
user->uifonts.first = user->uifonts.last = NULL;
More information about the Bf-blender-cvs
mailing list