]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/colour.tex
Documented new menu label functions
[wxWidgets.git] / docs / latex / wx / colour.tex
index c22c3baceb07255c8aaeff847c87c766a6472200..0109378a5bf766ed36b5ed4301a2c9f1a4486d0c 100644 (file)
@@ -1,3 +1,14 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Name:        colour.tex
+%% Purpose:     wxColour docs
+%% Author:
+%% Modified by: Francesco Montorsi
+%% Created:
+%% RCS-ID:      $Id$
+%% Copyright:   (c) wxWidgets
+%% License:     wxWindows license
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
 \section{\class{wxColour}}\label{wxcolour}
 
 A colour is an object representing a combination of Red, Green, and Blue (RGB) intensity values,
 \section{\class{wxColour}}\label{wxcolour}
 
 A colour is an object representing a combination of Red, Green, and Blue (RGB) intensity values,
@@ -7,6 +18,8 @@ named colour may be returned instead of creating a new colour.
 
 Valid RGB values are in the range 0 to 255.
 
 
 Valid RGB values are in the range 0 to 255.
 
+You can retrieve the current system colour settings with \helpref{wxSystemSettings}{wxsystemsettings}.
+
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
@@ -15,27 +28,47 @@ Valid RGB values are in the range 0 to 255.
 
 <wx/colour.h>
 
 
 <wx/colour.h>
 
+\wxheading{Library}
+
+\helpref{wxCore}{librarieslist}
+
+\wxheading{Predefined objects}
+
+Objects:
+
+{\bf wxNullColour}
+
+Pointers:
+
+{\bf wxBLACK\\
+wxWHITE\\
+wxRED\\
+wxBLUE\\
+wxGREEN\\
+wxCYAN\\
+wxLIGHT\_GREY}
+
 \wxheading{See also}
 
 \helpref{wxColourDatabase}{wxcolourdatabase}, \helpref{wxPen}{wxpen}, \helpref{wxBrush}{wxbrush},\rtfsp
 \wxheading{See also}
 
 \helpref{wxColourDatabase}{wxcolourdatabase}, \helpref{wxPen}{wxpen}, \helpref{wxBrush}{wxbrush},\rtfsp
-\helpref{wxColourDialog}{wxcolourdialog}
+\helpref{wxColourDialog}{wxcolourdialog}, \helpref{wxSystemSettings}{wxsystemsettings}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
+
 \membersection{wxColour::wxColour}\label{wxcolourconstr}
 
 \func{}{wxColour}{\void}
 
 Default constructor.
 
 \membersection{wxColour::wxColour}\label{wxcolourconstr}
 
 \func{}{wxColour}{\void}
 
 Default constructor.
 
-\func{}{wxColour}{\param{const unsigned char}{ red}, \param{const unsigned char}{ green}, \param{const unsigned char}{ blue}}
+\func{}{wxColour}{\param{unsigned char}{ red}, \param{unsigned char}{ green}, \param{unsigned char}{ blue}, \param{unsigned char}{ alpha=wxALPHA\_OPAQUE}}
 
 
-Constructs a colour from red, green and blue values.
+Constructs a colour from red, green, blue and alpha values.
 
 \func{}{wxColour}{\param{const wxString\& }{colourNname}}
 
 
 \func{}{wxColour}{\param{const wxString\& }{colourNname}}
 
-Constructs a colour object using a colour name
-listed in {\bf wxTheColourDatabase}.
+Constructs a colour using the given string. See \helpref{Set}{wxcolourset} for more info.
 
 \func{}{wxColour}{\param{const wxColour\&}{ colour}}
 
 
 \func{}{wxColour}{\param{const wxColour\&}{ colour}}
 
@@ -49,6 +82,8 @@ Copy constructor.
 
 \docparam{blue}{The blue value.}
 
 
 \docparam{blue}{The blue value.}
 
+\docparam{alpha}{The alpha value. Alpha values range from 0 (wxALPHA\_TRANSPARENT) to 255 (wxALPHA\_OPAQUE).}
+
 \docparam{colourName}{The colour name.}
 
 \docparam{colour}{The colour to copy.}
 \docparam{colourName}{The colour name.}
 
 \docparam{colour}{The colour to copy.}
