Can we have the properties of an object when we click on it from the objects list ? If the problem is that we can't when there is many, maybe allow when there is only one ?
We have that if we click on the object in the scene, would be pleas to have it in the object list as some object can be locked to not be move and so not selectionnable ?
Gif exemple:

Same event as when we click on an object from the scene
An object becomes an instance on the scene so you are clicking on an instance and seeing its properties. I guess if there was just one then it could be done, but it could also be very confusing as if there are many you might want different behaviour.
To access a locked instance you can open the instance list and select it from there π€
(Sorry for the closing, I misread your message).
A potential solution to this would be to have all instances selected.
@blurymind Is the one that implemented the selection a while ago, he might want to take a look
Though this is a feature request, so I'll close this after a bit of time :)
Ok I get it @zatsme didn't know about that π
Sure thanks @4ian ! π
@Jeje2201 when you select an object from a list you expect to see the properties of the object there. When you select an instance of that object- you see the properties of the instance there.
This creates a couple of questions.
This is somewhat related to:
https://github.com/4ian/GDevelop/issues/918
I proposed to show something there when no instances are selected. Here you want a similar thing - to show object properties there when objects get selected
if there are multiple instances and we select them all- we would really be just editing the first in the selection array (if memory serves me right)
I thought if you select multiple then any change in the instance editor applies to all selected, or am I losing it πππ
if there are multiple instances and we select them all- we would really be just editing the first in the selection array (if memory serves me right) - wouldnt the user expect to be applying changes to them all? Something not yet supported.
This should be supported. If something is not applying to all instances, then it should not be shown when multiple instances are selected.
I thought if you select multiple then any change in the instance editor applies to all selected, or am I losing it πππ
Yes this is the case
I proposed to show something there when no instances are selected. Here you want a similar thing - to show object properties there when objects get selected
No, here we want to select all instances of the object when it's selected.
What happens if there are no instances of that object in the scene? What do we show there?
We select everything, i.e: nothing.
I proposed to show something there when no instances are selected. Here you want a similar thing - to show object properties there when objects get selected
No, here we want to select all instances of the object when it's selected.
I'm sorry but I don't understand what you two are trying to say here at all. :smile:
@blurymind , do you mean that you want to show the object variables analogue to to the instance variables in the left panel if no instance is selected?
@Wend1go thing is that I am not sure what the properties panel should show when an object is selected.
It could be the object variables, as well as its behaviours
right now it shows nothing
The original request here was for all instances to be selected in the scene window when an object is selected in the objects list. That way all the selected instances properties can be changes en-mass. If there are no instances then nothing is selected and the properties editor could show object properties, or not.
My suggestion is this:-
1) Select an instance from the scene - works as now - edits instance properties.
2) Select Multiple instances - works as now - edits all selected instances properties.
3) Select an object in object list - select all instances in scene and works as (2)
4) object properties stay as they are, double click or menu to open.
As to whether anything is shown in panel if nothing is selected, my suggestion is to hide the panel and show more scene real estate. π€
I could give it a try then - select all instances :)
Yeah the suggestion of zatsme makes sense to me :)
I don't really like that to be honest. Selecting an object in the object list shouldn't also select all instances in the scene. Most of the time you probably don't want to have everything selected when clicking on an object which results in an extra click into a blanc area to deselect the instances again.
How about a new context menu entry for instances in the scene "select all instances of that object" (or better something shorter).
Having object variables and behaviors displayed in the properties panel when selecting an object makes more sense to me and would indeed be a time saver.
@Wend1go adding it as a command there makes more sense to me too.. but what will we show in the properties panel when no instances are selected, but and object is?
I'd vote for a combination of behavior settings and object variables with a divider in the middle.
@4ian what do you think? Selecting all instances can still be implemented as a context menu command
I'm not convinced with showing object variables and behavior settings. In this case, you had to show everything: object properties, behavior settings AND object variables.
By the way, a Object Variable tab should be added in the object editor for consistency (the object editor should show everything that compose an object: properties, behaviors, variables).
I think this is relatively complex, because the panel on the left is tiny (in terms of width) compared to an object editor. This may work for simple objects (like TiledSprite), but what about Sprite?
Also, I don't know if this could create confusion for users. If I click on an instance, the object is selected on the right but I see the instance properties but If I click on an object, the object is selected but I see the object properties this time.
So internally we have the same state, yet we display different things. Not a big fan of such inconsistency.
If it has to be done, we must then remove the automatic selection of objects on the right when instances are clicked. But we can't have both.
You can also say that we have a stripped version of the object properties, with a button to "edit more" and open the full editor... but this button, we already have it :)
It's just that things are weird because we're not selecting instances when clicking on an object, while we do the reverse operation (when you click on an instance, we're selecting the object in the list).
So my call is:
It's possible that's it's enough and we'll never have the conversation again because everyone will be happy with this. Because:
This is best imo as its adding a functionality that will be useful, and everything else is already in the ide with a few clicks π
Let's start by this, it's the "easiest" improvement anyway. We can iterate from there. :)
I liked the way GD4 showed the properties, behaviors and stuff but I can live with the status quo.
But I still don't like the idea or every instance of an object getting selected automatically just by clicking on an object in the objects list.
Imagine you have an instance of object "Player" selected and are tuning its fire rate property. Now you scroll to the other end of the scene and add a bunch of additional instance of "Enemy" in order to test how the adjusted fire rate value works on them. Each time you place an "Enemy" instance, you have all your enemy instances selected and need to scroll back to the player in order to select it again.
If you really want to add this feature, please add an option to deactivate it since it can become really annoying depending on what you are currently doing in the scene.
What speaks against an option in the context menu to select all instances if you right click on an instance in the scene?
Ok, how about we add the option to edit all instances in the menu and change the function of left click the object to center the view on the first object instance. That way if there is only one instance its a quick way to navigate the scene π€
The function to center the camera on an instance is already present in the instances panel. Maybe we could add a search field / filter for object instances with the possibility to select multiple/all instances of an object. That panel is currently pretty rudimentary. Would make navigation between instances a lot easier.
Each time you place an "Enemy" instance, you have all your enemy instances selected and need to scroll back to the player in order to select it again.
That would not happen, the "select all instances" would only be when an object get selected in the list, not when you click on create an instance?
What speaks against an option in the context menu to select all instances if you right click on an instance in the scene?
Nothing, it's just that the problem that was initially reported in this issue is that clicking on an object is selecting it but not showing anything in the left panel (which is fine to me), and it was suggested that it can instead select all instances.
But a context menu option is fine too.
Maybe we could add a search field / filter for object instances with the possibility to select multiple/all instances of an object. That panel is currently pretty rudimentary. Would make navigation between instances a lot easier.
Yeah agree about this, there could a search field like in other lists on the bottom, and multiselection.
That would not happen, the "select all instances" would only be when an object get selected in the list, not when you click on create an instance?
I always create instances via drag&drop from the object list (which means the object gets selected along the way). Didn't even know that there is a button for that. ^^
I always create instances via drag&drop from the object list (which means the object gets selected along the way). Didn't even know that there is a button for that. ^^
You're right though that drag'n'dropping make us run the risk of selecting the object and so all the instances.
It's my opinion but for me the object list is for create and place object and set it with right click.
If you want do something with instances you will need improve instance panel.
The more logical place for add a button like "select all similar instance on scene" is on right click in instance list.
And we can improve the instance list with other things like searchbar and possibility to select multiple instances with SHIFT+LMB.
We can add too "center on selection" button in submenu in this panel. (And we need dezoom for display all the instance of object on scene)
In the instance list maybe we can add a counter of instances dynamic with the searchbar.
About left panel properties, the panel is too small for include all the properties, behaviors, variables, i prefer keeping the actual system.
But we can improve it too !
Actually when multiples instance of objects is select on scene the name is replace by (Multiple values), the other fields don't have this. We need it for differenciate the multiples values for positions , Angles, Z Order, Layer, Width, Height.
I'm gone in snowball effect sorry π
I think clicking on an object from the list should show something different than clicking an instance of an object. If it does - it will help make it easier to discover the difference between an object and an object instance.
For example if we ever want to have context sensitive tools - depending on the type of object selected - it would make sense to add them there.
An idea for a level editing tools for objects:
Some tools/ui can be available only for specific object types
Most helpful comment
You can also say that we have a stripped version of the object properties, with a button to "edit more" and open the full editor... but this button, we already have it :)
It's just that things are weird because we're not selecting instances when clicking on an object, while we do the reverse operation (when you click on an instance, we're selecting the object in the list).
So my call is:
It's possible that's it's enough and we'll never have the conversation again because everyone will be happy with this. Because: