2008-03-08 13:52:38 +00:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: colour.h
|
|
|
|
// Purpose: documentation for wxColour class
|
|
|
|
// Author: wxWidgets team
|
|
|
|
// RCS-ID: $Id$
|
|
|
|
// Licence: wxWindows license
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
/**
|
|
|
|
@class wxColour
|
|
|
|
@wxheader{colour.h}
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
A colour is an object representing a combination of Red, Green, and Blue (RGB)
|
|
|
|
intensity values,
|
|
|
|
and is used to determine drawing colours. See the
|
|
|
|
entry for wxColourDatabase for how a pointer to a predefined,
|
|
|
|
named colour may be returned instead of creating a new colour.
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
Valid RGB values are in the range 0 to 255.
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
You can retrieve the current system colour settings with wxSystemSettings.
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
@library{wxcore}
|
|
|
|
@category{gdi}
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
@stdobjects
|
|
|
|
Objects:
|
|
|
|
wxNullColour
|
|
|
|
Pointers:
|
|
|
|
wxBLACK
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
wxWHITE
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
wxRED
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
wxBLUE
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
wxGREEN
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
wxCYAN
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
wxLIGHT_GREY
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
@seealso
|
|
|
|
wxColourDatabase, wxPen, wxBrush, wxColourDialog, wxSystemSettings
|
|
|
|
*/
|
|
|
|
class wxColour : public wxObject
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
//@{
|
|
|
|
/**
|
|
|
|
Copy constructor.
|
|
|
|
|
2008-03-08 14:43:31 +00:00
|
|
|
@param red
|
2008-03-09 12:33:59 +00:00
|
|
|
The red value.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param green
|
2008-03-09 12:33:59 +00:00
|
|
|
The green value.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param blue
|
2008-03-09 12:33:59 +00:00
|
|
|
The blue value.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param alpha
|
2008-03-09 12:33:59 +00:00
|
|
|
The alpha value. Alpha values range from 0 (wxALPHA_TRANSPARENT) to 255
|
2008-03-08 13:52:38 +00:00
|
|
|
(wxALPHA_OPAQUE).
|
2008-03-08 14:43:31 +00:00
|
|
|
@param colourName
|
2008-03-09 12:33:59 +00:00
|
|
|
The colour name.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param colour
|
2008-03-09 12:33:59 +00:00
|
|
|
The colour to copy.
|
2008-03-08 13:52:38 +00:00
|
|
|
|
2008-03-09 12:33:59 +00:00
|
|
|
@see wxColourDatabase
|
2008-03-08 13:52:38 +00:00
|
|
|
*/
|
|
|
|
wxColour();
|
2008-03-08 14:43:31 +00:00
|
|
|
wxColour(unsigned char red, unsigned char green,
|
|
|
|
unsigned char blue,
|
2008-03-09 12:33:59 +00:00
|
|
|
unsigned char alpha = wxALPHA_OPAQUE);
|
2008-03-08 14:43:31 +00:00
|
|
|
wxColour(const wxString& colourNname);
|
|
|
|
wxColour(const wxColour& colour);
|
2008-03-08 13:52:38 +00:00
|
|
|
//@}
|
|
|
|
|
|
|
|
/**
|
|
|
|
Returns the alpha value, on platforms where alpha is not yet supported, this
|
|
|
|
always returns wxALPHA_OPAQUE.
|
|
|
|
*/
|
|
|
|
unsigned char Alpha();
|
|
|
|
|
|
|
|
/**
|
|
|
|
Returns the blue intensity.
|
|
|
|
*/
|
|
|
|
unsigned char Blue();
|
|
|
|
|
|
|
|
//@{
|
|
|
|
/**
|
|
|
|
is not
|
|
|
|
specified in flags.
|
|
|
|
This function is new since wxWidgets version 2.7.0
|
|
|
|
*/
|
|
|
|
wxString GetAsString(long flags);
|
2008-03-08 14:43:31 +00:00
|
|
|
wxC2S_NAME wxC2S_CSS_SYNTAX, to obtain
|
|
|
|
the colour in the "rgb(r,g,b)" or "rgba(r,g,b,a)" syntax
|
|
|
|
(e.g. wxColour(255,0,0,85) - "rgba(255,0,0,0.333)"), and
|
|
|
|
wxC2S_HTML_SYNTAX, to obtain the colour as "#" followed
|
|
|
|
by 6 hexadecimal digits (e.g. wxColour(255,0,0) - "#FF0000").
|
|
|
|
This function never fails and always returns a non-empty string but asserts if
|
|
|
|
the colour has alpha channel (i.e. is non opaque) but
|
|
|
|
wxC2S_CSS_SYNTAX();
|
2008-03-08 13:52:38 +00:00
|
|
|
//@}
|
|
|
|
|
|
|
|
/**
|
|
|
|
Returns a pixel value which is platform-dependent. On Windows, a COLORREF is
|
|
|
|
returned.
|
|
|
|
On X, an allocated pixel value is returned.
|
|
|
|
-1 is returned if the pixel is invalid (on X, unallocated).
|
|
|
|
*/
|
|
|
|
long GetPixel();
|
|
|
|
|
|
|
|
/**
|
|
|
|
Returns the green intensity.
|
|
|
|
*/
|
|
|
|
unsigned char Green();
|
|
|
|
|
|
|
|
/**
|
|
|
|
Returns @true if the colour object is valid (the colour has been initialised
|
|
|
|
with RGB values).
|
|
|
|
*/
|
2008-03-09 12:33:59 +00:00
|
|
|
bool IsOk();
|
2008-03-08 13:52:38 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
Returns the red intensity.
|
|
|
|
*/
|
2008-03-09 12:33:59 +00:00
|
|
|
unsigned char Red();
|
2008-03-08 13:52:38 +00:00
|
|
|
|
|
|
|
//@{
|
|
|
|
/**
|
|
|
|
Sets the RGB intensity values using the given values (first overload),
|
|
|
|
extracting them from the packed long (second overload), using the given string (third overloard).
|
2008-03-08 14:43:31 +00:00
|
|
|
When using third form, Set() accepts: colour names (those listed in
|
|
|
|
wxTheColourDatabase), the CSS-like
|
|
|
|
@c "rgb(r,g,b)" or @c "rgba(r,g,b,a)" syntax (case insensitive)
|
|
|
|
and the HTML-like syntax (i.e. @c "#" followed by 6 hexadecimal digits
|
2008-03-08 13:52:38 +00:00
|
|
|
for red, green, blue components).
|
|
|
|
Returns @true if the conversion was successful, @false otherwise.
|
|
|
|
This function is new since wxWidgets version 2.7.0
|
|
|
|
*/
|
|
|
|
void Set(unsigned char red, unsigned char green,
|
|
|
|
unsigned char blue,
|
2008-03-09 12:33:59 +00:00
|
|
|
unsigned char alpha = wxALPHA_OPAQUE);
|
2008-03-08 14:43:31 +00:00
|
|
|
void Set(unsigned long RGB);
|
2008-03-09 12:33:59 +00:00
|
|
|
bool Set(const wxString& str);
|
2008-03-08 13:52:38 +00:00
|
|
|
//@}
|
|
|
|
|
|
|
|
/**
|
|
|
|
Tests the inequality of two colours by comparing individual red, green, blue
|
|
|
|
colours and alpha values.
|
|
|
|
*/
|
|
|
|
bool operator !=(const wxColour& colour);
|
|
|
|
|
|
|
|
//@{
|
|
|
|
/**
|
|
|
|
Assignment operator, using a colour name to be found in the colour database.
|
|
|
|
|
2008-03-09 12:33:59 +00:00
|
|
|
@see wxColourDatabase
|
2008-03-08 13:52:38 +00:00
|
|
|
*/
|
|
|
|
wxColour operator =(const wxColour& colour);
|
2008-03-08 14:43:31 +00:00
|
|
|
wxColour operator =(const wxString& colourName);
|
2008-03-08 13:52:38 +00:00
|
|
|
//@}
|
|
|
|
|
|
|
|
/**
|
|
|
|
Tests the equality of two colours by comparing individual red, green, blue
|
|
|
|
colours and alpha values.
|
|
|
|
*/
|
|
|
|
bool operator ==(const wxColour& colour);
|
|
|
|
};
|