Implement Multi-Object Properties Editing #54987

Closed
opened 5 years ago by WilliamReynish · 55 comments

See parent task.

To sum up, this means

  • Invert the behaviour of the Alt key to make the Properties affect multiple objects. (No modifier = affect all selected. Hold Alt = Only active)
  • We already have a visual affordance when holding Alt to manipulate properties for multiple objects: Screenshot 2019-04-29 at 17.14.01.png
    We should just show this while hovering (or even always) for all properties where this is supported.

That is actually all that's needed.

Extracurricular:

  • Implement relative value editing, using a symbol. Maybe =? Changing values to be three less could by typed as "=-3"
See parent task. To sum up, this means - Invert the behaviour of the Alt key to make the Properties affect multiple objects. (No modifier = affect all selected. Hold Alt = Only active) - We already have a visual affordance when holding Alt to manipulate properties for multiple objects: ![Screenshot 2019-04-29 at 17.14.01.png](https://archive.blender.org/developer/F6992109/Screenshot_2019-04-29_at_17.14.01.png) We should just show this while hovering (or even always) for all properties where this is supported. That is actually all that's needed. Extracurricular: - Implement relative value editing, using a symbol. Maybe =? Changing values to be three less could by typed as "=-3"
Sergey was assigned by WilliamReynish 5 years ago
Poster

Added subscribers: @WilliamReynish, @Sergey

Added subscribers: @WilliamReynish, @Sergey
Collaborator

#54955 was marked as duplicate of this issue

#54955 was marked as duplicate of this issue
Collaborator

#38560 was marked as duplicate of this issue

#38560 was marked as duplicate of this issue
Collaborator

#44666 was marked as duplicate of this issue

#44666 was marked as duplicate of this issue
Collaborator

#54982 was marked as duplicate of this issue

#54982 was marked as duplicate of this issue

Added subscriber: @Okavango

Added subscriber: @Okavango

If useful, i left a comment in the task that is now tagged as 'resolved'. Perhaps it helps.

https:*developer.blender.org/T54955#500514

If useful, i left a comment in the task that is now tagged as 'resolved'. Perhaps it helps. [https:*developer.blender.org/T54955#500514 ](https:*developer.blender.org/T54955#500514)

Added subscriber: @Rusculleda

Added subscriber: @Rusculleda

Hi! I'd like to point out that the § symbol is absent from many popular keyboard layouts so, if possible, I think it would be better if some other more universally accessible symbol was used. Maybe "+=" like some softwares use?

Hi! I'd like to point out that the § symbol is absent from many popular keyboard layouts so, if possible, I think it would be better if some other more universally accessible symbol was used. Maybe "+=" like some softwares use?

Added subscriber: @DuarteRamos

Added subscriber: @DuarteRamos

In #54987#501541, @Rusculleda wrote:
Hi! I'd like to point out that the § symbol is absent from many popular keyboard layouts

I second that, my (Portuguese) keyboard doesn't have the symbol at all.

I'd vote to either type = or @ or perhaps both if possible. Bonus points for allowing simple expressions like =*2 or =*2/3

> In #54987#501541, @Rusculleda wrote: > Hi! I'd like to point out that the § symbol is absent from many popular keyboard layouts I second that, my (Portuguese) keyboard doesn't have the symbol at all. I'd vote to either type `=` or `@` or perhaps both if possible. Bonus points for allowing simple expressions like `=*2` or `=*2/3`
Poster

For sure, we need to keep that in mind

For sure, we need to keep that in mind
L0Lock commented 5 years ago

Added subscriber: @L0Lock

Added subscriber: @L0Lock
L0Lock commented 5 years ago

On several AZERTY keyboards, @ needs to hold Alt to be done, and this is not well handled on some softwares.

On several AZERTY keyboards, @ needs to hold Alt to be done, and this is not well handled on some softwares.

Added subscriber: @DanPool

Added subscriber: @DanPool

Added subscriber: @0o00o0oo

Added subscriber: @0o00o0oo
brecht commented 4 years ago
Owner

Added subscribers: @brecht, @ideasman42

Added subscribers: @brecht, @ideasman42

Added subscriber: @thornydre

Added subscriber: @thornydre

Hey, maybe I missed a discussion about that already, but would it be possible to have something like Rusculleda proposed ? It makes it work more like a Pythonic way and makes more sense ? "+=2" is probably less confusing than "++2" right ?

And I have another question, removing the use of ALT to edit multiple objects properties, does it remove the ability to edit just the active object properties ?

Hey, maybe I missed a discussion about that already, but would it be possible to have something like Rusculleda proposed ? It makes it work more like a Pythonic way and makes more sense ? "+=2" is probably less confusing than "++2" right ? And I have another question, removing the use of ALT to edit multiple objects properties, does it remove the ability to edit just the active object properties ?
Poster

Almost always, if you have more things selected, it's because you want to affect those things. If you select three items and hit Delete, those three items get deleted. It's not just the last one you clicked on. This is normal and expected, and why we even have a state of 'selected'. You want your changes to apply to those things.

If it's really needed to affect only one of the selected items, we could flip the Alt key, so Alt-clicking affects only the active object, but I don't even think it's necessary.

Almost always, if you have more things selected, it's because you want to affect those things. If you select three items and hit Delete, those three items get deleted. It's not just the last one you clicked on. This is normal and expected, and why we even have a state of 'selected'. You want your changes to apply to those things. If it's really needed to affect only one of the selected items, we could flip the Alt key, so Alt-clicking affects only the active object, but I don't even think it's necessary.

Added subscriber: @JonathanLampel-4

Added subscriber: @JonathanLampel-4

Changing values to be three less could by typed as "=-3"

I think Lucas is right that += and -= make the most sense here, since it's the way to do it in python. Even if users are not programmers, =-3 reads like it is literally setting things to -3, while -=3 gives a clue that something else is happening.

> Changing values to be three less could by typed as "=-3" I think Lucas is right that += and -= make the most sense here, since it's the way to do it in python. Even if users are not programmers, =-3 reads like it is literally setting things to -3, while -=3 gives a clue that something else is happening.
Poster

Right, I changed this proposal to use = a while ago.

Right, I changed this proposal to use = a while ago.

Indeed, I think that's a great change. I was additionally suggesting that the equals comes after the operation sign instead of before so that it fits with convention. '+=' and '=+' have different meanings. But either way I'm super happy with multi-object editing being easier!

Indeed, I think that's a great change. I was additionally suggesting that the equals comes after the operation sign instead of before so that it fits with convention. '+=' and '=+' have different meanings. But either way I'm super happy with multi-object editing being easier!
Sergey was unassigned by WilliamReynish 4 years ago
brecht commented 4 years ago
Owner

Added subscribers: @PawelLyczkowski-1, @rulkens, @koilz, @JonathanWilliamson, @BartekMoniewski, @Tene, @eugenio_jr, @billrey, @zeauro, @BrendonMurphy, @dairin0d, @Lapineige, @Januz, @mont29, @bliblubli, @michaelknubben, @liquidape, @JulianEisel

Added subscribers: @PawelLyczkowski-1, @rulkens, @koilz, @JonathanWilliamson, @BartekMoniewski, @Tene, @eugenio_jr, @billrey, @zeauro, @BrendonMurphy, @dairin0d, @Lapineige, @Januz, @mont29, @bliblubli, @michaelknubben, @liquidape, @JulianEisel
brecht commented 4 years ago
Owner

Added subscribers: @00Ghz, @AndrewPrice

Added subscribers: @00Ghz, @AndrewPrice
JacquesLucke was assigned by WilliamReynish 4 years ago

Added subscriber: @SteffenD

Added subscriber: @SteffenD

Added subscriber: @DanielPaul

Added subscriber: @DanielPaul
GeRo commented 4 years ago

Added subscriber: @GeRo

Added subscriber: @GeRo

Added subscriber: @A.Lex_3D

Added subscriber: @A.Lex_3D

Added subscriber: @TakeshiFunahashi

Added subscriber: @TakeshiFunahashi

About Custom property . and UI panell generate by python,, is there chance to enhance it work so?

Eg,, now I have many custom properties slider as Panell, to animate rig bone , and shape keys. to animate easy, there are many case we hope to change value, with multi selection. It is not so difficult, to make list for all properties of panell, then edit values by python code. or set keys on current frame about each properties group .

but if blender offer more flexible panell UI for custom prop which user can multi select, with modifier keys,
and bpy offer "selected ID list (or dictionary) " for custom properties, maybe add on vendor can enhance function which only work for currently selected properties

About Custom property . and UI panell generate by python,, is there chance to enhance it work so? Eg,, now I have many custom properties slider as Panell, to animate rig bone , and shape keys. to animate easy, there are many case we hope to change value, with multi selection. It is not so difficult, to make list for all properties of panell, then edit values by python code. or set keys on current frame about each properties group . but if blender offer more flexible panell UI for custom prop which user can multi select, with modifier keys, and bpy offer "selected ID list (or dictionary) " for custom properties, maybe add on vendor can enhance function which only work for currently selected properties
Harley commented 4 years ago
Collaborator

Added subscriber: @Harley

Added subscriber: @Harley
Harley commented 4 years ago
Collaborator

How we know which Properties support multi-object editing? I didn't notice any flags indicating so or not

Currently it just attempts to alter all selected if alt was held down and might just silently fail doing that and just alter the active object.

But to invert this behavior and indicate the possibility before the attempt we have to know ahead of time...

How we know which Properties support multi-object editing? I didn't notice any flags indicating so or not Currently it just *attempts* to alter all selected if alt was held down and might just silently fail doing that and just alter the active object. But to invert this behavior and indicate the possibility before the attempt we have to know ahead of time...
Harley commented 4 years ago
Collaborator

This comment was removed by @Harley

*This comment was removed by @Harley*
Poster

@Harley Correct. It needs to check in a different way I think. @JulianEisel any thoughts on how this could/should be done?

@Harley Correct. It needs to check in a different way I think. @JulianEisel any thoughts on how this could/should be done?
Harley commented 4 years ago
Collaborator

Every time I look through this it just makes it obvious that someone else (smarter) would have to do it. LOL.

Every time I look through this it just makes it obvious that someone else (smarter) would have to do it. LOL.

Added subscriber: @AbidMaqbool

Added subscriber: @AbidMaqbool
JacquesLucke was unassigned by AbidMaqbool 4 years ago
AbidMaqbool self-assigned this 4 years ago

Added subscriber: @JacquesLucke

Added subscriber: @JacquesLucke

Implement this patch here Implementing Multi Object Properties Editing

Please see the patch if applicable...

Implement this patch here [Implementing Multi Object Properties Editing ](https://developer.blender.org/D4948) Please see the patch if applicable...

Added subscriber: @OliverVillar

Added subscriber: @OliverVillar
Harley commented 4 years ago
Collaborator

To help in experimenting with the design, here is a template that can be mocked up with how you might like indication to work. Three rows, showing a single object selection, multiple object selection, and multiple while holding ALT to indicate intention to edit only the active object. For each there are two properties, one that is capable of editing multiple and the other not. And for each showing regular, hover, and active states.

MultiEditTemplate.png

To help in experimenting with the design, here is a template that can be mocked up with how you might like indication to work. Three rows, showing a single object selection, multiple object selection, and multiple while holding ALT to indicate intention to edit only the active object. For each there are two properties, one that is capable of editing multiple and the other not. And for each showing regular, hover, and active states. ![MultiEditTemplate.png](https://archive.blender.org/developer/F7605874/MultiEditTemplate.png)

Added subscriber: @FrancoisGosselin

Added subscriber: @FrancoisGosselin

Hello, Here are my two cents on the single/multi-objects Property Editting.

first io all I belive Blender should use the pivot point and Transform orientation choosen for the moving/rotating/scale
image.png image.png

Then add the option Relative or absolute so it is clear to everyone using this,
image.png

Do not ust AlT shortcut, it is realy confusing for everyone.
We have to look on How to move multiple objects in blender it is very confusing.

Cheers.

Hello, Here are my two cents on the single/multi-objects Property Editting. first io all I belive Blender should use the pivot point and Transform orientation choosen for the moving/rotating/scale ![image.png](https://archive.blender.org/developer/F7615229/image.png) ![image.png](https://archive.blender.org/developer/F7615243/image.png) Then add the option Relative or absolute so it is clear to everyone using this, ![image.png](https://archive.blender.org/developer/F7615237/image.png) Do not ust AlT shortcut, it is realy confusing for everyone. We have to look on How to move multiple objects in blender it is very confusing. Cheers.

I don't know if this is within the scope of this task, but currently, changing the "Blend Mode" under "Settings" for materials in Eevee doesn't work for multiple objects.

I don't know if this is within the scope of this task, but currently, changing the "Blend Mode" under "Settings" for materials in Eevee doesn't work for multiple objects.
Yashar commented 4 years ago

Added subscriber: @Yashar

Added subscriber: @Yashar
Yashar commented 4 years ago

we can use spinner drag or increment for relative value change and enter value by keyboard for absolute value input

we can use spinner drag or increment for relative value change and enter value by keyboard for absolute value input

Added subscriber: @Josephbburg

Added subscriber: @Josephbburg

It doesn't look like anyone has pointed this out yet, but "+=" and "-+" will be familiar to Maya users, since Maya uses this syntax for its number entry (C-like). Also, Maya allows the ability to select and edit multiple number entry boxes at a time, even with copy and paste. One of the few features I like in Maya. Blender does this a little with the multiple-drag, but it's kinda tricky to get this to work consistently, since you have to be precise with the mouse movement.

It doesn't look like anyone has pointed this out yet, but "+=" and "-+" will be familiar to Maya users, since Maya uses this syntax for its number entry (C-like). Also, Maya allows the ability to select and edit multiple number entry boxes at a time, even with copy and paste. One of the few features I like in Maya. Blender does this a little with the multiple-drag, but it's kinda tricky to get this to work consistently, since you have to be precise with the mouse movement.

Added subscriber: @testure

Added subscriber: @testure

Added subscriber: @nokipaike

Added subscriber: @nokipaike

I can't wait for this.
Multi-Object Properties Editing speeds users' work significantly,
so I wish it was always active everywhere,
Everything that is selected is edited in one operation. ❤

I can't wait for this. Multi-Object Properties Editing speeds users' work significantly, so I wish it was always active everywhere, Everything that is selected is edited in one operation. ❤
Poster

Added subscriber: @tintwotin

Added subscriber: @tintwotin
Collaborator

Added subscriber: @JulienKaspar

Added subscriber: @JulienKaspar
Poster

Closed as duplicate of #54862

Closed as duplicate of #54862
WilliamReynish closed this issue 3 years ago
Sign in to join this conversation.
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/Collada
Interest/Compositing
Interest/Core
Interest/Cycles
Interest/Dependency Graph
Interest/Development Management
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/Modeling
Interest/Modifiers
Interest/Motion Tracking
Interest/Nodes & Physics
Interest/Overrides
Interest/Performance
Interest/Performance
Interest/Physics
Interest/Pipeline, Assets & I/O
Interest/Platforms, Builds, Tests & Devices
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
legacy module/Animation & Rigging
legacy module/Core
legacy module/Development Management
legacy module/Eevee & Viewport
legacy module/Grease Pencil
legacy module/Modeling
legacy module/Nodes & Physics
legacy module/Pipeline, Assets & IO
legacy module/Platforms, Builds, Tests & Devices
legacy module/Python API
legacy module/Rendering & Cycles
legacy module/Sculpt, Paint & Texture
legacy module/Triaging
legacy module/User Interface
legacy module/VFX & Video
legacy project/1.0.0-beta.2
legacy project/Asset Browser (Archived)
legacy project/BF Blender: 2.8
legacy project/BF Blender: After Release
legacy project/BF Blender: Next
legacy project/BF Blender: Regressions
legacy project/BF Blender: Unconfirmed
legacy project/Blender 2.70
legacy project/Code Quest
legacy project/Datablocks and Libraries
legacy project/Eevee
legacy project/Game Animation
legacy project/Game Audio
legacy project/Game Data Conversion
legacy project/Game Engine
legacy project/Game Logic
legacy project/Game Physics
legacy project/Game Python
legacy project/Game Rendering
legacy project/Game UI
legacy project/GPU / Viewport
legacy project/GSoC
legacy project/Infrastructure: Websites
legacy project/LibOverrides - Usability and UX
legacy project/Milestone 1: Basic, Local Asset Browser
legacy project/Nodes
legacy project/OpenGL Error
legacy project/Papercut
legacy project/Pose Library Basics
legacy project/Retrospective
legacy project/Tracker Curfew
legacy project/Wintab High Frequency
Meta/Good First Issue
Meta/Papercut
migration/requires-manual-verification
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 & Devices
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 Information 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
25 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#54987
Loading…
There is no content yet.