[Bf-blender-cvs] [eea7125] temp_manipulators_core: Add some missing function calls for manipulators

Julian Eisel noreply at git.blender.org
Sun Sep 11 23:18:41 CEST 2016


Commit: eea7125d54ce88cdcb9f4a0006f8dc2a546cde47
Author: Julian Eisel
Date:   Sun Sep 11 23:17:36 2016 +0200
Branches: temp_manipulators_core
https://developer.blender.org/rBeea7125d54ce88cdcb9f4a0006f8dc2a546cde47

Add some missing function calls for manipulators

===================================================================

M	source/blender/blenkernel/intern/screen.c
M	source/blender/blenloader/intern/readfile.c
M	source/blender/editors/screen/screen_edit.c

===================================================================

diff --git a/source/blender/blenkernel/intern/screen.c b/source/blender/blenkernel/intern/screen.c
index 7023fce..419c9cb 100644
--- a/source/blender/blenkernel/intern/screen.c
+++ b/source/blender/blenkernel/intern/screen.c
@@ -183,6 +183,7 @@ ARegion *BKE_area_region_copy(SpaceType *st, ARegion *ar)
 	BLI_listbase_clear(&newar->panels_category);
 	BLI_listbase_clear(&newar->panels_category_active);
 	BLI_listbase_clear(&newar->ui_lists);
+	BLI_listbase_clear(&newar->manipulator_maps);
 	newar->swinid = 0;
 	newar->regiontimer = NULL;
 	
@@ -346,6 +347,7 @@ void BKE_area_region_free(SpaceType *st, ARegion *ar)
 		mmap_tmp = mmap->next;
 		WM_manipulatormap_delete(mmap); /* XXX shouldn't be in blenkernel */
 	}
+	BLI_listbase_clear(&ar->manipulator_maps);
 	BLI_freelistN(&ar->ui_lists);
 	BLI_freelistN(&ar->ui_previews);
 	BLI_freelistN(&ar->panels_category);
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index 60f276b..4a6d0b0 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -6904,6 +6904,7 @@ static void direct_link_region(FileData *fd, ARegion *ar, int spacetype)
 	BLI_listbase_clear(&ar->panels_category);
 	BLI_listbase_clear(&ar->handlers);
 	BLI_listbase_clear(&ar->uiblocks);
+	BLI_listbase_clear(&ar->manipulator_maps);
 	ar->headerstr = NULL;
 	ar->swinid = 0;
 	ar->type = NULL;
diff --git a/source/blender/editors/screen/screen_edit.c b/source/blender/editors/screen/screen_edit.c
index 677a647..cfee92e 100644
--- a/source/blender/editors/screen/screen_edit.c
+++ b/source/blender/editors/screen/screen_edit.c
@@ -1069,6 +1069,9 @@ static void region_cursor_set(wmWindow *win, int swinid, int swin_changed)
 		for (ARegion *ar = sa->regionbase.first; ar; ar = ar->next) {
 			if (ar->swinid == swinid) {
 				if (swin_changed || (ar->type && ar->type->event_cursor)) {
+					if (WM_manipulatormap_cursor_set(ar->manipulator_maps.first, win)) {
+						return;
+					}
 					ED_region_cursor_set(win, sa, ar);
 				}
 				return;




More information about the Bf-blender-cvs mailing list