Button {
   field        SFBool     noloop FALSE
   eventIn      SFBool     set_state
   field        SFBool     state FALSE
   eventOut     SFBool     state_changed
   exposedField SFColor    onColor 0.0 1.0 0.0
   exposedField SFColor    offColor 1.0 0.0 0.0
   exposedField SFNode     button Cylinder { height .0145 radius .015 }
   exposedField MFNode     base Transform {
   			rotation 1 0 0 1.5707963
   		children Shape {
   			appearance Appearance {
   				material Material { diffuseColor 0.0 0.0 1.0 }
   				}
   			geometry Cylinder { height .015 radius .02 }
   			}
   		}
}

Example