@@ -59,18 +94,49 @@ Copy constructor.
 
 \pythonnote{Constructors supported by wxPython are:\par
 \indented{2cm}{\begin{twocollist}
 
 \pythonnote{Constructors supported by wxPython are:\par
 \indented{2cm}{\begin{twocollist}
-\twocolitem{\bf{wxColour(red=0, green=0, blue=0)}}{}
-\twocolitem{\bf{wxNamedColour(name)}}{}
+\twocolitem{{\bf wxColour(red=0, green=0, blue=0)}}{}
+\twocolitem{{\bf wxNamedColour(name)}}{}
 \end{twocollist}}
 }
 
 
 \end{twocollist}}
 }
 
 
+
+\membersection{wxColour::Alpha}\label{wxcolouralpha}
+
+\constfunc{unsigned char}{Alpha}{\void}
+
+Returns the alpha value, on platforms where alpha is not yet supported, this always returns wxALPHA\_OPAQUE.
+
+
 \membersection{wxColour::Blue}\label{wxcolourblue}
 
 \constfunc{unsigned char}{Blue}{\void}
 
 Returns the blue intensity.
 
 \membersection{wxColour::Blue}\label{wxcolourblue}
 
 \constfunc{unsigned char}{Blue}{\void}
 
 Returns the blue intensity.
 
