| 7946 | } |
| 7947 | |
| 7948 | virtual void use( Colour::Code _colourCode ) override { |
| 7949 | switch( _colourCode ) { |
| 7950 | case Colour::None: return setTextAttribute( originalForegroundAttributes ); |
| 7951 | case Colour::White: return setTextAttribute( FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_BLUE ); |
| 7952 | case Colour::Red: return setTextAttribute( FOREGROUND_RED ); |
| 7953 | case Colour::Green: return setTextAttribute( FOREGROUND_GREEN ); |
| 7954 | case Colour::Blue: return setTextAttribute( FOREGROUND_BLUE ); |
| 7955 | case Colour::Cyan: return setTextAttribute( FOREGROUND_BLUE | FOREGROUND_GREEN ); |
| 7956 | case Colour::Yellow: return setTextAttribute( FOREGROUND_RED | FOREGROUND_GREEN ); |
| 7957 | case Colour::Grey: return setTextAttribute( 0 ); |
| 7958 | |
| 7959 | case Colour::LightGrey: return setTextAttribute( FOREGROUND_INTENSITY ); |
| 7960 | case Colour::BrightRed: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_RED ); |
| 7961 | case Colour::BrightGreen: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_GREEN ); |
| 7962 | case Colour::BrightWhite: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_BLUE ); |
| 7963 | case Colour::BrightYellow: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN ); |
| 7964 | |
| 7965 | case Colour::Bright: CATCH_INTERNAL_ERROR( "not a colour" ); |
| 7966 | |
| 7967 | default: |
| 7968 | CATCH_ERROR( "Unknown colour requested" ); |
| 7969 | } |
| 7970 | } |
| 7971 | |
| 7972 | private: |
| 7973 | void setTextAttribute( WORD _textAttribute ) { |
nothing calls this directly
no outgoing calls
no test coverage detected