git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			126 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			126 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /////////////////////////////////////////////////////////////////////////////
 | |
| // Name:        colour.h
 | |
| // Purpose:     wxColour class
 | |
| // Author:      David Webster
 | |
| // Modified by:
 | |
| // Created:     10/13/99
 | |
| // RCS-ID:      $Id$
 | |
| // Copyright:   (c) David Webster
 | |
| // Licence:     wxWindows licence
 | |
| /////////////////////////////////////////////////////////////////////////////
 | |
| 
 | |
| #ifndef _WX_COLOUR_H_
 | |
| #define _WX_COLOUR_H_
 | |
| 
 | |
| #include "wx/object.h"
 | |
| 
 | |
| // Colour
 | |
| class WXDLLEXPORT wxColour: public wxObject
 | |
| {
 | |
| public:
 | |
|     //
 | |
|     // Ctors
 | |
|     //
 | |
| 
 | |
|     //
 | |
|     // Default
 | |
|     //
 | |
|     wxColour();
 | |
| 
 | |
|     //
 | |
|     // from RGB
 | |
|     //
 | |
|     wxColour( unsigned char cRed
 | |
|              ,unsigned char cGreen
 | |
|              ,unsigned char cBlue
 | |
|             );
 | |
| 
 | |
|     wxColour( unsigned long colRGB ) { Set(colRGB); }
 | |
| 
 | |
|     //
 | |
|     // Implicit conversion from the colour name
 | |
|     //
 | |
|     wxColour(const wxString& rColourName) { InitFromName(rColourName); }
 | |
|     wxColour(const wxChar *zColourName) { InitFromName(zColourName); }
 | |
| 
 | |
|     //
 | |
|     // Copy ctors and assignment operators
 | |
|     //
 | |
|     wxColour(const wxColour& rCol);
 | |
|     wxColour(const wxColour* pCol);
 | |
|     wxColour&operator = (const wxColour& rCol);
 | |
| 
 | |
|     //
 | |
|     // Dtor
 | |
|     //
 | |
|     ~wxColour();
 | |
| 
 | |
|     //
 | |
|     // Set functions
 | |
|     //
 | |
|     void Set( unsigned char cRed
 | |
|              ,unsigned char cGreen
 | |
|              ,unsigned char cBlue
 | |
|             );
 | |
|     void Set(unsigned long lColRGB)
 | |
|     {
 | |
|         //
 | |
|         // We don't need to know sizeof(long) here because we assume that the three
 | |
|         // least significant bytes contain the R, G and B values
 | |
|         //
 | |
|         Set( (unsigned char)lColRGB
 | |
|             ,(unsigned char)(lColRGB >> 8)
 | |
|             ,(unsigned char)(lColRGB >> 16)
 | |
|            );
 | |
|     }
 | |
|     void Set(const wxString& rsColour)
 | |
|     {
 | |
|         InitFromName(rsColour);
 | |
|     }
 | |
| 
 | |
|     //
 | |
|     // Accessors
 | |
|     //
 | |
|     bool Ok(void) const {return m_bIsInit; }
 | |
| 
 | |
|     unsigned char Red(void) const { return m_cRed; }
 | |
|     unsigned char Green(void) const { return m_cGreen; }
 | |
|     unsigned char Blue(void) const { return m_cBlue; }
 | |
| 
 | |
|     //
 | |
|     // Comparison
 | |
|     //
 | |
|     bool operator == (const wxColour& rColour) const
 | |
|     {
 | |
|         return (m_bIsInit == rColour.m_bIsInit
 | |
|                 && m_cRed   == rColour.m_cRed
 | |
|                 && m_cGreen == rColour.m_cGreen
 | |
|                 && m_cBlue  == rColour.m_cBlue
 | |
|                );
 | |
|     }
 | |
| 
 | |
|     bool operator != (const wxColour& rColour) const { return !(*this == rColour); }
 | |
| 
 | |
|     WXCOLORREF GetPixel(void) const { return m_vPixel; };
 | |
| 
 | |
|     void InitFromName(const wxString& rCol);
 | |
| 
 | |
| private:
 | |
| 
 | |
|     // Helper function
 | |
|     void Init();
 | |
| 
 | |
|     bool                            m_bIsInit;
 | |
|     unsigned char                   m_cRed;
 | |
|     unsigned char                   m_cBlue;
 | |
|     unsigned char                   m_cGreen;
 | |
| 
 | |
| public:
 | |
|     WXCOLORREF                      m_vPixel ;
 | |
| private:
 | |
|   DECLARE_DYNAMIC_CLASS(wxColour)
 | |
| }; // end of class wxColour
 | |
| 
 | |
| #endif
 | |
|   // _WX_COLOUR_H_
 |