Is it also possible to make them "hostable" by walls or slabs?
By which I mean, if you save an object as a light, it should be possible when using that light to allow it to be hosted by a slab or a wall in much the same way that windows and doors are hosted by walls.
So for a slab, like when you have pot lights or recessed ceiling lights, they attach to the selected slab and remain parametrically hosted by it, it allows you to select which side of the slab the light is referenced to (whether it's a ceiling light or a floor lamp/light) and when the slab is changed positionally, (like if your slabs are referenced to the Floor height level and you change your storey heights and the slabs adjust accordingly. As it stands now you have to go floor by floor and re-adjust all the lights. to the correct level along with any boolean operators in the case of recessed lights. Not the worst thing in the world to have to do, but a pain in the a*s when you have a lot of floors)
I've never understood why even the standard library lights (particularly ceiling-based lamps and lights which would otherwise make no sense just hanging in mid-air) don't have this function and capability as native.
Same deal with walls. You have walls hosting the type of lights which can be hosted by walls and which would only be relevant to the wall and when you change the wall position, the light goes along with it.
Seems like a no-brainer to me (that should have existed all along) and if not, why not implement the capability then for custom-made lights.
(*P.S. the Hosting function would also naturally include the necessary boolean capability ala "WALLHOLE" for custom-made windows, to make sure the light cuts the slab or wall correctly and makes the required opening that's likewise parametric to the light's shape and position.
Also, a function or parameter to allow the light to use an IES file information would be nice, but I would settle for everything else, before this)