UI: Add Placement Settings to the Options popover #107854
No reviewers
Labels
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
No due date set.
Depends on
Reference: blender/blender#107854
Loading…
Reference in New Issue
No description provided.
Delete Branch "mano-wii/blender:snap_menu_placement"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Since a generic snap cursor was implemented (which can be used by Tools and by DragDrop), the Placement Settings are no longer properties of the "VIEW3D_OT_interactive_add" operator.
They now are part of the
ToolSettings
and can be used for:This makes the interface confusing, as the user doesn't know where to edit the Placement Settings for Drag and Drop.
The solution proposed in this PR is to add the Placement Settings to the Options popover (top right hand corner).
In general moving to a tool setting seems fine:
2b07fbfdeb
tof3fb28a46c
UI: move Placement Settings to snap menuto UI: move Placement Settings to the Options popoverPlacement Settings have been moved to the "Options" popover.
The '"..." popover kept the same for now
LGTM, I'd like to get sign off from one of the other UI team though (after that the lonely
...
menu should be handled too, if not beforehand).This is just hiding useful settings.
f3fb28a46c
toa0a0fb5e61
@pablovazquez could you look into this?
To me the empty bar with the
...
button is concerning. Why should things be put into some "more"-like popover when there's plenty of space available? Seems like an odd design choice.To prioritize the #106558 fix and avoid rushing design discussions (which might not please everyone), I made a new PR (!107951) that brings part of the changes suggested here (moving the Operator properties to the
ToolSettings
struct) but doesn't change UI in a way that is perceptible to the user.It's a little weird to show the
tool_settings
properties in a tool header, but the existing API allows it and it doesn't affect what users are used to.I also renamed the
...
toOrigin & Aspect
This I like. I always wondered why Tool settings were exposed like that (ugly too), when Brushes are better defined in Tool properties. If you can make them like brushes - keep useful settings in Horizontal UI and also move them in Tool settings it's a great solution
a0a0fb5e61
toac7d94302e
UI: move Placement Settings to the Options popoverto WIP: UI: move Placement Settings to the Options popover@ -113,0 +107,4 @@
def draw_placement_options(layout, tool_settings):
col = layout.column(align=True)
col.separator()
col.label(text="Placement")
The
Transform
is center aligned, where as thePlacement
is left aligned which looks a bit off, perhaps both could be aligned left, don't think it's a blocker for this patch though.Edit:
Update:
The UI was changed in
560e9c654b
so the previous concerns no longer apply.ac7d94302e
todae0ab3fd9
The UI was edited in
560e9c654b
so this PR only proposes to move the settings currently available in the Tools options from Add primitives to the Options popover.Note in the images that these options can be accessed in 3 different places. That's why they were removed from the Tools header for adding primitives. Avoid repetition exaggeration.
Brushes are often used for sculpting or painting, so it makes sense for them to be displayed in the header.
The Placement settings are less used, so it would be nice to be relatively hidden to avoid polluting the UI.
WIP: UI: move Placement Settings to the Options popoverto UI: move Placement Settings to the Options popoverDiscoverability of these settings for the placement and measure tool seems not great like this. The panel is also the first one in the options, while I think it's less important than for example the mirroring settings.
A solution could be to duplicate the settings. Keep them in the tool settings bar for the placement and measure tool as before, and also have a Drag & Drop panel in the options as the last panel. It's not very elegant but maybe still better for users overall.
Good suggestion @brecht. Analyzing.
Currently the measure tool has no settings.
It might be a good idea to put these options in the tool as well (or leave them as they are to avoid repetition)
In the case of placement tools, we just need to prevent repeated options from appearing in the Sidebar and properties editor. But it seems feasible.
I would maybe just collapse the Drag & Drop panel by default. It doesn't strictly prevent these being shown twice when using the Placement or Measure tool, but I also don't think that's really a problem.
dae0ab3fd9
todf70d37045
UI: move Placement Settings to the Options popoverto UI: Add Placement Settings to the Options popoverI've updated the code so that the settings in the Placement Tools header are visually unchanged.
But the Placement options that appeared in these Tools have been removed in the Sidebar and in the Properties editor, since they always appear together with the Options panel.
About the "Placement" title for the panel. Personally I would not have been able to guess what these settings do in the options panel. That's why I suggested "Drag & Drop" instead.
There's no use of the term "Placement" elsewhere in the UI to make the connection as far as I can tell, and the tooltips of the properties also don't explain it.
Is there drag & drop functionality in edit mode that uses these settings? If it's only for the tools that already shows these settings I would not be needed in the options panel then.
I didn't notice the "Drag & Drop" suggestion. But it's actually a more descriptive and recognizable name than "Placement".
I made a lot of changes thinking about Drag & Drop and Measure Tool:
Snap Toggle
overToolSettings.plane_depth
option (This is what caused the confusion seen in #109454)Snap to:
option in Measure Tool settings (Default
orGeometry
)I'll do another PR for the
Prioritize 'Snap Toggle' over 'ToolSettings.plane_depth' option
change.Why are these buttons aligned to each other? We don't do that usually unless buttons are strongly related (like array values, start & end frames, etc.). So this shouldn't use alignment IMO, like for comparable UIs:
9a0a9d2c36
to90072ce451
I tried to avoid changing too much what already existed.
But, in fact, aligning is an improvement that can be applied here.
Updated the code and images.
What I meant is: why is this using
align=True
?Also, please avoid force pushing updates after review started. This overrides the patch history, making review harder. For example I have no idea what code changes you did with the latest update :) See https://wiki.blender.org/wiki/Tools/Pull_Requests#Update_a_Pull_Request.
90072ce451
to9a459d6b82
I did
--force
again, but I restored all the commits that were before the last--force
.So you can see the the latest update.
9a459d6b82
This is still an open question. This shouldn't use
align=True
IMO as it's inconsistent with similar UIs.Kind of like when I copied code from other panels in the file, I didn't realize that
align=True
was being used in a specific way.Changed to
align=False
.Updated images.
Checkout
From your project repository, check out a new branch and test the changes.