Commit Graph

1380 Commits

Author SHA1 Message Date
Dalai Felinto
af09a475e4 Extensions: User Interface: Sort advanced repository options
Local Cache and module are not related, so they should not be on the
same row. Instead group Local Cache with custom directory.

Designed with Pablo Vazquez.
2024-04-12 18:20:01 +02:00
Dalai Felinto
8771534434 Extensions: User Interface: Replace Label with icon and add placeholder
Design by Pablo Vazquez.
2024-04-12 18:20:01 +02:00
Dalai Felinto
c1edc32fe5 Extensions: User Interface
Remove label from Repositories popover, since it is now accessed via a
menu which already has the label.

Follow up for: blender/blender-addons-contrib@d5862549d3
2024-04-12 18:20:01 +02:00
Christoph Lendenfeld
883af6dd63 Anim: Add custom pre and post frame color to motion path
This PR adds an option to specify custom colors for a
motion path. One for frames before the current frame
and one frame for after. With this it is easier to see
the relation of the motion path to the current frame.
That was already the case with the default colors, but
not with custom colors.

On a technical side note, the colors pre and post the current
frame were already different.
The shader multiplied the custom color by 0.25
for anything pre current frame.

Pull Request: https://projects.blender.org/blender/blender/pulls/119375
2024-04-12 15:11:51 +02:00
Falk David
355079cbb2 GPv3: Add option to disable masks in viewlayer
In GPv2 there was an option to disable masks during rendering
of a viewlayer. This wasn't implemented for GPv3 yet.

This needs to change the way the draw calls are created,
because we need to skip over drawings at render time.
So to do this, we precompute the drawing offsets,
then check if we need to skip over it and otherwise
create the draw calls.

Pull Request: https://projects.blender.org/blender/blender/pulls/120561
2024-04-12 14:44:13 +02:00
Campbell Barton
a4de136e78 Cleanup: remove redundant preferences.inputs.use_ndof
This is available via: bpy.app.build_options.input_ndof
2024-04-12 21:26:20 +10:00
Falk David
ff625b79f6 GPv3: Expose "Use Lights" option in the object data properties
Adds a `use_lights` option to the layer in RNA and
exposes the setting in the object data properties under
the layer opacity.
2024-04-12 13:19:05 +02:00
Bastien Montagne
b56457aa5e Core: ID Management: Make 'Purge' operation always recursive by default.
Inherited from previous versions of this feature, by default the Purge
operation from the Outliner would remove all unused IDs, recursively.
The same operation invoked from the File -> Clean Up main menu would by
default only delete directly unused IDs.

Now both will by default remove all (directly or indirectly) unused data.
2024-04-12 11:25:00 +02:00
Campbell Barton
cee184e97a Fix error from recent preset refactor
The recent change in [0] which added a filepath argument to pre/post
callbacks broke adding presets.

Remove the argument from operators as the the filename is sometimes
created based on values set in the pre-callback.

This mostly reverts the change, only keeping the filepath argument
for the static-method callbacks declared on the menu or panels.

[0]: 72e6191c89
2024-04-12 16:28:06 +10:00
Campbell Barton
98986c6562 Python: replace '%' with str.format for examples & templates
Use modern/preferred string formatting for user facing scripts.
2024-04-12 15:33:40 +10:00
Campbell Barton
0bb6317035 Theme: store the last loaded preset as a filepath
This is needed so we can reliably know which extension is associated
with a theme, so a theme can be refreshed on update and cleared when
uninstalled, needed to resolve !120289.
2024-04-12 13:23:09 +10:00
Campbell Barton
72e6191c89 PyAPI: include a filepath in preset pre_cb/post_cb callbacks
This is needed so the presets path can be stored in the theme,
so it's possible to keep track of the current theme.

Needed for fixing #120289.
2024-04-12 13:21:42 +10:00
Campbell Barton
d5f837a8ee Cleanup: remove redundant string formatting 2024-04-12 10:04:07 +10:00
Campbell Barton
0660fa6971 UI: remove double-quoting in report
repr() already quotes, so including quotes isn't necessary
2024-04-12 10:02:41 +10:00
Jacques Lucke
549d02637a Curves: add menu to add some primitive curves in edit mode
This adds operators to add a bezier and circle primitive in curves
edit mode. The operators support the same settings as in the
legacy curve edit mode. The `shift+A` shortcut is added as well.

Pull Request: https://projects.blender.org/blender/blender/pulls/120513
2024-04-11 15:11:02 +02:00
Pratik Borhade
a656ce5c16 UI: Remove active vertex theme option for 3d view and UV editor
`editmesh_active` theme is used to for active mesh element.
`vertex_active` is unused here (only used in graph editor) so remove it
from the 3d viewport and UV editor theme.

Found this in #119640

Pull Request: https://projects.blender.org/blender/blender/pulls/119649
2024-04-11 13:19:06 +02:00
Lukas Tönne
483802b62d GPv3: Cleanup: Rename keymap functions to gpencil_legacy
This should reduce the confusion a bit when more GPv3 keymaps are added
using the `grease_pencil` prefix.

