Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-07-05Cleanup: spelling, punctuationCampbell Barton
2021-06-10Cleanup: spelling in commentsCampbell Barton
2021-04-16Fix RNA enum item callbacks not checking for NULL contextCampbell Barton
The NULL context is used to extract items for document generation.
2021-03-28Cleanup: re-order expensive checks for indirect ID useCampbell Barton
Check for indirect ID use after other simple user count checks are made. Also assert ED_object_base_free_and_unlink_no_indirect_check object argument isn't indirectly used.
2021-03-18Cleanup: remove unused common_restrict_check functionCampbell Barton
Since c10ad8e9eabea8a10d35efea3860cc345977e4f9 hiding edit-mode objects is supported. Although this function had already been removed in aeb8e81f2741aabc95d14bce7a83cef45481959c.
2021-03-12Cleanup: redundant outliner includesCampbell Barton
2021-03-05Fix incorrect assert in Outliner ID deletionJulian Eisel
Mistake in aa3a4973a30f. The expanded `ELEM()` check would include `0 && te->idcode != 0`, which always evaluates to `false`/`0`. That wouldn't cause the asset to fail, but the `te->idcode` part would never be checked. Fixed the error and cleaned up the check against "0" with a check against `TSE_SOME_ID`, see b9e54566e3b1a.
2021-03-05Cleanup: Add & use enum value for ID Outliner element typeJulian Eisel
Code to check if the Outliner tree-element type was the general ID one would always check against "0" (explicity or even implicitly). For somebody unfamiliar with the code this is very confusing. Instead the value should be given a name, e.g. through an enum. Adds `TSE_SOME_ID` as the "default" ID tree-element type. Other types may still represent IDs, as I explained in a comment at the definition. There may also still be cases where the type is checked against "0". I noted in the comment that such cases should be cleaned up if found.
2021-03-05Cleanup: rename evt to eventCampbell Barton
Following naming convention of most operators.
2021-02-25Improve Purge operator.Bastien Montagne
The Purge operator to remove unused IDs can now also remove 'indirectly unused' data-blocks (those only used by unused ones, recursively). It can also now only operate on linked, or on local data. All those options are exposed in the `File -> Cleanup` main menu. The behavior of the `Purge` button in the Outliner remains unchanged, needs some UI/UX design task for that.
2021-01-11Fix T84327: outliner_id_copy_tag was only copying from expanded nodes.Pi Lanningham
If a node was closed in the hierarchy, we would only copy that node, even if child nodes were selected. Reviewed By: brecht, mont29 Maniphest Tasks: T84327 Differential Revision: https://developer.blender.org/D9995
2020-12-28UI: List library overrides in the OutlinerJulian Eisel
Having a centeral place to find a list of all library overrides should be useful for managing production scenes where library overrides are used a lot. This change adds the individually overridden properties of a data-block under the data-block itself. Just how we show modifiers, constraints or pose channels there. This way we can also expose library override operations/options better in future. There's also a filter option for the library overrides now, so they can be hidden. It is only available in the View Layer display mode though, like the other filter options. One internal change this has to do is adding more informative return values to undo pushes and the library override functions called by it. That way we can send a notifier when library overrides change for the Outliner to know when to rebuild the tree. Differential Revision: https://developer.blender.org/D7631 Reviewed by: Andy Goralczyk, Bastien Montagne, William Reynish
2020-12-24Cleanup: Fix capitalization in various UI stringsYevgeny Makarov
Approximately 195 changes of capitalization to conform to MLA title style. UI labels and property names should use MLA title case, while descriptions should be capitalized like regular prose, generally with only the start of a sentence capitalized. Differential Revision: https://developer.blender.org/D9922
2020-12-18Cleanup: Use LISTBASE_FOREACH macro in outliner codeNathan Craddock
No functional changes.
2020-12-02Fix crash in outliner on cursor hoverNathan Craddock
The previous commit surfaced a bug introduced in rBab4654cdfe8f in which a boolean wasn't initialized to false.
2020-12-02Outliner: Highlight icons on cursor hoverNathan Craddock
The icons for collapsed children already draw highlighted when hovered. Because the item icons are now select targets (for outliner to properties editor tab switching) this adds highlights on hover for all outliner element icons.
2020-11-27Cleanup: Move logic to `outliner_find_item_at_x_in_row`Nathan Craddock
Move the logic for determining if the item at a given x position is an icon into the function. This is used for determining selection over an icon, and will be used in a later commit for checking for hover over an icon. No functional changes.
2020-11-11Merge branch 'blender-v2.91-release' into masterPhilipp Oeser
2020-11-11Fix T82553: Outliner F2 renaming issue when item is out of viewPhilipp Oeser
- scrolling would be restricted (usually, if the object to be renamed is in view, this prevents scrolling away without finishing the rename operation) - renaming by typing and confirming with Enter was not possible (you would have to escape, scroll to the object and use F2 again) - other shortcuts like A and H are still active instead of being handled as text input Avoid all these issue by forcing the item into view using outliner_show_active / outliner_scroll_view. Maniphest Tasks: T82553 Differential Revision: https://developer.blender.org/D9521
2020-11-11Fix 'outliner_scroll_view()' not reaching wanted elementPhilipp Oeser
Scrolling to an item after opening relevant parents can go wrong if said parent e.g. the last in the list [as in: then the Outliner does not scroll down all the way] It stems from the fact that 'region->v2d.tot.ymin' is not up-to-date in outliner_scroll_view after outliner_show_active opens up parents, 'tot' will only update on a redraw. Now calculate the trees height on the fly using 'outliner_tree_dimensions()'. ref D9521 ref T82553 Maniphest Tasks: T82553 Differential Revision: https://developer.blender.org/D9523
2020-11-06Cleanup: use ELEM macroCampbell Barton
2020-10-15Outliner: Use operator option to decide which item to renameJulian Eisel
The `outliner.item_rename` operator needs to decide if it should rename the active or the hovered item. Previously it checked if the event is a press event, which is a hacky way of doing this and limit how the operator can be used in the keymap. Now use a operator option to let this be controlled on the keymap level. Doesn't change any default behavior.
2020-10-15Fix error in previous commitJulian Eisel
Missing null-check, could lead to null-pointer dereference.
2020-10-15Cleanup: Refactor lookup for hovered Outliner element for renamingJulian Eisel
* Use existing and optimized lookup function, rather than own duplicated logic. * Move low-level coordinate check into general function, alongside similar ones.
2020-10-02Cleanup: Move `EditBone` structure definition from `ED` to `BKE` area.Bastien Montagne
Access to this structure will be needed in BKE's armature code.
2020-09-30Cleanup: convert gforge task ID's to phabricator formatValentin
Cleanup old tracker task format to the new. e.g: [#34039] to T34039 Ref D8718
2020-09-30Cleanup: Use LISTBASE_FOREACH macro in outliner codeHans Goudey
2020-09-10Outliner: Use right click target element for context menuNathan Craddock
When opening the outliner context menu with multiple data types selected, the menu did not show operators related to the target of the cursor. For example, if a modifier and object are selected, a right click on the modifier does not show the modifier options, rather it shows the object context menu. Now the data type of the right-click element is used to determine the context menu to draw. For this to work properly the active element is now set on right click. Part of T77408 Manifest Task: https://developer.blender.org/T77770 Differential Revision: https://developer.blender.org/D8647
2020-09-10Cleanup: Remove outliner edit mode context menu entriesNathan Craddock
The outliner context menu has options to enter and exit edit mode, but they only show in edit mode, and they don't work. This removes the broken entries and related code. Part of T77408 Differential Revision: https://developer.blender.org/D8641
2020-08-28Fix (unreported): Walk expansion on scene collectionNathan Craddock
Left walk navigation while the scene collection is active would collapse the subtree which shouldn't be allowed. This adds another check to `outliner_item_openclose` to prevent collapsing the scene collection. Introduced in rBb077de086e14.
2020-08-28Fix: Outliner walk navigation in Data API modeNathan Craddock
Because the subtrees in Data API mode are empty for performance reasons, it was impossible to move through the tree with walk navigation. This adds an exception to allow walk navigation to expand subtrees in that mode.
2020-08-27Fix (unreported): Outliner Data API tree subtree expansionNathan Craddock
The changes in rB70151e41dc02 broke subtree expansion in the Data API display mode because the closed subtrees are empty lists. Move the empty subtree check from `outliner_item_openclose` to the walk navigation code to prevent the issue.
2020-08-26Outliner: Left and right walk navigationNathan Craddock
Previously the left and right arrow keys would close and open the active tree element, but a subsequent key press would not select up or down the tree as is common in tree-based interfaces. Walking left and right now does a selection action after opening or closing the active tree item. For example, a right key press on a closed element will open it's subtree, and an additional right key press will select the first child element. A left key press anywhere in a subtree will first close the active element if it's subtree is expanded. Walking left again will select the parent element. Part of T77408 Differential Revision: https://developer.blender.org/D8650
2020-08-20Outliner: Avoid rebuilding tree on selection/active changesJulian Eisel
We can avoid the rather expensive outliner tree rebuilds and only redraw if nothing but the selection or active item changes. This should give a bit of speedup for heavy scenes. For this to work I had to correct a few notifiers, some were only sending selection/active change notifiers that actually did things like adding objects. I also added a more precise notifier type for when the active collection changes. At the notifier subtype/action level we're not even close to running out of bits, so this should be fine. Also had to correct a wrong notifier check (was using `&` rather than `==`).
2020-08-07Cleanup: Rename soops to space_outlinerNathan Craddock
No functional changes. Rename soops, soutliner, and so to space_outliner.
2020-08-07Cleanup: use _fn for outliner callback functionsNathan Craddock
No functional changes.
2020-07-03Cleanup: Use C-style comments in outliner filesNathan Craddock
No functional changes. Convert all C++ style comments to C comments. Also capitalize and add full stops. The comments themselves were not cleaned up. Some could be removed or reworded.
2020-07-03Cleanup: Editors/Space/Outliner, Clang-Tidy else-after-return fixesSybren A. Stüvel
This addresses warnings from Clang-Tidy's `readability-else-after-return` rule in the `source/blender/editors/space_outliner` module. No functional changes.
2020-06-23Cleanup: rename 'name' to 'filepath' for DNA typesCampbell Barton
Using 'name' for the full path of a file reads badly, especially when id.name is used in related code.
2020-06-23Cleanup: rename Library.filepath to filepath_absCampbell Barton
Make it clear that this is the absolute path, allow the 'name' to be renamed to 'filepath'. Rename is safe since this is only for run-time.
2020-06-19UI: Avoid rebuilding Outliner tree when opening/collapsing itemsJulian Eisel
In big files, the Outliner would have a noticeable lag when opening or collapsing items. That was because the entire tree was rebuilt, which isn't actually needed in most cases. So we avoid it where possible now.
2020-05-18Merge branch 'blender-v2.83-release'Bastien Montagne
2020-05-18Outliner: Fix (unreported) more data-changing operators missing undo.Bastien Montagne
2020-05-18Merge branch 'blender-v2.83-release'Bastien Montagne
2020-05-18Fix T76799: Crash from undoing the copy-pasting of multiple data blocks.Bastien Montagne
Bug was actually in outliner code, paste operator would not generate any undo step... This was not correct ever, but with new undo code this has become a critical issue, it cannot survive a situation where current main data has been changed without a proper undo push. This illustrates again how much of a catastrophic mess the 'tools' callbacks of the outliner are currently, it has already caused us quiet some pain in the past, and will keep doing so until this is fully sanitized am afraid. Would strongly suggest getting rid of thosw nasty mix of custom callbacks requiring manual undo pushes, I do not see the added value of this compared to regular menus calling regular operators. It only adds confusion and extra code for nothing...
2020-05-13Merge branch 'blender-v2.83-release'Philipp Oeser
2020-05-13Fix T76711: override data-blocks could be renamed in the outlinerPhilipp Oeser
Overriding datablock should never have an editable name. This also moves the check for linked/overridden datablocks above the check for master-collection (otherwise a linked/overriden collection could still be renamed) Maniphest Tasks: T76711 Differential Revision: https://developer.blender.org/D7718
2020-05-01Cleanup: use sections for outliner sourcesCampbell Barton
2020-04-25Cleanup: Select sync from outlinerNathan Craddock
Move the condition to check if selection syncing is enabled to inside the syncing function rather than before each time it is called.
2020-04-25Fix: Selection syncing for outliner operatorsNathan Craddock
A few outliner operators that modify selection were not tagging for a selection sync which led to selection inconsistencies. This adds syncing for the following operators: * Duplicating and deleting collections * Selecting/deselecting collection contents * Drag and drop * Object select, deselect, delete, and delete hierarchy