+
+\membersection{wxColour::GetAsString}\label{wxcolourgetasstring}
+
+\constfunc{wxString}{GetAsString}{\param{long}{ flags}}
+
+Converts this colour to a \helpref{wxString}{wxstring} 
+using the given {\it flags}.
+
+The supported flags are \textbf{wxC2S\_NAME}, to obtain the colour name (e.g.
+wxColour(255,0,0) -> \texttt{``red"}), \textbf{wxC2S\_CSS\_SYNTAX}, to obtain
+the colour in the \texttt{``rgb(r,g,b)"} or \texttt{``rgba(r,g,b,a)"} syntax
+(e.g. wxColour(255,0,0,85) -> \texttt{``rgba(255,0,0,0.333)"}), and 
+\textbf{wxC2S\_HTML\_SYNTAX}, to obtain the colour as  \texttt{``\#"} followed
+by 6 hexadecimal digits (e.g. wxColour(255,0,0) -> \texttt{``\#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
+\textbf{wxC2S\_CSS\_SYNTAX} (which is the only one supporting alpha) is not
+specified in flags.
+
+\newsince{2.7.0}
+
+
 \membersection{wxColour::GetPixel}\label{wxcolourgetpixel}
 
 \constfunc{long}{GetPixel}{\void}
 \membersection{wxColour::GetPixel}\label{wxcolourgetpixel}
 
 \constfunc{long}{GetPixel}{\void}
@@ -80,17 +146,20 @@ On X, an allocated pixel value is returned.
 
 -1 is returned if the pixel is invalid (on X, unallocated).
 
 
 -1 is returned if the pixel is invalid (on X, unallocated).
 
+
 \membersection{wxColour::Green}\label{wxcolourgreen}
 
 \constfunc{unsigned char}{Green}{\void}
 
 Returns the green intensity.
 
 \membersection{wxColour::Green}\label{wxcolourgreen}
 
 \constfunc{unsigned char}{Green}{\void}
 
 Returns the green intensity.
 
-\membersection{wxColour::Ok}\label{wxcolourok}
 
 
-\constfunc{bool}{Ok}{\void}
+\membersection{wxColour::IsOk}\label{wxcolourisok}
+
+\constfunc{bool}{IsOk}{\void}
+
+Returns \true if the colour object is valid (the colour has been initialised with RGB values).
 
 
-Returns TRUE if the colour object is valid (the colour has been initialised with RGB values).
 
 \membersection{wxColour::Red}\label{wxcolourred}
 
 
 \membersection{wxColour::Red}\label{wxcolourred}
 
@@ -98,11 +167,27 @@ Returns TRUE if the colour object is valid (the colour has been initialised with
 
 Returns the red intensity.
 
 
 Returns the red intensity.
 
+
 \membersection{wxColour::Set}\label{wxcolourset}
 
 \membersection{wxColour::Set}\label{wxcolourset}
 
-\func{void}{Set}{\param{const unsigned char}{ red}, \param{const unsigned char}{ green}, \param{const unsigned char}{ blue}}
+\func{void}{Set}{\param{unsigned char}{ red}, \param{unsigned char}{ green}, \param{unsigned char}{ blue}, \param{unsigned char}{ alpha=wxALPHA\_OPAQUE}}
+
+\func{void}{Set}{\param{unsigned long}{ RGB}}
+
+\func{bool}{Set}{\param{const wxString \&}{ str}}
+
+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).
+
+When using third form, Set() accepts: colour names (those listed in 
+\helpref{wxTheColourDatabase}{wxcolourdatabase}), the CSS-like 
+\texttt{``rgb(r,g,b)"} or \texttt{``rgba(r,g,b,a)"} syntax (case insensitive) 
+and the HTML-like syntax (i.e. \texttt{``\#"} followed by 6 hexadecimal digits 
+for red, green, blue components).
+
+Returns \true if the conversion was successful, \false otherwise.
+
+\newsince{2.7.0}
 
 
-Sets the RGB intensity values.
 
 \membersection{wxColour::operator $=$}\label{wxcolourassign}
 
 
 \membersection{wxColour::operator $=$}\label{wxcolourassign}
 
@@ -118,17 +203,19 @@ Assignment operator, using a colour name to be found in the colour database.
 
 \helpref{wxColourDatabase}{wxcolourdatabase}
 
 
 \helpref{wxColourDatabase}{wxcolourdatabase}
 
+
 \membersection{wxColour::operator $==$}\label{wxcolourequality}
 
 \func{bool}{operator $==$}{\param{const wxColour\&}{ colour}}
 
 \membersection{wxColour::operator $==$}\label{wxcolourequality}
 
 \func{bool}{operator $==$}{\param{const wxColour\&}{ colour}}
 
-Tests the equality of two colours by comparing individual red, green blue colours.
+Tests the equality of two colours by comparing individual red, green, blue colours and alpha values.
+
 
 \membersection{wxColour::operator $!=$}\label{wxcolourinequality}
 
 \func{bool}{operator $!=$}{\param{const wxColour\&}{ colour}}
 
 
 \membersection{wxColour::operator $!=$}\label{wxcolourinequality}
 
 \func{bool}{operator $!=$}{\param{const wxColour\&}{ colour}}
 
-Tests the inequality of two colours by comparing individual red, green blue colours.
+Tests the inequality of two colours by comparing individual red, green, blue colours and alpha values.
 
 \section{\class{wxColourData}}\label{wxcolourdata}
 
 
 \section{\class{wxColourData}}\label{wxcolourdata}
 
@@ -142,33 +229,44 @@ This class holds a variety of information related to colour dialogs.
 
 <wx/cmndata.h>
 
 
 <wx/cmndata.h>
 
+\wxheading{Library}
+
+\helpref{wxCore}{librarieslist}
+
 \wxheading{See also}
 
 \helpref{wxColour}{wxcolour}, \helpref{wxColourDialog}{wxcolourdialog}, \helpref{wxColourDialog overview}{wxcolourdialogoverview}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \wxheading{See also}
 
 \helpref{wxColour}{wxcolour}, \helpref{wxColourDialog}{wxcolourdialog}, \helpref{wxColourDialog overview}{wxcolourdialogoverview}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
-\membersection{wxColourData::wxColourData}\label{wxcolourdataconstr}
+
+\membersection{wxColourData::wxColourData}\label{wxcolourdatactor}
 
 \func{}{wxColourData}{\void}
 
 
 \func{}{wxColourData}{\void}
 
-Constructor. Initializes the custom colours to white, the {\it data colour} setting
-to black, and the {\it choose full} setting to TRUE.
+Constructor. Initializes the custom colours to {\tt wxNullColour},
+the {\it data colour} setting
+to black, and the {\it choose full} setting to true.
+
 
 
-\membersection{wxColourData::\destruct{wxColourData}}
+\membersection{wxColourData::\destruct{wxColourData}}\label{wxcolourdatadtor}
 
 \func{}{\destruct{wxColourData}}{\void}
 
 Destructor.
 
 
 \func{}{\destruct{wxColourData}}{\void}
 
 Destructor.
 
+
 \membersection{wxColourData::GetChooseFull}\label{wxcolourdatagetchoosefull}
 
 \constfunc{bool}{GetChooseFull}{\void}
 
 Under Windows, determines whether the Windows colour dialog will display the full dialog
 \membersection{wxColourData::GetChooseFull}\label{wxcolourdatagetchoosefull}
 
 \constfunc{bool}{GetChooseFull}{\void}
 
 Under Windows, determines whether the Windows colour dialog will display the full dialog
-with custom colour selection controls. Has no meaning under other platforms.
+with custom colour selection controls. Under PalmOS, determines whether colour dialog
+will display full rgb colour picker or only available palette indexer.
+Has no meaning under other platforms.
+
+The default value is true.
 
 
-The default value is TRUE.
 
 \membersection{wxColourData::GetColour}\label{wxcolourdatagetcolour}
 
 
 \membersection{wxColourData::GetColour}\label{wxcolourdatagetcolour}
 
@@ -178,6 +276,7 @@ Gets the current colour associated with the colour dialog.
 
 The default colour is black.
 
 
 The default colour is black.
 
+
 \membersection{wxColourData::GetCustomColour}\label{wxcolourdatagetcustomcolour}
 
 \constfunc{wxColour\&}{GetCustomColour}{\param{int}{ i}}
 \membersection{wxColourData::GetCustomColour}\label{wxcolourdatagetcustomcolour}
 
 \constfunc{wxColour\&}{GetCustomColour}{\param{int}{ i}}
@@ -185,7 +284,8 @@ The default colour is black.
 Gets the {\it i}th custom colour associated with the colour dialog. {\it i} should
 be an integer between 0 and 15.
 
 Gets the {\it i}th custom colour associated with the colour dialog. {\it i} should
 be an integer between 0 and 15.
 
-The default custom colours are all white.
+The default custom colours are invalid colours.
+
 
 \membersection{wxColourData::SetChooseFull}\label{wxcolourdatasetchoosefull}
 
 
 \membersection{wxColourData::SetChooseFull}\label{wxcolourdatasetchoosefull}
 
@@ -194,7 +294,8 @@ The default custom colours are all white.
 Under Windows, tells the Windows colour dialog to display the full dialog
 with custom colour selection controls. Under other platforms, has no effect.
 
 Under Windows, tells the Windows colour dialog to display the full dialog
 with custom colour selection controls. Under other platforms, has no effect.
 
-The default value is TRUE.
+The default value is true.
+
 
 \membersection{wxColourData::SetColour}\label{wxcolourdatasetcolour}
 
 
 \membersection{wxColourData::SetColour}\label{wxcolourdatasetcolour}
 
@@ -204,40 +305,53 @@ Sets the default colour for the colour dialog.
 
 The default colour is black.
 
 
 The default colour is black.
 
+
 \membersection{wxColourData::SetCustomColour}\label{wxcolourdatasetcustomcolour}
 
 \membersection{wxColourData::SetCustomColour}\label{wxcolourdatasetcustomcolour}
 
-\func{void}{SetColour}{\param{int}{ i}, \param{const wxColour\&}{ colour}}
+\func{void}{SetCustomColour}{\param{int}{ i}, \param{const wxColour\&}{ colour}}
 
 Sets the {\it i}th custom colour for the colour dialog. {\it i} should
 be an integer between 0 and 15.
 
 
 Sets the {\it i}th custom colour for the colour dialog. {\it i} should
 be an integer between 0 and 15.
 
-The default custom colours are all white.
+The default custom colours are invalid colours.
+
 
 \membersection{wxColourData::operator $=$}\label{wxcolourdataassign}
 
 \func{void}{operator $=$}{\param{const wxColourData\&}{ data}}
 
 
 \membersection{wxColourData::operator $=$}\label{wxcolourdataassign}
 
 \func{void}{operator $=$}{\param{const wxColourData\&}{ data}}
 
-Assingment operator for the colour data.
+Assignment operator for the colour data.
+
+
+
 
 \section{\class{wxColourDatabase}}\label{wxcolourdatabase}
 
 
 \section{\class{wxColourDatabase}}\label{wxcolourdatabase}
 
-wxWindows maintains a database of standard RGB colours for a predefined
+wxWidgets maintains a database of standard RGB colours for a predefined
 set of named colours (such as ``BLACK'', ``LIGHT GREY''). The
 set of named colours (such as ``BLACK'', ``LIGHT GREY''). The
-application may add to this set if desired by using {\it Append}.  There
-is only one instance of this class: {\bf wxTheColourDatabase}.
+application may add to this set if desired by using
+\helpref{AddColour}{wxcolourdatabaseaddcolour} and may use it to look up
+colours by names using \helpref{Find}{wxcolourdatabasefind} or find the names
+for the standard colour suing \helpref{FindName}{wxcolourdatabasefindname}.
+
+There is one predefined instance of this class called
+{\bf wxTheColourDatabase}.
 
 \wxheading{Derived from}
 
 
 \wxheading{Derived from}
 
-\helpref{wxList}{wxlist}\\
-\helpref{wxObject}{wxobject}
+None
 
 \wxheading{Include files}
 
 <wx/gdicmn.h>
 
 
 \wxheading{Include files}
 
 <wx/gdicmn.h>
 
+\wxheading{Library}
+
+\helpref{wxCore}{librarieslist}
+
 \wxheading{Remarks}
 
 \wxheading{Remarks}
 
-The colours in the standard database are as follows:
+The standard database contains at least the following colours:
 
 AQUAMARINE, BLACK, BLUE, BLUE VIOLET, BROWN, CADET BLUE, CORAL,
 CORNFLOWER BLUE, CYAN, DARK GREY, DARK GREEN, DARK OLIVE GREEN, DARK
 
 AQUAMARINE, BLACK, BLUE, BLUE VIOLET, BROWN, CADET BLUE, CORAL,
 CORNFLOWER BLUE, CYAN, DARK GREY, DARK GREEN, DARK OLIVE GREEN, DARK
@@ -258,29 +372,40 @@ YELLOW GREEN.
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
+
 \membersection{wxColourDatabase::wxColourDatabase}\label{wxcolourdatabaseconstr}
 
 \func{}{wxColourDatabase}{\void}
 
 \membersection{wxColourDatabase::wxColourDatabase}\label{wxcolourdatabaseconstr}
 
 \func{}{wxColourDatabase}{\void}
 
-Constructs the colour database.
+Constructs the colour database. It will be initialized at the first use.
 
 
-\membersection{wxColourDatabase::FindColour}\label{wxcolourdatabasefindcolour}
 
 
-\func{wxColour*}{FindColour}{\param{const wxString\& }{colourName}}
+\membersection{wxColourDatabase::AddColour}\label{wxcolourdatabaseaddcolour}
 
 
-Finds a colour given the name. Returns NULL if not found.
+\func{void}{AddColour}{\param{const wxString\& }{colourName}, \param{const wxColour\&}{colour}}
 
 
-\membersection{wxColourDatabase::FindName}\label{wxcolourdatabasefindname}
+\func{void}{AddColour}{\param{const wxString\& }{colourName}, \param{wxColour* }{colour}}
 
 
-\constfunc{wxString}{FindName}{\param{const wxColour\&}{ colour}}
+Adds a colour to the database. If a colour with the same name already exists,
+it is replaced.
+
+Please note that the overload taking a pointer is deprecated and will be
+removed in the next wxWidgets version, please don't use it.
+
+
+\membersection{wxColourDatabase::Find}\label{wxcolourdatabasefind}
 
 
-Finds a colour name given the colour. Returns NULL if not found.
+\func{wxColour}{Find}{\param{const wxString\& }{colourName}}
 
 
-\membersection{wxColourDatabase::Initialize}\label{wxcolourdatabaseinitialize}
+Finds a colour given the name. Returns an invalid colour object (that is, such
+that its \helpref{Ok()}{wxcolourisok} method returns \false) if the colour wasn't
+found in the database.
 
 
-\func{void}{Initialize}{\void}
 
 
-Initializes the database with a number of stock colours.  Called by wxWindows
-on start-up.
+\membersection{wxColourDatabase::FindName}\label{wxcolourdatabasefindname}
+
+\constfunc{wxString}{FindName}{\param{const wxColour\&}{ colour}}
 
 
+Finds a colour name given the colour. Returns an empty string if the colour is
+not found in the database.