Pull Request: https://projects.blender.org/blender/blender/pulls/120506
2024-04-11 12:56:17 +02:00
Christoph Lendenfeld
8ea7d44e62 Fix #120470: Keying Set export fails in python
Caused by 30b0c5b225
That commit removed `use_insertkey_xyz_to_rgb` but
I didn't see the use of that in the python script.
Fixed by removing the usage of that property from the python script as well.

Pull Request: https://projects.blender.org/blender/blender/pulls/120509
2024-04-11 11:15:28 +02:00
Campbell Barton
182f1746b7 Theme: reset the theme to the default when removing a preset
It's strange to keep the theme displayed after its removal.
2024-04-11 17:44:27 +10:00
Campbell Barton
3a30e80f60 UI: don't translate user defined names 2024-04-11 17:43:36 +10:00
Lukas Tönne
658a9ac3a9 GPv3: Initial sculpt mode
Adds an (empty) sculpt mode for Grease Pencil v3 objects.

The object `SCULPT_GPENCIL` mode is re-used for Grease Pencil object
types. A `SCULPT_GREASE_PENCIL` context mode has been added, which is
specific to grease pencil objects. This is necessary for polling tools
and keymaps.

Pull Request: https://projects.blender.org/blender/blender/pulls/119338
2024-04-11 09:39:48 +02:00
Harley Acheson
7642a5452a UI: Consistent Cursor Color
Change Console and text editor cursor color to match that of
widget_text_cursor. Console cursor is currently red which we normally
use for error conditions.

Pull Request: https://projects.blender.org/blender/blender/pulls/120491
2024-04-11 04:00:14 +02:00
Julian Eisel
335d379667 UI: Indicate type of search in keymap search button
Shows either "Search by Name" or "Search by Key-Binding" as placeholder text in
the search button. This makes it more clear what's expected to be entered here.

Personally I often did/do the mistake of searching for the wrong thing in this
button, because I forgot that I changed it earlier. The placeholder text can
avoid this mistake.

Pull Request: https://projects.blender.org/blender/blender/pulls/113681
2024-04-10 16:36:58 +02:00
Hans Goudey
86bde1b58b Cleanup: Make format 2024-04-10 08:01:58 -04:00
Pratik Borhade
5bc033b4d7 UI: Add Rename operator in bone collection context menu
Operator to rename tree view item already exists: `UI_OT_view_item_rename`
Add this in context menu as discussed in !120003

Pull Request: https://projects.blender.org/blender/blender/pulls/120086
2024-04-10 13:09:32 +02:00
Jacques Lucke
01ee34ebd1 Curves: add operator to set bezier handle types
This adds an operator to set the handle types of bezier curves. It also
adds the same shortcut that is available in the legacy curve edit mode.

Pull Request: https://projects.blender.org/blender/blender/pulls/120426
2024-04-10 13:08:50 +02:00
Campbell Barton
1fb36c4f5e Cleanup: avoid redundant string formatting 2024-04-10 14:48:56 +10:00
Campbell Barton
16bc74edac Cleanup: remove type hints & f-strings from core scripts
Follow conventions for core scripts.
2024-04-10 12:37:16 +10:00
Campbell Barton
74a65d77cc Cleanup: spelling in comments 2024-04-10 12:28:33 +10:00
Campbell Barton
35011e9c4e Fix error accessing the add-on install "target" without a context
Introspecting the add-on install operator from operator cheat-sheet
raised a Python exception.
2024-04-10 11:54:54 +10:00
Harley Acheson
d2d810f11a UI: Splash Screen Import Changes
Removal of "What's New" button, addition of a section divider, and many
very small changes to the text, some reordering of items.

Pull Request: https://projects.blender.org/blender/blender/pulls/118224
2024-04-09 22:57:06 +02:00
Jesse Yurkovich
509a7870c3 Collection Exporters: Enable file exporters to be specified on Collections
This implements the ability to have file exporters added and configured on Collections.

Exporting is reachable from several locations:
- Individually on each exporter configuration: The `Export` button in each panel header
- For all exporters on the collection: The `Export All` button in the main panel interface
- For all exporters on all collections in the scene: The `File`->`Export All Collections` button

Visibility of which collections currently have exporters configured is done by ways of an icon added to the Collection row in the Outliner.

Adding multiple exporters for the same file type is permitted. The user is free to setup several exports of the same format but with different file locations or settings etc.

Notes:
Only USD and Wavefront OBJ are enabled for the initial commit. Additional formats, including those implemented in Python will be added as separate commits after this.

Ref #115690
Pull Request: https://projects.blender.org/blender/blender/pulls/116646
2024-04-08 22:10:39 +02:00
Sybren A. Stüvel
26c5881cc2 Anim: change experimental flag label & linked issue on Gitea
Changed the experimental flag label from "Animation: Project Baklava" to
"New Animation System" to be more self-explanatory. Also I changed the
associated item on project.blender.org to #120406, which tracks the work
that is still to be done.
2024-04-08 17:34:11 +02:00
Sybren A. Stüvel
a5d0ae9644 Anim: Add a simple GUI for assigning Animation data-blocks
Add a 'Baklava' panel to the 3D Viewport side-panel. It's a
developer-GUI, not meant for animators (or for inclusion beyond the
experimental feature, for that matter).

