What do you have against using SetColor? Is it just that you prefer using the 1.0 method instead of the 255? As far as I know, the 1.0 just gets converted into the 255, resulting in an extra, albeit tiny, step.
OpenGL can take both. SetColor's just a wrapper for glSetColor4ubv (unsigned byte vector). Your driver will convert the values to integers or floats, depending what the graphics card uses internally.