// ------------------------------------------------------------------------
/*
	\author: Jaap Suter
   
	Copyright (C) Electronic Arts Canada Inc. 2002.  All rights reserved.	
*/
// ------------------------------------------------------------------------

/*! \file */

#ifndef REVEAL_GUI_COLORS_H
#define REVEAL_GUI_COLORS_H

#include "reveal/stdint.h"

namespace Reveal {

// ------------------------------------------------------------------------------
/*!
	\class GuiColors
	\brief Encapsulates a bunch of GUI colors;
*/
// ------------------------------------------------------------------------------
struct GuiColors
{	
	Reveal::uint32_t mCursorColor;
	Reveal::uint32_t mTextColor;
	Reveal::uint32_t mStatusBarColor;
	Reveal::uint32_t mSliderColor;

	Reveal::uint32_t mBorderColor;
	Reveal::uint32_t mWidgetBackgroundColor;
	Reveal::uint32_t mWidgetHighlightedBackgroundColor;
	Reveal::uint32_t mWidgetSameLevelBackgroundColor;
	Reveal::uint32_t mMruButtonColor;
	Reveal::uint32_t mHighlightedMruButtonColor;
	Reveal::uint32_t mInteractiveBackgroundColor;
	Reveal::uint32_t mInteractiveForegroundColor;
	Reveal::uint32_t mButtonColor;
	Reveal::uint32_t mButtonDownColor;

	Reveal::uint32_t mOptionBoxSelectionColor;
	Reveal::uint32_t mOptionBoxMouseOverColor;

	Reveal::uint32_t mMruUnlockedColor;
	Reveal::uint32_t mMruLockedColor;

	Reveal::uint32_t mHelpWindowColor;
	Reveal::uint32_t mHelpWindowText;

	// Default constructor makes default color scheme;
	GuiColors()
	:	mCursorColor( 0xFFFFFFFF ),
		mTextColor( 0xFFFFFFFF ),
		mStatusBarColor( 0xFF122D2D ),

		mSliderColor( 0xFFFFFFFF ),

		mBorderColor( 0xFFB4B4B4 ),
		mWidgetBackgroundColor( 0x20000000 ),
		mWidgetHighlightedBackgroundColor( 0xFF481375 ),
		mWidgetSameLevelBackgroundColor( 0xFF000000 ),
		mMruButtonColor( 0xFF464B4B ),
		mHighlightedMruButtonColor( 0xFF122D2D ),
		mInteractiveBackgroundColor( 0xFFAAAAAA ),
		mInteractiveForegroundColor( 0xFF000000 ),
		mButtonColor( 0xFF000000 ),
		mButtonDownColor( 0xFFAAAAAA ),

		mOptionBoxSelectionColor( 0xFF777777 ),
		mOptionBoxMouseOverColor( 0xFF444444 ),
	
		mMruUnlockedColor( 0xFF000000 ),
		mMruLockedColor( 0xFF94BFE5 ),
		mHelpWindowColor( 0xCCBBBBFF ),
		mHelpWindowText( 0xFF222222 )
	{}
};

} // Namespace Reveal;

#endif