Note that this GUI shows all layer properties, even though the data
model is currently limited to a single layer. This means that things
like 'influence' and 'mix mode' are irrelevant, as there is no
underlying layer to mix with.

Also key insertion and animation evaluation are not implemented yet (but
will be in upcoming commits).

For more info, see #113594.

Pull Request: https://projects.blender.org/blender/blender/pulls/118677
2024-04-08 12:53:32 +02:00
Sybren A. Stüvel
38878b4ac2 Anim: add Animation data-block management functions
Add code (including RNA wrappers) for:

- Creating, removing, and accessing `Animation` data-blocks.
- Creating and removing layers, strips, and bindings on those `Animation`
  data-blocks.
- Accessing those via RNA.

Note that this does not include assignment to any animated data-block,
so it is of limited practical use.

For more info, see #113594.

Pull Request: https://projects.blender.org/blender/blender/pulls/118677
2024-04-08 12:53:32 +02:00
Philipp Oeser
0b30cb1929 UI: Clarify Playback "Play In" option
The "Play In" > "Properties Editor" option is not only updating Property
Editors but also the sidebars of other editors (such as the 3DView).

This caused a bit of confusion since we also have "Play In" > "3D
Viewport" (which only updates the 3DView main region but not the
sidebar)

So now call the option "Properties and Sidebars" in the UI ("Editor" has
been stripped to fit the text - but also since the editor is usually
only called "Properties" e.g. in the editor dropdown).

Came up in #120012

Pull Request: https://projects.blender.org/blender/blender/pulls/120305
2024-04-05 18:17:41 +02:00
Jacques Lucke
548df007a5 Curves: add subdivide curves edit mode operator 2024-04-05 13:50:09 +02:00
Jacques Lucke
6c25c66194 Curves: add switch direction edit mode operator 2024-04-05 13:23:22 +02:00
Jacques Lucke
23265a2b6d Curves: add edit mode operator to convert curve types
This operator shares the underlying code with the corresponding node.

Pull Request: https://projects.blender.org/blender/blender/pulls/120269
2024-04-04 21:04:51 +02:00
Jacques Lucke
d315a6a793 Curves: add toggle cyclic edit mode operator
This operator also exists in legacy edit mode and allows changing
whether the curve is cyclic. If all curves are non-cyclic, the attribute
is removed because it does not contain any useful information.

Pull Request: https://projects.blender.org/blender/blender/pulls/120266
2024-04-04 19:39:14 +02:00
Campbell Barton
6956a609c9 Cleanup: remove underscore prefix since the argument is used 2024-04-04 20:08:00 +11:00
Jacques Lucke
a6d6787d26 Cleanup: make format 2024-04-03 18:24:54 +02:00
Prikshit singh
20e07f0102 Fix #119197: missing tool settings in sidebar for curves density brush
The settings used to be shown for the add brush, but not for the density brush.
Now they are shown for both.

Pull Request: https://projects.blender.org/blender/blender/pulls/120090
2024-04-03 16:38:47 +02:00
Falk David
8512a608a4 GPv3: Onion Skinning
Implements the GPv2 onion skinning functionality.

There are no functional changes exept for the `use_ghosts_always`
option, which has been removed. This was used to show onion
skinning in the final render.

Pull Request: https://projects.blender.org/blender/blender/pulls/119792
2024-04-03 15:34:40 +02:00
Campbell Barton
ae950451ea Cleanup: remove redundant f-string use 2024-04-01 16:51:32 +11:00
Lukas Tönne
d7c718dfd4 GPv3: Texture offset modifier
Port of the GPv2 texture modifier for transforming UVs of stroke points.

Pull Request: https://projects.blender.org/blender/blender/pulls/119050
2024-03-29 21:42:30 +01:00
Falk David
f3505f12d2 GPv3: Add brush falloff panel to tint tool
This was talked about in
https://projects.blender.org/blender/blender/pulls/119323.
Adds back the panel so that the falloff can be changed again.
2024-03-29 14:41:35 +01:00
YimingWu
127f879be9 GPv3: Tint tool
This implements the tint tool from GPv2.

Pull Request: https://projects.blender.org/blender/blender/pulls/119323
2024-03-29 12:43:15 +01:00
Hans Goudey
e6808cd558 Cleanup: Make format 2024-03-28 20:55:23 -04:00
Jesse Yurkovich
af7a34dee7 ImportHelper: Common methods for FileHandler drag and drop support
Provide common implementations for two operations that all Python
FileHandlers will typically use.

- `poll_file_object_drop` To be used inside the FileHandler `poll_drop`
   callback
- `invoke_popup` To be used inside the Operator `invoke` callback

The above code closely mirrors what is currently done inside the
existing Blender c++ FileHandlers.

Pull Request: https://projects.blender.org/blender/blender/pulls/119774
2024-03-29 01:22:51 +01:00