EnTerr wrote:Because not every component has a .dialog property.
Only Scene nodes have that property.
And since saw elsewhere we should use only one and only scene, that means there is only one such node per RSG.
I get it now. I was confusing components with Scenes. Yes, there's only one Scene generally, so that's where you need to set the dialog.
I hadn't come across this issue myself because most of my dialogs are "custom" components, not real Dialog components, but they behave as modal dialogs. I show/hide them instead of setting scene.dialog. The only time I use actual Dialog components are in my main Scene, so m.top.dialog works.
So yes, EnTerr's solution should get the Scene m.top, or just pass it in as a component interface field -- or, since there's only one Scene, set m.global.scene = m.top