Age | Commit message (Collapse) | Author |
|
A collection of smaller changes that are required in the /blender/source files. A lot of them are also due to variable renaming.
Reviewed By: sergey
Maniphest Tasks: T59995
Differential Revision: https://developer.blender.org/D3855
|
|
Part of T70240
This is the initial implementation of Weld Modifier.
New features will be added later.
ToDo:
- Seams: restrict welding to vertices along boundary edges.
- Edge Collapse: collapse edges below the length threshold.
- New icon.
- Some customdata are not being correctly interpolated.
Differential Revision: https://developer.blender.org/D6383
|
|
|
|
Dope Sheet or Outliner
The layer was activated, but the datablock was not tagged to recalc GPU cache.
|
|
Also correct some outdated symbol references,
add missing 'name' commands.
|
|
The issue was actually in Python extras (where it shows the ENUM option).
I got a bit distracted by the "(undocumented operator)" message.
It made me miss the missing ENUM once the crash was gone.
|
|
This was introduced on 9ca2cbdcea6a.
|
|
For the make single user operation to work we expect a parent of the
datablock to be around. However this is often not the case when not
accessing the data from Scenes or Viewlayer display modes.
For now we simply not show them in the other cases. They can be added
later though, by testing the outliner tree parent compatibility with the
expected parent id.
Fix T71673
Differential Revision: https://developer.blender.org/D6276
|
|
collection usercount
Maniphest Tasks: T71452
Differential Revision: https://developer.blender.org/D6222
|
|
|
|
The outliner didn't account for weight-paint + pose-mode,
making it consider all pose bones unselected.
When syncing selection, bones were unselected.
This adds a context argument to passed to drawing functions since
finding the weight-paint pose-object in the drawing loop isn't efficient.
|
|
- There was no way to select some kinds of data without activating them.
- Pose mode could not be activated at all.
No change to behavior with sync-selection enabled.
|
|
In 2.8, code would not enter the new 'Objects' and Collections'
'folders'.
Maniphest Tasks: T71026
Differential Revision: https://developer.blender.org/D6123
|
|
Multiple selection operations failed with weight-paint + pose mode.
Weight-paint + pose mode is a special case that doesn't support
multi-pose mode, so we need to use this instead of the generic
function.
|
|
|
|
Users now can turn on in a viewport collections that are temporarily
hidden (eye) in the view layer.
Design task: T61327
As for the implementation, I had to decouple the visibility in the
depsgraph from the visibility in the view layer.
Also there is a "bug" that in a way was there before which is some
operators (e.g., writing a text inside of a text object, tab into edit
mode) run regardless of the visibility of the active object. The bug was
present already (with object type visibility restriction) in 2.80 so if
we decide to tackle it, can be done separately (I have a patch for it
though P1132).
Reviewed by: brecht (thank you)
Differential Revision: D5992
|
|
|
|
Convention is to use (s) postfix for cases where there can be one or multiple,
so stay consistent with that.
This reverts commit 3e8276311ed17d12e8b47b4fe8e2f68c1ce8c603.
|
|
Differential Revision: https://developer.blender.org/D5729
|
|
Differential Revision: https://developer.blender.org/D5716
|
|
Redraw the outliner when text data-blocks are created and unlinked. This
also fixes a crash when unlinking.
|
|
|
|
...and use it in code generating library overrides.
|
|
`BKE_override_library_create_from_id()` too.
Similar change to the one done for tagged IDs overriding some days ago.
We do not always want to remap all local usages of a linked data-block
to its new local overriding copy.
|
|
In its current version that was a totally useless extra layer of crap
that we can totally avoid. Plus name was bad too.
|
|
|
|
Depending on the outliner display mode and the outliner dirty state,
a sync may not be needed on each draw. This commit adds a check
before syncing to prevent syncing when not needed.
|
|
This changes from-outliner selection syncing to always sync the
selection state of objects. This allows selecting objects while in
edit mode for parenting or adding hooks. This also fixes a few issues
where the sync algorithm would fail when no active object existed.
|
|
Collection contents alphabetical sort now uses a Natural Sort that takes number magnitude into account.
Differential Revision: https://developer.blender.org/D5636
Reviewed by Brecht Van Lommel
|
|
|
|
Object not referenced in any scene would not be deletable with previous
code... that was fine in 2.7x since it was not supposed to happen, but
now we can just use the nuclear `BKE_id_delete` for objects as well,
will take care of properly unlinking everything as needed.
|
|
|
|
The old layout of `PointerRNA` was confusing for historic reasons:
```
typedef struct PointerRNA {
struct {
void *data;
} id;
struct StructRNA *type;
void *data;
} PointerRNA;
```
This patch updates it to:
```
typedef struct PointerRNA {
struct ID *owner_id;
struct StructRNA *type;
void *data;
} PointerRNA;
```
Throughout the code base `id.data` was replaced with `owner_id`.
Furthermore, many explicit pointer type casts were added which
were implicit before. Some type casts to `ID *` were removed.
Reviewers: brecht, campbellbarton
Differential Revision: https://developer.blender.org/D5558
|
|
Adds a new icon for the action constraint so the icon draws with the
constraints color. Also adds two new icons for sequencer meta strips
and duplicate strips for use in the outliner sequence display mode.
The meta strip icon could be used in the sequencer sidebar.
|
|
Tags for update when pose bone visibility is toggled in the outliner.
|
|
The hide icon was drawing instead of the disable in viewports icon.
|
|
No functional changes. This commit simplifies the recursive call,
removes unneeded function calls, and adds comments.
|
|
Add support for ctrl+shift+lmb to default and industry compatible
keymaps to select a range without removing the existing selection.
|
|
Tags all outliner sync types on undo and redo operations.
|
|
No functional changes. Renames the "invisible" object filter to
"Hidden" to be more consistent.
|
|
|
|
Modifies selection keymap to be more conventional, with
shift click for range selection and ctrl click for extend
selection.
|
|
|
|
Set and clear parents for all elements in the selection in the outliner.
This also removes the popup menu for setting the parent to curves,
armatures, and lattices. It makes more sense to keep the outliner
simple and only do object parenting.
|
|
|
|
Adjusts the scrolling of show active and scroll page operators
to use the `outliner_scroll_view` operator to ensure scrolling
does not leave the outliner bounds.
Also changes show active to expand subtrees containing all
instances of the active object, which may be linked to multiple
collections.
|
|
|
|
Draw icons for sequencer and vertex groups. The sequence
types need updates because they all draw in various colors
and some sequence types do not have an icon.
|
|
Previously with F2 mapped to the global rename active object
operator, it was not posible to use the conventional F2 to rename any
outliner element like collections or object data. This adds F2 to the
outliner keymap to call the outliner rename operator rather than the
popup rename object operator.
|
|
Adds a keyboard walk navigation and selection operator to the
outliner. Up and down arrow keys walk up and down the list of
elements, and left and right will open and close elements if
the elements are closed or opened respectively. Holding shift
while walking up and down the tree expands the selection.
Holding shift while clicking or pressing left and right arrows
will expand or collapse all children elements recursively.
Pressing enter to openclose the hovered element is removed.
Also allows click+drag for openclose of element subtrees.
This moves openclose toggling to the openclose operator to
remove duplicate code. The outliner tree building is tweaked
slightly to set the proper parents in scene display mode for walk
select to walk to parents without errors.
|