TL;DRLet the player set the colour a lamp glows in the lamp GUI without needing to specify it via a signal
- The lamp GUI would have an option that lets the player select a colour from the existing colour list. If a colour is selected, the lamp glows that colour at all times; if no colour is selected it illuminates the area at night. This control is always available, even if the lamp is not connected to any network.
- When connected to a network, the existing '[ ] Use colors' option would instead be '[ ] Take colour from network'; when this is set, the colour selection interface is blanked (just as the manual filter selection interface on a filter inserter is blanked when in 'Set filters' mode) and the lamp glows in the first colour for which it is receiving a nonzero input signal (or switches to area-illumination mode if no colours are received), just as is the current behaviour
Why ?Being able to dynamically change the colour of a lamp is nice, but it is not actually needed very often. The most common use by far for coloured lamps is as indicator lights to signal some condition - working, disabled, full, empty, error, etc. - with the colour of the lamp being fixed and the status being displayed by turning the lamp on or off on a condition. In this case, you end up needing an otherwise useless combinator to feed the lamp a colour signal. Worse, if the signal network which controls the lamp's on/off state happens to have any colour signals in it, they can override the desired colour accidentally.
There have been various suggestions for dealing with the issue of lamps picking up the wrong colour from the network, but none of them have hit on the simple idea of just letting the player set the colour of the lamp on the lamp itself without pulling it from the network at all.
Filter inserters let you set their filters directly, as do logistics chests their requests, with setting them from the network being an alternative option rather than the default and only way to do it. Why not lamp colours?