To help do exactly what you are doing, I just added two new subroutines to SBasic for Sesame 2.0
PushAttribute(var LE as string, attribute_id as int)
and
PopAttribute(var LE as string, attribute_id as int)
These let you save and restore any of the forty-some attributes on individual LEs.
#include "sbasic_include.sbas"
// Save the background color whatever it is
PushAttribute(Company, ATTR_ID_BACK_RGB_COLOR)
// Set the background color to Red
RGBColor(Company, -1, -1, -1, 128, 0, 0)
// Let's see it!
ForceRedraw()
// Go do whatever Red LEs do - in this case: Twiddle Thumbs
Loiter(10000)
// Restore whatever the background color was before we messed with it
PopAttribute(Company, ATTR_ID_BACK_RGB_COLOR)
Of course you can push any attribute mulitply (up to 128 for each attribute in each LE) and you can then "pop" them off the stack in reverse order, making the push/pop sequence work much like a multi-level "undo".