COXRoundedButton
Copyright © The Code Project 1997 - 2005, All Rights Reserved

COXRoundedButton is COXBitmapButton derived class that makes use of the 

DrawRoundedButton()

function found in COXGraphics class. This function allows us to draw 3D rounded rectangles. We use it in order to draw the button's background.

As long as COXRoundedButton is derived from COXBitmapButton class, all functionality found in COXBitmapButton class applied to COXRoundedButton
as well (custom text font and color, images, including 256> colors, tooltips and much more. Refer to the documentation on COXBitmapButton class for details). 

Actually, COXRoundedButton class handles only the process of drawing of the background. You can specify the base color that should be used in order to fill the button rectangle and other settings that influence the appearance of the button using the following functions:

void SetButtonColor();
void SetLightColor();
void SetSphereExternalRadius();
void SetSphereInternalRadius();
void SetLightIntensityCoef();
void SetThetta();
void SetPhi();
void SetPhong();
void SetMirrorCoef();
void SetDiffuseCoef();
void SetAmbientCoef();

No doubt, most of this function wouldn't tell you anything about the way they change the appearance of the button's background. If you would like to 
understand the meaning of all settings you might refer to the following book:

"Computer Graphics, principle and practice" by James D. Foley, Andries van Dam, Steven K. Feiner, John F. Hughes
Addison-Wesley publishing company. ISBN 0-201-84840-6. Chapter 16 "Illumination and Shading".

Most people wouldn't care about it so we came up with a set of default values that would produce pretty good results for most colors. It means, that in order 
to use the class you only have to specify the button color using the following function:

void SetButtonColor()

Other than that you should treat COXRoundedButton as COXBitmapButton object.

Although we have to note that if you are going to use too dark or too light colors you might would like to use different settings. In order to simplify the
process of finding of set of appropriate values we provide "Customize Rounded Button" page in our RoundedButton sample that can be found in the 
.\Samples\gui\RoundedButton subdirectory of your Ultimate Toolbox directory. On this page you can easily apply different combination of all settings.
This sample also demonstrate COXRoundedButton samples (refer to "Rounded Button Samples" page).