You can also use fxDtsBrick::onColorChange(%brick,%color), I think that's the correct arguments.
If you need it for the same thing as number two then you're best off packaging the project collision so that you can retain the client, however fxDtsBrick::setColor might have a %client argument on the end too.