Supporting XP requires too many hacks, and while it wouldn't be very difficult to support Vista as long as we support Windows 7, it's still not worth it because nobody uses this system anyhow. Remove most of XP-specific code and don't use wxDynamicLibrary for using the functions not present in it any longer. Don't use <wspiapi.h> neither as we shouldn't use it any more. Update some comments to not mention Windows versions not supported any longer and also remove mentions of "Vista and newer Windows versions" from the documentation as this is now always the case. This commit is best viewed ignoring whitespace-only changes.
171 lines
5.6 KiB
Objective-C
171 lines
5.6 KiB
Objective-C
/////////////////////////////////////////////////////////////////////////////
|
|
// Name: wx/commandlinkbutton.h
|
|
// Purpose: interface of wxCommandLinkButton
|
|
// Author: wxWidgets team
|
|
// Licence: wxWindows licence
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
/**
|
|
@class wxCommandLinkButton
|
|
|
|
Objects of this class are similar in appearance to the normal wxButtons but
|
|
are similar to the links in a web page in functionality.
|
|
|
|
Pressing such button usually results in switching to another window of the
|
|
program and so they can be used as a replacement for the "Next" button in a
|
|
multi-page dialog (such as wxWizard), for example.
|
|
|
|
Their advantage compared to the ordinary wxButtons is that they emphasize
|
|
the action of switching the window and also that they allow to give more
|
|
detailed explanation to the user because, in addition to the short button
|
|
label, they also show a longer description string.
|
|
|
|
The short, title-like, part of the label is called the <em>main label</em>
|
|
and the longer description is the <em>note</em>. Both of them can be set
|
|
and queried independently using wxCommandLinkButton-specific methods such
|
|
as SetMainLabel() or GetNote() or also via SetLabel() and GetLabel()
|
|
methods inherited from wxButton. When using the latter, the main label and
|
|
the note are concatenated into a single string using a new line character
|
|
between them (notice that the note part can have more new lines in it).
|
|
|
|
wxCommandLinkButton generates the same event as wxButton but doesn't
|
|
support any of wxButton-specific styles nor adds any new styles of its own.
|
|
|
|
Currently this class uses native implementation under Windows and a generic
|
|
implementation for the other platforms.
|
|
|
|
@since 2.9.2
|
|
|
|
@library{wxcore}
|
|
@category{ctrl}
|
|
@appearance{commandlinkbutton}
|
|
|
|
@see wxButton, wxBitmapButton
|
|
*/
|
|
class wxCommandLinkButton : public wxButton
|
|
{
|
|
public:
|
|
/**
|
|
Default constructor.
|
|
|
|
Use Create() to really create the control.
|
|
*/
|
|
wxCommandLinkButton();
|
|
|
|
/**
|
|
Constructor really creating a command Link button.
|
|
|
|
The button will be decorated with stock icons under GTK+ 2.
|
|
|
|
@param parent
|
|
Parent window. Must not be @NULL.
|
|
@param id
|
|
Button identifier. A value of wxID_ANY indicates a default value.
|
|
@param mainLabel
|
|
First line of text on the button, typically the label of an action
|
|
that will be made when the button is pressed.
|
|
@param note
|
|
Second line of text describing the action performed when the button
|
|
is pressed.
|
|
@param pos
|
|
Button position.
|
|
@param size
|
|
Button size. If the default size is specified then the button is sized
|
|
appropriately for the text.
|
|
@param style
|
|
Window style. See wxButton class description.
|
|
@param validator
|
|
Window validator.
|
|
@param name
|
|
Window name.
|
|
|
|
@see Create(), wxValidator
|
|
*/
|
|
wxCommandLinkButton(wxWindow* parent, wxWindowID id,
|
|
const wxString& mainLabel = wxEmptyString,
|
|
const wxString& note = wxEmptyString,
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
const wxSize& size = wxDefaultSize,
|
|
long style = 0,
|
|
const wxValidator& validator = wxDefaultValidator,
|
|
const wxString& name = wxButtonNameStr);
|
|
|
|
/**
|
|
Button creation function for two-step creation.
|
|
For more details, see wxCommandLinkButton().
|
|
*/
|
|
bool Create(wxWindow* parent, wxWindowID id,
|
|
const wxString& mainLabel = wxEmptyString,
|
|
const wxString& note = wxEmptyString,
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
const wxSize& size = wxDefaultSize,
|
|
long style = 0,
|
|
const wxValidator& validator = wxDefaultValidator,
|
|
const wxString& name = wxButtonNameStr);
|
|
|
|
/**
|
|
Sets a new main label and note for the button.
|
|
|
|
Neither of the arguments can be empty, if you need to change just the
|
|
label or just the note, use SetMainLabel() or SetNote() instead of this
|
|
function.
|
|
|
|
@param mainLabel
|
|
New main label to use.
|
|
@param note
|
|
New note to use.
|
|
*/
|
|
void SetMainLabelAndNote(const wxString& mainLabel, const wxString& note);
|
|
|
|
/**
|
|
Sets the string label and note for the button.
|
|
|
|
@param label
|
|
The label and note to set, with the two separated
|
|
by the first newline or none to set a blank note.
|
|
*/
|
|
virtual void SetLabel(const wxString& label);
|
|
|
|
/**
|
|
Returns the string label for the button.
|
|
|
|
@see SetLabel()
|
|
|
|
@return
|
|
A string with the main label and note concatenated
|
|
together with a newline separating them.
|
|
*/
|
|
wxString GetLabel() const;
|
|
|
|
/**
|
|
Changes the main label.
|
|
|
|
@param mainLabel
|
|
New main label to use.
|
|
*/
|
|
void SetMainLabel(const wxString& mainLabel);
|
|
|
|
/**
|
|
Changes the note.
|
|
|
|
@param note
|
|
New note to use.
|
|
*/
|
|
void SetNote(const wxString& note);
|
|
|
|
/**
|
|
Returns the current main label.
|
|
|
|
@return
|
|
Main label currently displayed.
|
|
*/
|
|
wxString GetMainLabel() const;
|
|
|
|
/**
|
|
Returns the currently used note.
|
|
|
|
@return
|
|
Note currently displayed.
|
|
*/
|
|
wxString GetNote() const;
|
|
};
|