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).
This commit is contained in:
2017-06-15 20:48:24 +10:00
parent 1a7099f3ec
commit 830df9b33d
35 changed files with 1119 additions and 565 deletions

View File

@@ -72,7 +72,10 @@ set(SRC
intern/wm_window.c
intern/wm_stereo.c
manipulators/intern/wm_manipulator.c
manipulators/intern/wm_manipulator_property.c
manipulators/intern/wm_manipulator_type.c
manipulators/intern/wm_manipulatorgroup.c
manipulators/intern/wm_manipulatorgroup_type.c
manipulators/intern/wm_manipulatormap.c
WM_api.h