823f75c739
This is implmentation of the feature which is already implemented in the native wxColourPicker under wxGTK.
156 lines
4.9 KiB
Objective-C
156 lines
4.9 KiB
Objective-C
/////////////////////////////////////////////////////////////////////////////
|
||
// Name: clrpicker.h
|
||
// Purpose: interface of wxColourPickerCtrl
|
||
// Author: wxWidgets team
|
||
// Licence: wxWindows licence
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
|
||
#define wxCLRP_USE_TEXTCTRL (wxPB_USE_TEXTCTRL)
|
||
#define wxCLRP_DEFAULT_STYLE 0
|
||
#define wxCLRP_SHOW_LABEL 0x0008
|
||
#define wxCLRP_SHOW_ALPHA 0x0010
|
||
|
||
wxEventType wxEVT_COLOURPICKER_CHANGED;
|
||
|
||
|
||
/**
|
||
@class wxColourPickerCtrl
|
||
|
||
This control allows the user to select a colour. The generic implementation
|
||
is a button which brings up a wxColourDialog when clicked. Native
|
||
implementation may differ but this is usually a (small) widget which give
|
||
access to the colour-chooser dialog. It is only available if
|
||
@c wxUSE_COLOURPICKERCTRL is set to 1 (the default).
|
||
|
||
@beginStyleTable
|
||
@style{wxCLRP_DEFAULT_STYLE}
|
||
The default style: 0.
|
||
@style{wxCLRP_USE_TEXTCTRL}
|
||
Creates a text control to the left of the picker button which is
|
||
completely managed by the wxColourPickerCtrl and which can be used
|
||
by the user to specify a colour (see SetColour). The text control
|
||
is automatically synchronized with button's value. Use functions
|
||
defined in wxPickerBase to modify the text control.
|
||
@style{wxCLRP_SHOW_LABEL}
|
||
Shows the colour in HTML form (AABBCC) as colour button label
|
||
(instead of no label at all).
|
||
@style{wxCLRP_SHOW_ALPHA}
|
||
Allows to select opacity in the colour-chooser (effective under
|
||
wxGTK and wxOSX).
|
||
@endStyleTable
|
||
|
||
@beginEventEmissionTable{wxColourPickerEvent}
|
||
@event{EVT_COLOURPICKER_CHANGED(id, func)}
|
||
The user changed the colour selected in the control either using the
|
||
button or using text control (see @c wxCLRP_USE_TEXTCTRL; note that
|
||
in this case the event is fired only if the user’s input is valid,
|
||
i.e. recognizable).
|
||
@endEventTable
|
||
|
||
@library{wxcore}
|
||
@category{pickers}
|
||
@appearance{colourpickerctrl}
|
||
|
||
@see wxColourDialog, wxColourPickerEvent
|
||
*/
|
||
class wxColourPickerCtrl : public wxPickerBase
|
||
{
|
||
public:
|
||
wxColourPickerCtrl();
|
||
|
||
/**
|
||
Initializes the object and calls Create() with all the parameters.
|
||
*/
|
||
wxColourPickerCtrl(wxWindow* parent, wxWindowID id,
|
||
const wxColour& colour = *wxBLACK,
|
||
const wxPoint& pos = wxDefaultPosition,
|
||
const wxSize& size = wxDefaultSize,
|
||
long style = wxCLRP_DEFAULT_STYLE,
|
||
const wxValidator& validator = wxDefaultValidator,
|
||
const wxString& name = wxColourPickerCtrlNameStr);
|
||
|
||
/**
|
||
Creates a colour picker with the given arguments.
|
||
|
||
@param parent
|
||
Parent window, must not be non-@NULL.
|
||
@param id
|
||
The identifier for the control.
|
||
@param colour
|
||
The initial colour shown in the control.
|
||
@param pos
|
||
Initial position.
|
||
@param size
|
||
Initial size.
|
||
@param style
|
||
The window style, see wxCRLP_* flags.
|
||
@param validator
|
||
Validator which can be used for additional date checks.
|
||
@param name
|
||
Control name.
|
||
|
||
@return @true if the control was successfully created or @false if
|
||
creation failed.
|
||
*/
|
||
bool Create(wxWindow* parent, wxWindowID id,
|
||
const wxColour& colour = *wxBLACK,
|
||
const wxPoint& pos = wxDefaultPosition,
|
||
const wxSize& size = wxDefaultSize,
|
||
long style = wxCLRP_DEFAULT_STYLE,
|
||
const wxValidator& validator = wxDefaultValidator,
|
||
const wxString& name = wxColourPickerCtrlNameStr);
|
||
|
||
/**
|
||
Returns the currently selected colour.
|
||
*/
|
||
wxColour GetColour() const;
|
||
|
||
//@{
|
||
/**
|
||
Sets the currently selected colour. See wxColour::Set().
|
||
*/
|
||
void SetColour(const wxColour& col);
|
||
void SetColour(const wxString& colname);
|
||
//@}
|
||
};
|
||
|
||
|
||
|
||
/**
|
||
@class wxColourPickerEvent
|
||
|
||
This event class is used for the events generated by wxColourPickerCtrl.
|
||
|
||
@beginEventTable{wxColourPickerEvent}
|
||
@event{EVT_COLOURPICKER_CHANGED(id, func)}
|
||
Generated whenever the selected colour changes.
|
||
@endEventTable
|
||
|
||
@library{wxcore}
|
||
@category{events}
|
||
|
||
@see wxColourPickerCtrl
|
||
*/
|
||
class wxColourPickerEvent : public wxCommandEvent
|
||
{
|
||
public:
|
||
wxColourPickerEvent();
|
||
|
||
/**
|
||
The constructor is not normally used by the user code.
|
||
*/
|
||
wxColourPickerEvent(wxObject* generator, int id,
|
||
const wxColour& colour);
|
||
|
||
/**
|
||
Retrieve the colour the user has just selected.
|
||
*/
|
||
wxColour GetColour() const;
|
||
|
||
/**
|
||
Set the colour associated with the event.
|
||
*/
|
||
void SetColour(const wxColour& pos);
|
||
};
|
||
|