DynamicPalette Class Reference

#include <palette.h>

Link against: palette.lib

class DynamicPalette
Public Member Enumerations
enumTIndex { EIndex0, EIndex1, EIndex2, EIndex4, EIndex5 }
Public Member Functions
IMPORT_C const TUint32 *Color16array()
IMPORT_C const TUint8 *Color16inverse()
IMPORT_C const TColor256Util *DefaultColor256Util()
IMPORT_C voidSetColor256Util(TIndex)

Detailed Description

Hooks to allow dynamic palette switching in 256 colour mode.

TRgb::Color256() transparently invokes hooks in this class. The behaviour of the system can be customized by replacing the implementation in palette.dll with device-specific functionality to switch the colour palette at run-time.

Member Enumeration Documentation

Enum TIndex

Stores the index values of the palettes defined. This enum may be as short or as long as desired - there is no requirement that the size of the enum in any given implementation be limited to the five sample values given in this example implementation.

EnumeratorValueDescription
EIndex0

A palette index number.

EIndex1

A palette index number.

EIndex2

A palette index number.

EIndex4

A palette index number.

EIndex5

A palette index number.

Member Function Documentation

Color16array ( )

IMPORT_C const TUint32 *Color16array()[static]

Color16inverse ( )

IMPORT_C const TUint8 *Color16inverse()[static]

DefaultColor256Util ( )

IMPORT_C const TColor256Util *DefaultColor256Util()[static]

Returns the current system palette. Depending on the implementation this value depends on the current color scheme set using SetColorScheme.

Return Value
Current system palette.

SetColor256Util ( TIndex )

IMPORT_C voidSetColor256Util(TIndexaIndex)[static]

Switches the device to use the specified colour palette.

The reference version provided does nothing, since only one palette is used in the reference implementation.

Parameters
aIndexThe index number of the colour palette to use.