[Bf-blender-cvs] [37d225c] temp_manipulators_core: Move manipulator-group creation into own function
Julian Eisel
noreply at git.blender.org
Thu Sep 15 02:26:56 CEST 2016
Commit: 37d225ce55a993d0fd784e35bac5859bbf5e1bef
Author: Julian Eisel
Date: Thu Sep 15 02:23:46 2016 +0200
Branches: temp_manipulators_core
https://developer.blender.org/rB37d225ce55a993d0fd784e35bac5859bbf5e1bef
Move manipulator-group creation into own function
===================================================================
M source/blender/windowmanager/manipulators/intern/wm_manipulator_intern.h
M source/blender/windowmanager/manipulators/intern/wm_manipulatorgroup.c
M source/blender/windowmanager/manipulators/intern/wm_manipulatormap.c
===================================================================
diff --git a/source/blender/windowmanager/manipulators/intern/wm_manipulator_intern.h b/source/blender/windowmanager/manipulators/intern/wm_manipulator_intern.h
index 2c6808d..6e4ea8d 100644
--- a/source/blender/windowmanager/manipulators/intern/wm_manipulator_intern.h
+++ b/source/blender/windowmanager/manipulators/intern/wm_manipulator_intern.h
@@ -71,6 +71,7 @@ enum {
TWEAK_MODAL_PRECISION_OFF,
};
+struct wmManipulatorGroup *wm_manipulatorgroup_new_from_type(struct wmManipulatorGroupType *mgrouptype);
void WM_manipulatorgroup_free(bContext *C, wmManipulatorMap *mmap, struct wmManipulatorGroup *mgroup);
void WM_manipulatorgrouptype_keymap_init(struct wmManipulatorGroupType *mgrouptype, struct wmKeyConfig *keyconf);
diff --git a/source/blender/windowmanager/manipulators/intern/wm_manipulatorgroup.c b/source/blender/windowmanager/manipulators/intern/wm_manipulatorgroup.c
index a4396bc..c2f44c6 100644
--- a/source/blender/windowmanager/manipulators/intern/wm_manipulatorgroup.c
+++ b/source/blender/windowmanager/manipulators/intern/wm_manipulatorgroup.c
@@ -63,6 +63,17 @@
*
* \{ */
+/**
+ * Create a new manipulator-group from \a mgrouptype.
+ */
+wmManipulatorGroup *wm_manipulatorgroup_new_from_type(wmManipulatorGroupType *mgrouptype)
+{
+ wmManipulatorGroup *mgroup = MEM_callocN(sizeof(*mgroup), "manipulator-group");
+ mgroup->type = mgrouptype;
+
+ return mgroup;
+}
+
void WM_manipulatorgroup_free(bContext *C, wmManipulatorMap *mmap, wmManipulatorGroup *mgroup)
{
for (wmManipulator *manipulator = mgroup->manipulators.first; manipulator;) {
@@ -458,9 +469,7 @@ void WM_manipulatorgrouptype_init_runtime(
for (ARegion *ar = lb->first; ar; ar = ar->next) {
for (wmManipulatorMap *mmap = ar->manipulator_maps.first; mmap; mmap = mmap->next) {
if (mmap->type == mmaptype) {
- wmManipulatorGroup *mgroup = MEM_callocN(sizeof(wmManipulatorGroup), "manipulator-group");
-
- mgroup->type = mgrouptype;
+ wmManipulatorGroup *mgroup = wm_manipulatorgroup_new_from_type(mgrouptype);
/* just add here, drawing will occur on next update */
BLI_addtail(&mmap->manipulator_groups, mgroup);
diff --git a/source/blender/windowmanager/manipulators/intern/wm_manipulatormap.c b/source/blender/windowmanager/manipulators/intern/wm_manipulatormap.c
index d7e3062..2e1c14a 100644
--- a/source/blender/windowmanager/manipulators/intern/wm_manipulatormap.c
+++ b/source/blender/windowmanager/manipulators/intern/wm_manipulatormap.c
@@ -98,8 +98,7 @@ wmManipulatorMap *WM_manipulatormap_from_type(const struct wmManipulatorMapType_
mgrouptype;
mgrouptype = mgrouptype->next)
{
- wmManipulatorGroup *mgroup = MEM_callocN(sizeof(wmManipulatorGroup), "manipulatorgroup");
- mgroup->type = mgrouptype;
+ wmManipulatorGroup *mgroup = wm_manipulatorgroup_new_from_type(mgrouptype);
BLI_addtail(&mmap->manipulator_groups, mgroup);
}
More information about the Bf-blender-cvs
mailing list