diff options
author | Campbell Barton <ideasman42@gmail.com> | 2017-10-21 08:19:48 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2017-10-21 08:39:35 +0300 |
commit | e1e7b6db2e01d8ea2219d410200a8856d4597222 (patch) | |
tree | 521b1c81d53cc05c923e10f9ad8a3bb1887e899d /source/blender/makesdna | |
parent | b66728d63deee0fc9ef517405466d1139871251d (diff) |
WM: Initial Tool System
The tool-system it's self is primitive and may be changed.
Adding to 2.8 to develop operators and manipulators as tools.
Currently this is exposed in the toolbar, collapsed by default.
Work-flow remains unchanged if you don't change the active tool.
Placing the 3D cursor is now a Click instead of a Press event,
this allows tweak events to be mapped to tools such as border select,
keeping click for 3D cursor placement when selection tools are set.
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r-- | source/blender/makesdna/DNA_workspace_types.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_workspace_types.h b/source/blender/makesdna/DNA_workspace_types.h index 272d0cd110a..172903fe312 100644 --- a/source/blender/makesdna/DNA_workspace_types.h +++ b/source/blender/makesdna/DNA_workspace_types.h @@ -50,6 +50,16 @@ # endif #endif +/* Currently testing, allow to disable. */ +#define USE_WORKSPACE_TOOL + +typedef struct bToolDef { + /* either the keymap AND/OR manipulator_group must be defined. */ + char keymap[64]; + char manipulator_group[64]; + int spacetype; + int _pad; +} bToolDef; /** * \brief Wrapper for bScreen. @@ -80,6 +90,9 @@ typedef struct WorkSpace { int object_mode DNA_PRIVATE_WORKSPACE; /* enum eObjectMode */ int flags DNA_PRIVATE_WORKSPACE; /* enum eWorkSpaceFlags */ + /* should be: '#ifdef USE_WORKSPACE_TOOL'. */ + bToolDef tool; + struct SceneLayer *render_layer DNA_PRIVATE_WORKSPACE; char engine_id[32]; /* Render Engine. */ |