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
2022-02-07Curves: Rename "Hair" types, variables, and functions to "Curves"Hans Goudey
Based on discussions from T95355 and T94193, the plan is to use the name "Curves" to describe the data-block container for multiple curves. Eventually this will replace the existing "Curve" data-block. However, it will be a while before the curve data-block can be replaced so in order to distinguish the two curve types in the UI, "Hair Curves" will be used, but eventually changed back to "Curves". This patch renames "hair-related" files, functions, types, and variable names to this convention. A deep rename is preferred to keep code consistent and to avoid any "hair" terminology from leaking, since the new data-block is meant for all curve types, not just hair use cases. The downside of this naming is that the difference between "Curve" and "Curves" has become important. That was considered during design discussons and deemed acceptable, especially given the non-permanent nature of the somewhat common conflict. Some points of interest: - All DNA compatibility is lost, just like rBf59767ff9729. - I renamed `ID_HA` to `ID_CV` so there is no complete mismatch. - `hair_curves` is used where necessary to distinguish from the existing "curves" plural. - I didn't rename any of the cycles/rendering code function names, since that is also used by the old hair particle system. Differential Revision: https://developer.blender.org/D14007
2021-11-05UI: Use arrow icon on context pathsPablo Vazquez
The current `ICON_SMALL_TRI_RIGHT_VEC` uses dark hard-coded colors ([`0.2`, `0.2`, `0.2`]) which makes it impossible to theme and hard to see in dark contexts. Use `ICON_RIGHTARROW` to match the Outliner's breadcrumbs. This icon uses `TH_TEXT` so it's visible as long as the rest of the text is. ##### Master (Properties editor background made red on purpose to be able to see the triangle icon) {F11713038, size=full} #### This patch {F11713039, size=full} Reviewed By: #user_interface, Severin, HooglyBoogly Maniphest Tasks: T92771 Differential Revision: https://developer.blender.org/D13106
2021-10-20Cleanup: use elem macrosCampbell Barton
2021-08-31Cleanup: add CTX_data_pointer_set_ptr & CTX_data_list_add_ptrCampbell Barton
Many callers expanded a PointerRNA argument, so add a version of these functions that takes a PointerRNA.
2021-08-27Fix T90907: RNA pointers for material slots are not unique across IDsPhilipp Oeser
Caused by {rB1a81d268a19f}. This caused e.g. ALT-clicking the 'Link' button to not propagate to other selected objects (same as the 'Copy To Selected' context menu entry). If these are not unique across IDs, checks in ui_selectcontext_begin() or copy_to_selected_button() could fail. Now offset by ID pointer. thx @JacquesLucke for clarification on the POINTER_* macros (and why not to use them)! Maniphest Tasks: T90907 Differential Revision: https://developer.blender.org/D12321
2021-07-03Cleanup: consistent use of tags: NOTE/TODO/FIXME/XXXCampbell Barton
Also use doxy style function reference `#` prefix chars when referencing identifiers.
2021-06-28Cleanup: Fix const warnings in buttons_context.cYimingWu
2021-06-28UI: Hide collection tab when scene master collection is activeYimingWu
CollectionLineart does not care about the configurations in master collection. Other options are not applicaple for master collection as well. Hence hiding it. Reviewed by Dalai Felinto (dfelinto) Differential Revision: https://developer.blender.org/D11702
2021-06-26Cleanup: full sentences in comments, improve comment formattingCampbell Barton
2021-06-24Cleanup: comment blocks, trailing space in commentsCampbell Barton
2021-05-20Fix: wrong rna pointer for material slotJacques Lucke
This was missing from rB1a81d268a19f2f1402f408ad1dadf92c7a399607.
2021-04-27Fix T87401: Drop-down can apply the wrong modifierHans Goudey
The trouble was that there was a context pointer "modifier" in the property editor context that returned the active modifier. But the "modifier" variable was already used in many places, for pointers that are *not* equivalent to the active modifier. The context pointer for the active modifier was unecessary anyway. If we need to access a context pointer for the active modifier in the property editor then we can add it. Until then it only adds confusion.
2021-03-22Fix T86822: context.collection not available in Object/Object Data PropertiesSebastian Parborg
We need to return the global context collection if it is not found in the data path. Also fix pinning of the collection tab.
2021-03-22Cleanup: Collection check return type in button_contextSebastian Parborg
2021-03-16Grease Pencil: Add LineArt modifierYimingWu
This adds the LineArt grease pencil modifier. It takes objects or collections as input and generates various grease pencil lines from these objects with the help of the active scene camera. For example it can generate contour lines, intersection lines and crease lines to name a few. This is really useful as artists can then use 3D meshes to automatically generate grease pencil lines for characters, enviroments or other visualization purposes. These lines can then be baked and edited as regular grease pencil lines. Reviewed By: Sebastian Parborg, Antonio Vazquez, Matias Mendiola Differential Revision: http://developer.blender.org/D8758
2021-02-16UI: Clarify descriptions in properties popoverNathan Craddock
Updates the descriptions and labels for outliner sync in the properties editor popover to be more clear. Differential Revision: https://developer.blender.org/D10010
2021-02-10Cleanup: remove redundant headers in source/blender/editors/Campbell Barton
Remove redundant headers using `./source/tools/utils_maintenance/code_clean.py` Reviewed By: jmonteath Ref D10364
2020-12-22UI: Properties editor popover and outliner syncNathan Craddock
This adds a popover to the properties editor. Currently the only setting is for controlling outliner to properties syncing. Because we cannot define a perfect heuristic to determine when properties editors should change tabs based on outliner icon selection, we need an option to enable or disable this behavior per properties editor. There are 3 options for controlling the syncing. Auto uses the heuristic to only allow tab switching when a properties editor and outliner share a border. On and off enable and disable syncing respectively. Differential Revision: https://developer.blender.org/D9758
2020-12-15Fix Adjust Last Operation popup for operators relying on button contextPhilipp Oeser
This was reported for duplicating particle systems, then using F9 to enable the 'Duplicate Settings' option (see T83317). In this case, the operator gets the particle_system from (buttons) context and if none can get found will duplicate all settings instead. The reason why none gets found here is that buttons_context() doesnt have a valid path when called from F9/SCREEN_OT_redo_last, path is cleared when global undo does a file-read which clears the path (see lib_link_workspace_layout_restore). It can be recomputed though to be valid even from redo_last (at least when in the Properties Editor). This was likely causing other operators (relying on buttons context) from the Properties Editor to fail as well. Fixes T83317 Maniphest Tasks: T83317 Differential Revision: https://developer.blender.org/D9825
2020-12-15Move Point Cloud object back to Experimental FeaturesDalai Felinto
The geometry-nodes features no longer depend on the point cloud object. Therefore the point cloud object, although important in the future, can be postponed until we have render and edit mode fully working. This reverts commits: * ea74ed5a7a2031b614d401e394f2e0146fc90155. * dc614c68ef2c8ca8b076a000974b5a20a4145a42.
2020-12-02Cleanup: remove all of "#ifdef WITH_POINT_CLOUD"Dalai Felinto
Since Point Cloud was removed from experimental this is no longer needed.
2020-12-02Geometry Nodes: active modifier + geometry nodes editorHans Goudey
This commit adds functions to set and get the object's active modifier, which is stored as a flag in the ModifierData struct, similar to constraints. This will be used to set the context in the node editor. There are no visible changes in this commit. Similar to how the node editor context works for materials, this commit makes the node group displayed in the node editor depend on the active object and its active modifier. To keep the node group from changing, just pin the node group in the header. * Shortcuts performed while there is an active modifier will affect only that modifier (the exception is the A to expand the modifiers). * Clicking anywhere on the empty space in a modifier's panel will make it active. These changes require some refactoring of object modifier code. First is splitting up the modifier property invoke callback, which now needs to be able to get the active modifier separately from the hovered modifier for the different operators. Second is a change to removing modifiers, where there is now a separate function to remove a modifier from an object's list, in order to handle changing the active. Finally, the panel handler needs a small tweak so that this "click in panel" event can be handled afterwards.
2020-11-17Merge branch 'blender-v2.91-release'Hans Goudey
2020-11-17Fix T82341: Warning in terminal during property searchHans Goudey
After recent changes to the context panel layout (rB187cc5e26d28b1a8), there has been an error printed when running propery search: > Error: separator_spacer() not supported in popups. The layout code thinks it's drawing in a menu because region->visible isn't properly set for the other tab searches. This patch sets that field for the temporary searching region, but it also disables searching in the context breadcrumbs panel, because at best this will just give results for the names of the active object, etc. This isn't helpful since those labels are mostly in every tab anyway. Differential Revision: https://developer.blender.org/D9425
2020-11-13Cleanup: Make panel type flag names more clearHans Goudey
The overlap with the `Panel` flags that start with "PNL" was quite confusing because wasn't clear which enum a flag was from. The new names are a bit longer, but the clarity is worth it.
2020-10-28Outliner: Properties editor sync on selectionNathan Craddock
When outliner datablocks are selected, switch to the corresponding tab for that datablock in properties editors. Only properties editors that share an edge with the outliner will change tabs. Additionally, when modifiers, constraints, and shader effects are selected from the outliner, the panel will be expanded in all properties editors. Part of T77408 Manifest Task: https://developer.blender.org/T63991 Differential Revision: https://developer.blender.org/D8638
2020-10-21UI: Move Properties path pin button next to the data-pathJulian Eisel
The pin button should be next to the data-path, which is what it belongs to. Note that this makes the placement of the search button in the header look quite off. That is because it's centered to the absolute header width, not the width of the main region (which is smaller because of the tab region on the left). Technically it's correct that way, visually it looks wrong. This will be addressed in a followup commit.
2020-10-21Preferences: separate feature flags for geometry nodes and point cloud typeJacques Lucke
Those two features are not directly related and one might be activated in master earlier than the other. WITH_PARTICLE_NODES was removed, because we continue the project under the name "Geometry Nodes".
2020-10-14Fix Asan warning in property editor texture tabHans Goudey
When there is no active texture, a NULL pointer was dereferenced. It didn't crash because the dereference was for the first item at the pointer, the ID. To fix this, return with no data when `texture is NULL.
2020-10-14Cleanup: Use enum for return typeHans Goudey
This just follows up rB90a27d5aa91a1 with a few changes where changes were missed.
2020-10-10Cleanup: use C comments for descriptive textCampbell Barton
Follow our code style guide by using C-comments for text descriptions.
2020-10-02Cleanup: Use enum for return values in context callbacksSybren A. Stüvel
Define enum `eContextResult` and use its values for returns, instead of just returning 1, 0, or -1 (and always having some comment that explains what -1 means). This also cleans up the mixup between returning `0` and `false`, and `1` and `true`. An inconsistency was discovered during this cleanup, and marked with `TODO(sybren)`. It's not fixed here, as it would consititute a functional change. The enum isn't used everywhere, as enums in C and C++ can have different storage sizes. To prevent issues, callback functions are still declared as returning`int`. To at least make things easier to understand for humans, I marked those with `int /*eContextResult*/`. This is a followup of D9090, and is intended to unify how context callbacks return values. This will make it easier to extend the approach in D9090 to those functions. No functional changes. Differential Revision: https://developer.blender.org/D9095
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-25Fix T81161: Bad properties context panel placement loading old filesHans Goudey
These breadcrumbs used to be a panel in 2.79 and 2.80 development. If a file was saved in those versions, and the panels rearranged in a version that didn't have this panel, its sortorder would be changed even though it wasn't visible or even used in that version. A simple fix is to use a new ID name for the new version of this panel in 2.91. "Buttons" is an old name anyway.
2020-09-25Cleanup: Miscellaneous code improvementsHans Goudey
- Declare variables where initialized - Return early in some cases - Use "i" as an iteration index variable - Use bool instead of int where applicable
2020-09-15Property Search: Move properties context buttons back to a panelHans Goudey
The context path "breadcrumbs" used to be in a panel in 2.79. Although they look a bit better in the header, there isn't enough space for them with the property search field in the header as well. Maybe there will be another solution in the long term to fit both the search field and this panel in the header, but for now, this commit moves these labels back to a header-less panel. Differential Revision: https://developer.blender.org/D8853
2020-09-11Cleanup: Remove unused variables and functionHans Goudey
Somehow these changes were lost while pulling the previous commit from the property-search-ui-v2 branch.
2020-09-11UI: Use operator to set property editor's pinned data-blockHans Goudey
This commit removes the custom callback that's currently used to set the property editor's pinned data, replacing it with an operator. This means "pin" button doesn't have to be defined in C. Differential Revision: https://developer.blender.org/D8376
2020-09-10Fix T80651: Material tab disappearsSebastian Parborg
Always return true if the object can have materials. Even if there are not currently any materials assigned to the object.
2020-09-09Fix material null pointer reference in buttons_context.cSebastian Parborg
ASAN reported null pointer access when converting a mesh to curves. Check if the material is a null pointer before trying to use it.
2020-08-26Merge branch 'blender-v2.90-release' into masterCampbell Barton
2020-08-26Fix T79992: Error calling context.copy() in Properties EditorDalai Felinto
This was an oversight in rB83e3d25bcae3. Basically we still have the "hair" and "point_cloud" entries for the context. However they were ifdef'ed. Note this would mostly happen in 2.90 since we always build without hair and particles there. Differential Revision: https://developer.blender.org/D8712
2020-08-18Merge remote-tracking branch 'origin/blender-v2.90-release'Dalai Felinto
2020-08-18Remove (ifdef) RNA for simulation, point cloud and particlesDalai Felinto
For 2.90 release this should not be exposed in the RNA API. In master this needs to be ON by default, that's all. Differential Revision: https://developer.blender.org/D8589
2020-07-30Merge remote-tracking branch 'origin/blender-v2.90-release'Dalai Felinto
2020-07-30Cleanup: Remove pre 2.80 headersValentin
Review: D8341
2020-07-28Cleanup: Use bool instead of intHans Goudey
2020-07-03Cleanup: Editors, 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` module. No functional changes.
2020-07-03Cleanup: Explicit return in each `else if` block in `buttons_context()`Sybren A. Stüvel
This is a similar change as in rB4283da83cc9. No functional changes.