diff options
author | Campbell Barton <ideasman42@gmail.com> | 2017-06-15 13:48:24 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2017-06-15 13:56:22 +0300 |
commit | 830df9b33d3e2afdf3bb23b469378899c34fda78 (patch) | |
tree | 4f2fad8cdd48937e28d2c45115476c9045e4525b /source/blender/makesdna | |
parent | 1a7099f3ecf52fa8a54c2ba3f652d5827ca9103c (diff) |
Updates to manipulator API
While this is work-in-progress from custom-manipulators branch
its stable so adding into 2.8 so we don't get too much out of sync.
- ManipulatorGroupType's are moved out of the manipulator-map and are now
global (like operators, panels etc) and added into spaces as needed.
Without this all operators that might ever use a manipulator in the 3D
view would be polling the viewport.
- Add optional get/set callbacks for non-RNA properties
Needed so re-usable manipulators can control values that
don't correspond to a single properly or need conversion.
- Fix divide by zero bug in arrow manipulator (when moving zero pixels).
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r-- | source/blender/makesdna/DNA_manipulator_types.h | 45 | ||||
-rw-r--r-- | source/blender/makesdna/intern/makesdna.c | 2 |
2 files changed, 0 insertions, 47 deletions
diff --git a/source/blender/makesdna/DNA_manipulator_types.h b/source/blender/makesdna/DNA_manipulator_types.h deleted file mode 100644 index 006a308162b..00000000000 --- a/source/blender/makesdna/DNA_manipulator_types.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * ***** BEGIN GPL LICENSE BLOCK ***** - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software Foundation, - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - * ***** END GPL LICENSE BLOCK ***** - */ - -/** \file DNA_manipulator_types.h - * \ingroup DNA - */ - -#ifndef __DNA_MANIPULATOR_TYPES_H__ -#define __DNA_MANIPULATOR_TYPES_H__ - -typedef struct wmManipulatorGroup { - struct wmManipulatorGroup *next, *prev; - - struct wmManipulatorGroupType *type; - ListBase manipulators; - - struct wmManipulatorMap *parent_mmap; - - void *py_instance; /* python stores the class instance here */ - struct ReportList *reports; /* errors and warnings storage */ - - void *customdata; - void (*customdata_free)(void *); /* for freeing customdata from above */ - int flag; /* private */ - int pad; -} wmManipulatorGroup; - -#endif /* __DNA_MANIPULATOR_TYPES_H__ */ diff --git a/source/blender/makesdna/intern/makesdna.c b/source/blender/makesdna/intern/makesdna.c index c39e63ff8a5..76be857b1af 100644 --- a/source/blender/makesdna/intern/makesdna.c +++ b/source/blender/makesdna/intern/makesdna.c @@ -80,7 +80,6 @@ static const char *includefiles[] = { "DNA_image_types.h", "DNA_texture_types.h", "DNA_lamp_types.h", - "DNA_manipulator_types.h", "DNA_material_types.h", "DNA_vfont_types.h", "DNA_meta_types.h", @@ -1308,7 +1307,6 @@ int main(int argc, char **argv) #include "DNA_image_types.h" #include "DNA_texture_types.h" #include "DNA_lamp_types.h" -#include "DNA_manipulator_types.h" #include "DNA_material_types.h" #include "DNA_vfont_types.h" #include "DNA_meta_types.h" |