class wxControl : public wxWindow
{
public:
+
+ /**
+ Constructs a control.
+
+ @param parent
+ Pointer to a parent window.
+ @param id
+ Control identifier. If wxID_ANY, will automatically create an identifier.
+ @param pos
+ Control position. wxDefaultPosition indicates that wxWidgets
+ should generate a default position for the control.
+ @param size
+ Control size. wxDefaultSize indicates that wxWidgets should generate
+ a default size for the window. If no suitable size can be found, the
+ window will be sized to 20x20 pixels so that the window is visible but
+ obviously not correctly sized.
+ @param style
+ Control style. For generic window styles, please see wxWindow.
+ @param name
+ Control name.
+ */
+ wxControl(wxWindow *parent, wxWindowID id,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize, long style = 0,
+ const wxValidator& validator = wxDefaultValidator,
+ const wxString& name = wxControlNameStr);
+
+ /**
+ Default constructor to allow 2-phase creation.
+ */
+ wxControl();
+
+ bool Create(wxWindow *parent, wxWindowID id,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize, long style = 0,
+ const wxValidator& validator = wxDefaultValidator,
+ const wxString& name = wxControlNameStr);
+
/**
Simulates the effect of the user issuing a command to the item.
following character is a @e mnemonic for this control and can be used to
activate it from the keyboard (typically by using @e Alt key in
combination with it). To insert a literal ampersand character, you need
- to double it, i.e. use use "&&". If this behaviour is undesirable, use
+ to double it, i.e. use "&&". If this behaviour is undesirable, use
SetLabelText() instead.
*/
void SetLabel(const wxString& label);
Sets the controls label to a string using markup.
Simple markup supported by this function can be used to apply different
- fonts or colours to different parts of the control label when supported
- (currently only wxStaticText under GTK+ 2). If markup is not supported
- by the control or platform, it is simply stripped and SetLabel() is
- used with the resulting string.
+ fonts or colours to different parts of the control label when supported.
+ If markup is not supported by the control or platform, it is simply
+ stripped and SetLabel() is used with the resulting string.
For example,
@code
@param markup
- String containing markup for the label. It may contain newline
- characters and the markup tags described above.
+ String containing markup for the label. It may contain markup tags
+ described above and newline characters but currently only wxGTK and
+ wxOSX support multiline labels with markup, the generic
+ implementation (also used in wxMSW) only handles single line markup
+ labels. Notice that the string must be well-formed (e.g. all tags
+ must be correctly closed) and won't be shown at all otherwise.
@return
@true if the new label was set (even if markup in it was ignored)
or @false if we failed to parse the markup. In this case the label
remains unchanged.
- Note that the string must be well-formed (e.g. all tags must be correctly
- closed) and won't be shown at all otherwise.
+
+ Currently wxButton supports markup in all major ports (wxMSW, wxGTK and
+ wxOSX/Cocoa) while wxStaticText supports it in wxGTK and wxOSX and its
+ generic version (which can be used under MSW if markup support is
+ required). Extending support to more controls is planned in the future.
@since 2.9.2
*/