Before, the active spline index and the active point index were always
cleared. Now the active index is only cleared when the curve/surface is
deleted. This was accomplished by making the surface patch delete
function handle that correctly. The spline deletion already handled it.
This fixes only vertex deletion mode.
Fixes problem mentioned in T101160.
Differential Revision: https://developer.blender.org/D16133
The actual length of extension lines can be adjusted using wheel mouse
but this is very inconvenient for tablet users.
Now, the extension can be adjusted using MMB of the pen.
There was a similar request in Right-Click Select
Reviewed By: Matias Mendiola, Daniel Martinez Lara
Differential Revision: https://developer.blender.org/D16128
Updates the function checking if a container can have grease pencil layer keyframes, to account for dopesheet in main mode, and timeline.
Reviewed By: Sybren A. Stüvel
Differential Revision: http://developer.blender.org/D16132
Used in action_select to refactor the selection operators.
No functional changes.
Reviewed By: Sybren A. Stüvel
Differential Revision: http://developer.blender.org/D16168
Objects/bones in the selection menu weren't ordered usefully,
worse, the closest items could be left out of the menu since items
would stop being added once the menu-size limit was reached.
Resolve this by sorting the menu items by depth, removing the most
distant when the number of items exceeds the limit.
When Ctrl is held, order by the distance to the object center
instead of depth.
In the driver editor and the "edit driver" popover, add a checkbox that
can mute the driver. This is the same functionality as the checkbox in
the driver editor's channel list, but then exposed in a different place
in the UI.
This is for convenience, such that a driver can now be muted by
right-clicking on the driven property, choosing "Edit Driver", then
muting it there. The same checkbox was added to the regular driver
editor's header for consistency.
Reviewed By: Severin
Maniphest Tasks: T101592
Differential Revision: https://developer.blender.org/D16173
Fix an issue where a `UI_BTYPE_CHECKBOX_N` button couldn't be toggled.
When toggling the value of a property, the `UI_BTYPE_TOGGLE_N`,
`UI_BTYPE_ICON_TOGGLE_N`, and `UI_BTYPE_CHECKBOX_N` types shouldn't
matter. These determine the inverted display of the value, but toggles
of that value should still happen once.
For these button types, the toggle happened twice, effectively making it
a no-op. The code for individual values is now also consistent with the
code for handling bit-flags.
Actually found & over-the-shoulder-reviewed by @Severin
Crash happened when adjusting operator props in Adjust Last Operation
panel.
When there are more than 32 objects selected in muti-object-editmode, we
are running into RNA array limit (`objects_selection_count` is defined as
an RNA array (which can only hold 32 entries, see
`RNA_MAX_ARRAY_LENGTH`), leading to reading random memory errors.
While there might be ways to make this work with more than 32 selected
objects (e.g. by instead using a collection, or investigate supporting
dynamic sized arrays for run-time RNA), this patch only cancels the
operator with a report message (instead of crashing).
Maniphest Tasks: T101492
Differential Revision: https://developer.blender.org/D16115
The problem was the conversion to object space converted the
points to zero.
Now, the new function `zero_axis_bias_m4` is used in order to add
a small bias in the inverse matrix and avoid the zero points.
A known math issue is the stroke can be offsetted if the scale is set to 1
again. In this case apply the scale to reset to 1.
Differential Revision: https://developer.blender.org/D16162
Fix reroute nodes added via the cut link gesture being parented to the
wrong frame node.
The frame's bounds that are used for the intersection test with the
newly added reroute are in view space, but the reroute's location was
given in the node tree's coordinate space, when the add reroute
operator was recently refactored (56193eccf6).
Reviewed By: Hans Goudey
Differential Revision: http://developer.blender.org/D16163
Using 'short' was historic (as the value was stored in the Base).
Prefer floats which allow sub-pixel distances to be differentiated.
Also remove IS_CLIPPED assignment as this only made sense when the
values were stored in the Base, without any other ways to check
if projection failed.
- Active Track (NLA vs movie clip)
- New (file)
- Object Index (loop cut)
- Object Index (render pass)
- Proxy Storage (sequence)
- Rim (Solidify modifier)
- Roughness (particle children)
- Spaces (text whitespace)
- Out (sequencer wipe transition)
Also make new asset tag name translatable.
Reviewed By: mont29
Differential Revision: https://developer.blender.org/D16067
Was not passing user_data to id_override_library_delete_hierarchy_fn.
Also correct a wrong assert.
Greenlit by @mont29 in T101306.
Should also go into 3.3 LTS.
Add function `SEQ_time_content_end_frame_get` to get content end frame.
New function is shorthand for
`SEQ_time_start_frame_get() + SEQ_time_strip_length_get()`.
After rB188f7585a183 deleting the object results in crash due
to null pointer access if collections are filtered out
Reviewed by: mont29
Differential Revision: https://developer.blender.org/D16031
Change some wording of tooltips for readability, in animation-related
areas (drivers, keying sets, animation channel visibility).
Reviewed By: sybren
Differential Revision: https://developer.blender.org/D16131
* Unhide all is no longer part of face_set_change_visibility.
* Implemented a few visibility API methods for PBVH_BMESH
* Fixed bug with unhide all not freeing all multires grid_hidden
bitmaps.
This is the conventional way of dealing with unused arguments in C++,
since it works on all compilers.
Regex find and replace: `UNUSED\((\w+)\)` -> `/*$1*/`
Blank brush strokes never have an oppurtunity to initialize
a sculpt undo step, which results in blank global undo steps.
These confuse DynTopo's internal BMLog undo stack.
Note: I tried having the stroke operator return OPERATOR_CANCELLED,
but this didn't prevent the undo push (which is done automatically
due to the presence of OPTYPE_UNDO in the operator flags).
I might investigate removing the flag, but that might cause other
problems.
This was not properly respected, and in general with multiple passes and layers
it's unclear what this should do exactly without breaking some render passes.
Better to keep this image format for raw unmodified render results.
Historically, caching these values may have had some advantages,
simplifying drawing object centers and selecting by object center.
Now the only uses of these values would calculate the projection
before use, so there is no reason to store run-time projection in DNA.
This also quiets a `-Wstring-overflow` warning.