diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-03-16 17:42:49 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-03-16 17:42:49 +0300 |
commit | fc61cdf1428dc74f4ef9b834de9082f910ce08e0 (patch) | |
tree | ba4f4dc67a11c83c3dea90803e578053f0aa734b /source/blender/windowmanager/WM_types.h | |
parent | dd3ae7bad70ecfd466791f371b138b5b958e0a19 (diff) | |
parent | 0434053f1329384c312fd07812bce48ec9c28f50 (diff) |
Merge branch 'master' into blender2.8
Diffstat (limited to 'source/blender/windowmanager/WM_types.h')
-rw-r--r-- | source/blender/windowmanager/WM_types.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source/blender/windowmanager/WM_types.h b/source/blender/windowmanager/WM_types.h index 3bed4dac2cf..84209a0e3c8 100644 --- a/source/blender/windowmanager/WM_types.h +++ b/source/blender/windowmanager/WM_types.h @@ -543,7 +543,15 @@ typedef struct wmOperatorType { * canceled due to some external reason, cancel is called * - see defines below for return values */ int (*invoke)(struct bContext *, struct wmOperator *, const struct wmEvent *) ATTR_WARN_UNUSED_RESULT; + + /* Called when a modal operator is canceled (not used often). + * Internal cleanup can be done here if needed. */ void (*cancel)(struct bContext *, struct wmOperator *); + + /* Modal is used for operators which continuously run, eg: + * fly mode, knife tool, circle select are all examples of modal operators. + * Modal operators can handle events which would normally access other operators, + * they keep running until they don't return `OPERATOR_RUNNING_MODAL`. */ int (*modal)(struct bContext *, struct wmOperator *, const struct wmEvent *) ATTR_WARN_UNUSED_RESULT; /* verify if the operator can be executed in the current context, note |