//////////////////////////////////////
// START of File: B0_COLOR.HPP
//////////////////////////////////////

#ifndef B0_COLOR_HPP            // Avoid multiple includes...
#define B0_COLOR_HPP    TRUE    // ...holds to a terminal #endif below...

//===================================================================
//
// COPYRIGHT NOTICE:  This code is protected by Copyright!
//
// Copyright (c) 1994, 1995, 1996, 1997 by DPC Technology.
// All rights reserved.
//
// See files "cf_copyr.txt" and "cf_licen.txt" for details of
// copyright and license specifications, and contact information.
//
//===================================================================

//
// Master Header File Listing:
//
// #include    <cf_api/b0_color.hpp>
// Base Framework abstractions of "Color" objects.
//

#include    <cf_api/bf_defs.h>


class CF_EXPORT   bf_Color
//-------------------------------------------------------
// Map a Chart Framework "Abstracted Color" Object onto
// the Underlying Framework's "Abstracted Color" object:
//-------------------------------------------------------
{

public:

    bf_Color();     // Default c-tor yields BLACK

	bf_Color( ZafLogicalColor zlcFromThisColor );

	bf_Color( int iRed, int iGreen, int iBlue );

    ~bf_Color();

    operator ZafLogicalColor();

    const int   r() const;
    const int   g() const;
    const int   b() const;
                // Get-attribute methods return the current red/green/blue vals.

private:

	ZafLogicalColor	zlcMapTo_;

};  // End of bf_Color Declaration.



//
// Now define some global bf_Color constants,
// typically used as default bf_Color() c-tor params:
//
#define	CF_BLACK				bf_Color (ZAF_CLR_BLACK)
#define	CF_WHITE				bf_Color (ZAF_CLR_WHITE)

#define CF_RED					bf_Color (ZAF_CLR_LIGHTRED)
#define CF_GREEN				bf_Color (ZAF_CLR_LIGHTGREEN)
#define CF_BLUE					bf_Color (ZAF_CLR_LIGHTBLUE)
#define CF_YELLOW				bf_Color (ZAF_CLR_YELLOW)
#define	CF_CYAN 				bf_Color (ZAF_CLR_LIGHTCYAN)
#define	CF_MAGENTA				bf_Color (ZAF_CLR_LIGHTMAGENTA)
#define CF_DARK_RED				bf_Color (ZAF_CLR_RED)
#define CF_DARK_GREEN			bf_Color (ZAF_CLR_GREEN)
#define CF_DARK_BLUE			bf_Color (ZAF_CLR_BLUE)
#define	CF_DARK_CYAN 			bf_Color (ZAF_CLR_CYAN)
#define	CF_DARK_MAGENTA			bf_Color (ZAF_CLR_MAGENTA)
#define CF_BROWN    			bf_Color (ZAF_CLR_BROWN)
#define CF_DARK_GRAY			bf_Color (ZAF_CLR_DARKGRAY)
#define CF_LITE_GRAY			bf_Color (ZAF_CLR_LIGHTGRAY)

//
// Define a set (Currently 16) Default Palette Colors
// to apply to Chart Groups as they are created 
//

#define CF_PALETTE_01           CF_RED
#define CF_PALETTE_02           CF_GREEN
#define CF_PALETTE_03           CF_BLUE
#define CF_PALETTE_04           CF_YELLOW
#define CF_PALETTE_05           CF_CYAN
#define CF_PALETTE_06           CF_MAGENTA
#define CF_PALETTE_07           CF_DARK_RED
#define CF_PALETTE_08           CF_DARK_GREEN
#define CF_PALETTE_09           CF_DARK_BLUE
#define CF_PALETTE_10           CF_DARK_CYAN
#define CF_PALETTE_11           CF_DARK_MAGENTA
#define CF_PALETTE_12           CF_BROWN
#define CF_PALETTE_13           CF_DARK_GRAY
#define CF_PALETTE_14           CF_LITE_GRAY
#define CF_PALETTE_15           CF_WHITE
#define CF_PALETTE_16           CF_BLACK

//
// Define some default Chart Component colors:
//
#define CF_DEF_CHART_BACKGROUND CF_LITE_GRAY
                                // Like it sez, bubba!

/*
#define CF_DEF_TICK_BACKGROUND  bf_Color( 128,  255,    255 )
                                // A "royal/navy" blue.

#define CF_DEF_TITLE_BACKGROUND bf_Color( 128,  255,    255 )
                                // A "royal/navy" blue.

//
// Define defaults for custom "Control Chart" colors:
//
#define CF_NOMINAL_COLOR        bf_Color(  0,    194,  50  )
                                // A "Lite" Green
#define CF_WARNING_COLOR        bf_Color(  0,    128,  255 )
                                // A "Lite" Blue
#define CF_ERROR_COLOR          bf_Color(  220,  0,    0   )
                                // Med. Red
*/

#endif      // Terminates include re-definition protection

//////////////////////////////////////
// END of File: B0_COLOR.HPP
//////////////////////////////////////
