/****************************************************************************************


		MCUIColor.h


		Copyright: (c) 2001 Eovia Corp. All rights reserved.


		Author:	Greg
		Date:	2/16/99

		Revision History

		when		who			what & why
		==========	==========	======================================================
		8/31/99		Greg		Added drag and drop color
		7/19/99		Greg		Added background color
		6/7/99		Greg		Added kUIColor_UseRGBColor (convenience only)
		04/06/99	pbk			added kUIColor_ControlHilite
		3/22/99		psq			added missing color from personality.
								Color order is IMPORTANT!
		3/15/99		Greg		New color types (control text and hilite)

*****************************************************************************************/

#ifndef __MCUICOLOR__
#define __MCUICOLOR__

#if CP_PRAGMA_ONCE
#pragma once
#endif

///NOTE: you should NEVER write a EUIColor directly into a resource file (or any other file).
///Instead, use EUIColorID values and the conversion functions
///Keep this enum ordered and starting at zero (used for array)
enum EUIColor
{
	kUIColor_NoColor		= 0,		// use RGB color (in TMFFillAttributes)
	kUIColor_UseRGBColor	= 0,

	kUIColor_MajorAccentVeryLight, 
	kUIColor_MajorAccentLight,
	kUIColor_MajorAccent,
	kUIColor_MajorAccentDark,
	kUIColor_MajorAccentVeryDark,
	
	kUIColor_MinorAccentVeryLight,
	kUIColor_MinorAccentLight,
	kUIColor_MinorAccent,
	kUIColor_MinorAccentDark,
	kUIColor_MinorAccentVeryDark,
	
	kUIColor_ControlVeryLight,
	kUIColor_ControlLight,
	kUIColor_Control,
	kUIColor_ControlDark,
	kUIColor_ControlVeryDark,

	kUIColor_HiliteVeryLight,
	kUIColor_HiliteLight,
	kUIColor_Hilite,
	kUIColor_HiliteDark,
	kUIColor_HiliteVeryDark,
	
	kUIColor_AlternateHiliteVeryLight,
	kUIColor_AlternateHiliteLight,
	kUIColor_AlternateHilite,
	kUIColor_AlternateHiliteDark,
	kUIColor_AlternateHiliteVeryDark,
	
	kUIColor_BackgroundVeryLight,
	kUIColor_BackgroundLight,
	kUIColor_Background,
	kUIColor_BackgroundDark,
	kUIColor_BackgroundVeryDark,

	kUIColor_DragAndDrop,
	
//these colors need to be after colorized one
	kUIColor_ControlTextVeryLight,
	kUIColor_ControlTextLight,
	kUIColor_ControlText,
	kUIColor_ControlTextDark,
	kUIColor_ControlTextVeryDark,
	
	kUIColor_TotalColors,			//end of saved colors	

	//color aliases moved below
	kUIColor_End	
};

//constants are set in MCUIColors.cpp so we can change them without recompiling everything
extern const EUIColor	kUIColor_ControlTextHilite;
extern const EUIColor	kUIColor_ControlTextDisabled;

extern const EUIColor	kUIColor_ControlShadowFull;
extern const EUIColor	kUIColor_ControlShadowMedium;
extern const EUIColor	kUIColor_ControlShadowLight;
extern const EUIColor	kUIColor_ControlShadowDisabled;
extern const EUIColor	kUIColor_ControlHilite;



enum EUIColorID
{
	kUIColorID_NoColor				= '****',

	kUIColorID_MajorAccentVeryLight	= 'MAVL',
	kUIColorID_MajorAccentLight		= 'MALi',
	kUIColorID_MajorAccent			= 'MjAc',
	kUIColorID_MajorAccentDark		= 'MADa',
	kUIColorID_MajorAccentVeryDark	= 'MAVD',
	
	kUIColorID_MinorAccentVeryLight	= 'mAVL',
	kUIColorID_MinorAccentLight		= 'mALi',
	kUIColorID_MinorAccent			= 'miAc',
	kUIColorID_MinorAccentDark		= 'mADa',
	kUIColorID_MinorAccentVeryDark	= 'mAVD',
	
	kUIColorID_ControlVeryLight		= 'CtVL',
	kUIColorID_ControlLight			= 'CtLi',
	kUIColorID_Control				= 'CtCl',
	kUIColorID_ControlDark			= 'CtDa',
	kUIColorID_ControlVeryDark		= 'CtVD',

	kUIColorID_HiliteVeryLight		= 'HlVL',
	kUIColorID_HiliteLight			= 'HlLi',
	kUIColorID_Hilite				= 'HlCl',
	kUIColorID_HiliteDark			= 'HlDa',
	kUIColorID_HiliteVeryDark		= 'HlVD',
	
	kUIColorID_BackgroundVeryLight	= 'BkVL',
	kUIColorID_BackgroundLight		= 'BkLi',
	kUIColorID_Background			= 'BkCl',
	kUIColorID_BackgroundDark		= 'BkDa',
	kUIColorID_BackgroundVeryDark	= 'BkVD',

	kUIColorID_DragAndDrop			= 'DNDC',

	kUIColorID_ControlTextVeryLight	= 'TxVL',
	kUIColorID_ControlTextLight		= 'TxLi',
	kUIColorID_ControlText			= 'TxCl',
	kUIColorID_ControlTextDark		= 'TxDa',
	kUIColorID_ControlTextVeryDark	= 'TxVD',
};



EUIColor	ColorUIFromColorID	(const EUIColorID	inColorID);

EUIColorID	ColorIDFromColorUI	(const EUIColor		inColorUI);


#endif