document calling operators with undo enabled.
authorCampbell Barton <ideasman42@gmail.com>
Thu, 28 Jun 2012 08:17:28 +0000 (08:17 +0000)
committerCampbell Barton <ideasman42@gmail.com>
Thu, 28 Jun 2012 08:17:28 +0000 (08:17 +0000)
doc/python_api/examples/bpy.ops.1.py
doc/python_api/examples/bpy.ops.2.py
doc/python_api/examples/bpy.ops.py

index f43be2b0f63edc0fcb79ec2149bd3970d246acf6..a00dbdafb9048d2efc2e793cca16538c1121006e 100644 (file)
@@ -1,22 +1,17 @@
 """
-Execution Context
-+++++++++++++++++
+Overriding Context
+------------------
 
-When calling an operator you may want to pass the execution context.
+It is possible to override context members that the operator sees, so that they
+act on specified rather than the selected or active data, or to execute an
+operator in the different part of the user interface.
 
-This determines the context thats given to the operator to run in, and weather
-invoke() is called or execute().
-
-'EXEC_DEFAULT' is used by default but you may want the operator to take user
-interaction with 'INVOKE_DEFAULT'.
-
-The execution context is as a non keyword, string argument in:
-('INVOKE_DEFAULT', 'INVOKE_REGION_WIN', 'INVOKE_REGION_CHANNELS',
-'INVOKE_REGION_PREVIEW', 'INVOKE_AREA', 'INVOKE_SCREEN', 'EXEC_DEFAULT',
-'EXEC_REGION_WIN', 'EXEC_REGION_CHANNELS', 'EXEC_REGION_PREVIEW', 'EXEC_AREA',
-'EXEC_SCREEN')
+The context overrides are passed as a dictionary, with keys matching the context
+member names in bpy.context. For example to override bpy.context.active_object,
+you would pass {'active_object': object}.
 """
 
-# group add popup
+# remove all objects in scene rather than the selected ones
 import bpy
-bpy.ops.object.group_instance_add('INVOKE_DEFAULT')
+override = {'selected_bases': list(bpy.context.scene.object_bases)}
+bpy.ops.object.delete(override)
index 575d020a5a026a0e8b4fd581c96830c3e30d5a43..01e7dc1902e5b21bdd541a768326de289f670eb7 100644 (file)
@@ -1,17 +1,22 @@
 """
-Overriding Context
-++++++++++++++++++
+Execution Context
+-----------------
 
-It is possible to override context members that the operator sees, so that they
-act on specified rather than the selected or active data, or to execute an
-operator in the different part of the user interface.
+When calling an operator you may want to pass the execution context.
 
-The context overrides are passed as a dictionary, with keys matching the context
-member names in bpy.context. For example to override bpy.context.active_object,
-you would pass {'active_object': object}.
+This determines the context thats given to the operator to run in, and weather
+invoke() is called or execute().
+
+'EXEC_DEFAULT' is used by default but you may want the operator to take user
+interaction with 'INVOKE_DEFAULT'.
+
+The execution context is as a non keyword, string argument in:
+('INVOKE_DEFAULT', 'INVOKE_REGION_WIN', 'INVOKE_REGION_CHANNELS',
+'INVOKE_REGION_PREVIEW', 'INVOKE_AREA', 'INVOKE_SCREEN', 'EXEC_DEFAULT',
+'EXEC_REGION_WIN', 'EXEC_REGION_CHANNELS', 'EXEC_REGION_PREVIEW', 'EXEC_AREA',
+'EXEC_SCREEN')
 """
 
-# remove all objects in scene rather than the selected ones
+# group add popup
 import bpy
-override = {'selected_bases': list(bpy.context.scene.object_bases)}
-bpy.ops.object.delete(override)
+bpy.ops.object.group_instance_add('INVOKE_DEFAULT')
\ No newline at end of file
index 20e8773652d9d2bb8788226aa593b5b81f68fc86..9964ad915bf6e67e7ae15df3f2454047a62390ba 100644 (file)
@@ -1,6 +1,6 @@
 """
 Calling Operators
-+++++++++++++++++
+-----------------
 
 Provides python access to calling operators, this includes operators written in
 C, Python or Macros.
@@ -18,6 +18,26 @@ there is a poll() method to avoid this problem.
 
 Note that the operator ID (bl_idname) in this example is 'mesh.subdivide',
 'bpy.ops' is just the access path for python.
+
+
+Keywords and Positional Arguments
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+For calling operators keywords are used for operator properties and
+positional arguments are used to define how the operator is called.
+
+There are 3 optional positional arguments (documented in detail below).
+
+.. code-block:: python
+
+   bpy.ops.test.operator(override_context, execution_context, undo)
+
+* override_context - dict type
+* execution_context - string (enum)
+* undo - boolean
+
+
+Each of these arguments is optional, but must be given in the order above.
 """
 import bpy