3131107ba3
Fix T94857: 'Gizmo Operator' from python templates spins when dragged
...
Callbacks used in the gizmo operator template don't support updating
while being dragged, set the EXCLUDE_MODAL flag so the offsets
aren't accumulated. Also fix the offset being applied twice to the
move gizmo.
2022-05-26 15:53:17 +10:00
38d8b088e7
Cleanup: run autopep8 on release/scripts/templates_py
2022-04-20 15:11:22 +10:00
be8270bc76
Cleanup: use equality instead of contains for single-item sets
2022-03-30 11:27:54 +11:00
46475b8e11
Cleanup: Grammar: its self vs. itself
2022-01-23 22:34:56 -06:00
Diptangshu Dey
da14a482f2
Fix T90866: Python operator templates are not accessible from menus
...
Python Operator templates made accessible from respective menus
(required to also use F3 search for quick access)
Also fixed Modal Draw Operator id_name (had duplicate name from other template)
Maniphest Tasks: T90866
Differential Revision: https://developer.blender.org/D13182
2021-11-16 10:45:23 +01:00
9b1882f986
Cleanup: replace face-map reference in gizmo example
...
Copy-paste error.
2021-11-05 15:52:17 +11:00
082ddc9379
ToolSystem: support per-tool gizmo group properties
...
Also add gizmo group example to the tool-template.
2021-08-26 16:02:31 +10:00
265c3a4724
Cleanup: replace NB with NOTE in comments
2021-07-21 13:10:32 +10:00
432bfbf7a3
Cleanup: pep8
2021-07-06 12:05:27 +10:00
f29a738e23
PyAPI: use keyword only arguments
...
Use keyword only arguments for the following functions.
- addon_utils.module_bl_info 2nd arg `info_basis`.
- addon_utils.modules 1st `module_cache`, 2nd arg `refresh`.
- addon_utils.modules_refresh 1st arg `module_cache`.
- bl_app_template_utils.activate 1nd arg `template_id`.
- bl_app_template_utils.import_from_id 2nd arg `ignore_not_found`.
- bl_app_template_utils.import_from_path 2nd arg `ignore_not_found`.
- bl_keymap_utils.keymap_from_toolbar.generate 2nd & 3rd args `use_fallback_keys` & `use_reset`.
- bl_keymap_utils.platform_helpers.keyconfig_data_oskey_from_ctrl 2nd arg `filter_fn`.
- bl_ui_utils.bug_report_url.url_prefill_from_blender 1st arg `addon_info`.
- bmesh.types.BMFace.copy 1st & 2nd args `verts`, `edges`.
- bmesh.types.BMesh.calc_volume 1st arg `signed`.
- bmesh.types.BMesh.from_mesh 2nd..4th args `face_normals`, `use_shape_key`, `shape_key_index`.
- bmesh.types.BMesh.from_object 3rd & 4th args `cage`, `face_normals`.
- bmesh.types.BMesh.transform 2nd arg `filter`.
- bmesh.types.BMesh.update_edit_mesh 2nd & 3rd args `loop_triangles`, `destructive`.
- bmesh.types.{BMVertSeq,BMEdgeSeq,BMFaceSeq}.sort 1st & 2nd arg `key`, `reverse`.
- bmesh.utils.face_split 4th..6th args `coords`, `use_exist`, `example`.
- bpy.data.libraries.load 2nd..4th args `link`, `relative`, `assets_only`.
- bpy.data.user_map 1st..3rd args `subset`, `key_types, `value_types`.
- bpy.msgbus.subscribe_rna 5th arg `options`.
- bpy.path.abspath 2nd & 3rd args `start` & `library`.
- bpy.path.clean_name 2nd arg `replace`.
- bpy.path.ensure_ext 3rd arg `case_sensitive`.
- bpy.path.module_names 2nd arg `recursive`.
- bpy.path.relpath 2nd arg `start`.
- bpy.types.EditBone.transform 2nd & 3rd arg `scale`, `roll`.
- bpy.types.Operator.as_keywords 1st arg `ignore`.
- bpy.types.Struct.{keyframe_insert,keyframe_delete} 2nd..5th args `index`, `frame`, `group`, `options`.
- bpy.types.WindowManager.popup_menu 2nd & 3rd arg `title`, `icon`.
- bpy.types.WindowManager.popup_menu_pie 3rd & 4th arg `title`, `icon`.
- bpy.utils.app_template_paths 1st arg `subdir`.
- bpy.utils.app_template_paths 1st arg `subdir`.
- bpy.utils.blend_paths 1st..3rd args `absolute`, `packed`, `local`.
- bpy.utils.execfile 2nd arg `mod`.
- bpy.utils.keyconfig_set 2nd arg `report`.
- bpy.utils.load_scripts 1st & 2nd `reload_scripts` & `refresh_scripts`.
- bpy.utils.preset_find 3rd & 4th args `display_name`, `ext`.
- bpy.utils.resource_path 2nd & 3rd arg `major`, `minor`.
- bpy.utils.script_paths 1st..4th args `subdir`, `user_pref`, `check_all`, `use_user`.
- bpy.utils.smpte_from_frame 2nd & 3rd args `fps`, `fps_base`.
- bpy.utils.smpte_from_seconds 2nd & 3rd args `fps`, `fps_base`.
- bpy.utils.system_resource 2nd arg `subdir`.
- bpy.utils.time_from_frame 2nd & 3rd args `fps`, `fps_base`.
- bpy.utils.time_to_frame 2nd & 3rd args `fps`, `fps_base`.
- bpy.utils.units.to_string 4th..6th `precision`, `split_unit`, `compatible_unit`.
- bpy.utils.units.to_value 4th arg `str_ref_unit`.
- bpy.utils.user_resource 2nd & 3rd args `subdir`, `create`
- bpy_extras.view3d_utils.location_3d_to_region_2d 4th arg `default`.
- bpy_extras.view3d_utils.region_2d_to_origin_3d 4th arg `clamp`.
- gpu.offscreen.unbind 1st arg `restore`.
- gpu_extras.batch.batch_for_shader 4th arg `indices`.
- gpu_extras.batch.presets.draw_circle_2d 4th arg `segments`.
- gpu_extras.presets.draw_circle_2d 4th arg `segments`.
- imbuf.types.ImBuf.resize 2nd arg `resize`.
- imbuf.write 2nd arg `filepath`.
- mathutils.kdtree.KDTree.find 2nd arg `filter`.
- nodeitems_utils.NodeCategory 3rd & 4th arg `descriptions`, `items`.
- nodeitems_utils.NodeItem 2nd..4th args `label`, `settings`, `poll`.
- nodeitems_utils.NodeItemCustom 1st & 2nd arg `poll`, `draw`.
- rna_prop_ui.draw 5th arg `use_edit`.
- rna_prop_ui.rna_idprop_ui_get 2nd arg `create`.
- rna_prop_ui.rna_idprop_ui_prop_clear 3rd arg `remove`.
- rna_prop_ui.rna_idprop_ui_prop_get 3rd arg `create`.
- rna_xml.xml2rna 2nd arg `root_rna`.
- rna_xml.xml_file_write 4th arg `skip_typemap`.
2021-06-09 03:05:44 +10:00
Leon Zandman
865d1889da
Cleanup: spelling
...
Includes fixes to misspelled function names.
Ref D11280
2021-05-21 22:23:07 +10:00
Germano Cavalcante
6fff2427d6
Python GPU: Replace a few calls of the bgl module with gpu
...
Concludes these files:
[x]bpy_types.py
[x]operator_modal_draw.py
Reviewed By: fclem
Differential Revision: https://developer.blender.org/D11129
2021-05-01 12:12:58 -03:00
Élie Michel
ae9d61e7fe
Python API: add template for image processing
...
Since a few releases it is possible to process Blenders images much
more effficiently than before thanks to the `foreach_get`/`foreach_set`
methods. This new template shows how those methods can be used together
with numpy.
Differential Revision: https://developer.blender.org/D9400
2021-03-29 12:08:41 +02:00
c6ddb68b7a
Cleanup: remove unused layers property from template
...
Also remove unused imports.
2021-02-21 20:55:31 +11:00
af37c3e8f1
Cleanup: remove duplicate settings from operator_mesh_add template
...
Also move align items into the enum call as there is no need to have
this accessible from the class.
2021-02-21 19:48:11 +11:00
f560dc6892
Cleanup: rename variables for gizmo templates
...
The abbreviation was from 'manipulator',
which was changed to gizmo during development.
Also correct operator description.
2021-01-29 11:33:54 +11:00
Zev Eisenberg
6499a2ec5c
Fix typos in driver_functions.py
...
I'm learning how driver functions work, and I found a couple of typos in the driver_functions.py template file. Here's a quick patch to fix them up.
Reviewed By: Blendify
Differential Revision: https://developer.blender.org/D10149
2021-01-25 22:37:14 -05:00
8f4f9275ce
UI: Aesthetic tweaks to Select All by Type operator
...
* Match menu items with Add Menu (order and naming e.g. Font -> Text)
* Use Icons
* Remove ellipsis from the name (policy is to use `...` only when triggering a window/popup)
No functional changes.
Thanks @HooglyBoogly for the help!
2020-09-08 16:30:29 +02:00
Aaron Carlisle
ae223ff52b
Addons: deprecate 'wiki_url'
...
When running with debug enabled ('-d' argument),
warnings are printed for add-ons which are not yet updated.
Reminder to name things based on what they do,
not the technologies they use :)
2020-03-05 11:45:22 +11:00
4fcdcbe38d
Cleanup: pep8 for templates
2019-10-15 15:20:15 +11:00
1fa61c8843
Fix typo in background_job template
...
D5264 by @dimtion
2019-07-16 16:56:25 +10:00
fdcfc263e9
Use latest/version number for manual links
...
We want users to go to the current version for their current version
when possible if not point to latest.
/dev should really only be for development related work. End users
should not be browsing /dev unless they are reading about upcoming
features ahead of time.
2019-07-04 18:24:36 -04:00
Dalai Felinto
f5e0ae655e
Python Templates: Small fix for gizmo custom geometry
...
The mouse offset was inverted (the widget was going the opposite direction as the
mouse movement).
2019-06-28 09:57:16 -03:00
Dalai Felinto
30d65c326a
Python Templates: Update Custom Nodes tooltip
...
Since we exposed the editors sub-types to the type editor selector, this template
no longer shows in the head, but in the type editor selector.
2019-06-28 09:57:16 -03:00
Dalai Felinto
0519bb584b
Python Templates: Silence _MT_ warning in pie menu template
2019-06-28 09:57:16 -03:00
Dalai Felinto
da25748be7
Python Templates: Fix Operator Mesh Add
...
This was broken since: 06fe2a5e0c
2019-06-28 09:57:16 -03:00
54021da58b
Python Templates: fix operator_mesh_uv template
2019-06-06 14:36:08 +02:00
33e8db94b1
Fix (unreported) missing updates in scripts/docs after scene.update() removal.
...
This should really have been done together with API changes, simple
usage of grep does the trick to catch most places needing updates.
2019-06-04 14:39:51 +02:00
8accb5a46f
Cleanup: minor corrections
2019-05-22 08:53:04 +10:00
4f6d6f982f
python templates: update operator_modal_view3d_raycast to 2.8
...
Reviewers: JacquesLucke, sergey
Differential Revision: https://developer.blender.org/D4914
2019-05-21 16:39:48 +02:00
903e5d3972
python templates: update operator_modal_draw to 2.8
...
part of T56351
Reviewers: JacquesLucke
Differential Revision: https://developer.blender.org/D4912
2019-05-21 15:36:05 +02:00
06fe2a5e0c
Objects: new 3D cursor alignment option when adding objects
...
The choices are now World, View and 3D Cursor.
This breaks Python API compatibility, add-ons that add objects with this
parameter will need to be updated.
Differential Revision: https://developer.blender.org/D4706
2019-05-15 18:10:58 +02:00
f3fc8271b8
Fix T63504: Python Template 'ui_previews_dynamic_enum' error
...
thx @nacioss for the fix
2019-04-12 14:10:10 +02:00
41b289be30
Cleanup: unused imports
2019-03-15 19:45:21 +11:00
f29b80ff79
Tool System: add tool registration API
...
This mimics RNA style class registration,
keeping the same internal data types.
Currently there is a template which shows an example of adding a tool
group with a keymap.
Icon generation still needs to be exposed for general use.
2019-03-15 17:05:18 +11:00
69665bc7f0
RNA: move cursor into own struct
...
Without this it's impractical to subscribe to any change to the cursor.
Fixes T61969 by having gizmos update on any change to the cursor.
2019-03-01 12:41:40 +11:00
c51516c3fb
Update for rename: constraint_orientation -> orient_type
2019-02-28 12:30:56 +11:00
7894d6c6f1
Cleanup: line length
2019-01-30 09:06:44 +11:00
Sebastian Parborg
8c0a77b894
Fix T59944: Template operator_mesh_uv.py fails
2019-01-07 10:21:23 +11:00
63fcbfc3a7
RNA: naming, user-preferences -> preferences
2018-12-21 12:55:02 +11:00
f2796da2e5
PyTemplates operator_modal_timer: update to 2.8
...
use keyword argument
Fixes T59232
2018-12-12 09:36:46 +01:00
c631782542
Fix T58474: Gizmo Operator template fails on rerun
2018-12-04 10:17:42 +11:00
7c7f3776dd
Use collection and instance terminology in Python API
...
This follows naming convention agreed on in T56648.
2018-11-28 18:22:51 +01:00
1b870bce85
Tool System: remove custom tool registration
...
API is not ready for beta (likely to change).
2018-11-28 10:40:02 +11:00
20963a6a06
PyTemplates operator_modal_view3d_raycast: update to blender2.8 (*/@)
2018-11-16 12:10:35 +01:00
088be7eb2f
Keymaps: replace select / action mouse system
...
For Blender builtin configurations the option to choose the select mouse remains
and is now also in the splash screen. It works by changing the keymap dynamically
in the script, rather than using special events.
The system of automatic switching of events was not flexible enough to deal with
side effects that require further keymap changes, so it is now under more manual
control in the script.
This breaks compatibility for some scripts and exported key configurations.
These can be fixed by replacing SELECTMOUSE, ACTIONMOUSE, EVT_TWEAK_S and
EVT_TWEAK_A with appropriate LEFTMOUSE, RIGHTMOUSE, EVT_TWEAK_L and
EVT_TWEAK_R events.
Other than that, there should be no functional changes.
2018-11-16 08:31:00 +11:00
a4fccde67a
Fix some templates for 2.8.
2018-11-14 18:21:06 +01:00
f12d2adc87
RNA: Object.select_set use boolean, only select
...
- Was setting active state, making it necessary to backup/restore
active object in cases where this isn't needed.
Existing scripts are explicitly setting the active object when needed.
- Use a boolean select arg (toggle selection wasn't used anywhere).
- Add an optional view layer argument since scripts should be able to
operate outside the user context.
2018-11-08 08:54:55 +11:00
f907eb4268
PyAPI: Use 'None' arg to clear header text
2018-10-30 16:20:38 +11:00
108475dc01
PyAPI: Support for custom tool registration
...
Added a module bpy.utils.toolsystem which only exposes ToolDef,
to avoid scripts referencing bl_ui internals.
2018-10-18 17:13:22 +11:00