X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3f5506cfd36dce2b97c016be6ab8d4f60b195058..36a0190ebd5bd9a7302f60f6dcd608b80574e21c:/interface/wx/stattext.h?ds=sidebyside
diff --git a/interface/wx/stattext.h b/interface/wx/stattext.h
index 686ecaf4d4..19525e0ae7 100644
--- a/interface/wx/stattext.h
+++ b/interface/wx/stattext.h
@@ -2,44 +2,51 @@
// Name: stattext.h
// Purpose: interface of wxStaticText
// Author: wxWidgets team
-// RCS-ID: $Id$
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
+#define wxST_NO_AUTORESIZE 0x0001
+#define wxST_ELLIPSIZE_START 0x0004
+#define wxST_ELLIPSIZE_MIDDLE 0x0008
+#define wxST_ELLIPSIZE_END 0x0010
+
/**
@class wxStaticText
A static text control displays one or more lines of read-only text.
+ wxStaticText supports the three classic text alignments, label
+ ellipsization i.e. replacing parts of the text with the ellipsis ("...") if
+ the label doesn't fit into the provided space and also formatting markup
+ with wxControl::SetLabelMarkup().
@beginStyleTable
@style{wxALIGN_LEFT}
- Align the text to the left
+ Align the text to the left.
@style{wxALIGN_RIGHT}
- Align the text to the right
- @style{wxALIGN_CENTRE}
- Center the text (horizontally)
+ Align the text to the right.
+ @style{wxALIGN_CENTRE_HORIZONTAL}
+ Center the text (horizontally).
@style{wxST_NO_AUTORESIZE}
By default, the control will adjust its size to exactly fit to the
- size of the text when SetLabel is called. If this style flag is
+ size of the text when SetLabel() is called. If this style flag is
given, the control will not change its size (this style is
- especially useful with controls which also have wxALIGN_RIGHT or
- CENTER style because otherwise they won't make sense any longer
- after a call to SetLabel)
+ especially useful with controls which also have the @c wxALIGN_RIGHT or
+ the @c wxALIGN_CENTRE_HORIZONTAL style because otherwise they won't make sense any
+ longer after a call to SetLabel()).
@style{wxST_ELLIPSIZE_START}
- If the text width exceeds the control width, replace the beginning
- of the text with an ellipsis
+ If the labeltext width exceeds the control width, replace the beginning
+ of the label with an ellipsis; uses wxControl::Ellipsize.
@style{wxST_ELLIPSIZE_MIDDLE}
- Same as above, but replace the text in the middle of the control
- with an ellipsis
+ If the label text width exceeds the control width, replace the middle
+ of the label with an ellipsis; uses wxControl::Ellipsize.
@style{wxST_ELLIPSIZE_END}
- Same as above, but replace the end of the text with an ellipsis
- @style{wxST_MARKUP}
- Support markup in the label; see SetLabel for more information
+ If the label text width exceeds the control width, replace the end
+ of the label with an ellipsis; uses wxControl::Ellipsize.
@endStyleTable
@library{wxcore}
@category{ctrl}
-
+ @appearance{statictext}
@see wxStaticBitmap, wxStaticBox
*/
@@ -50,7 +57,7 @@ public:
Default constructor.
*/
wxStaticText();
-
+
/**
Constructor, creating and showing a text control.
@@ -76,137 +83,28 @@ public:
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = 0,
- const wxString& name = "staticText");
+ const wxString& name = wxStaticTextNameStr);
/**
Creation function, for two-step construction. For details see wxStaticText().
*/
- bool Create(wxWindow* parent, wxWindowID id,
- const wxString& label,
+ bool Create(wxWindow* parent, wxWindowID id, const wxString& label,
const wxPoint& pos = wxDefaultPosition,
- const wxSize& size = wxDefaultSize,
- long style = 0,
- const wxString& name = "staticText");
+ const wxSize& size = wxDefaultSize, long style = 0,
+ const wxString& name = wxStaticTextNameStr);
/**
- Returns the contents of the control.
- Note that the returned string contains both the mnemonics (@c characters),
- if any, and markup tags, if any.
- Use GetLabelText() if only the
- label text is needed.
+ Returns @true if the window styles for this control contains one of the
+ @c wxST_ELLIPSIZE_START, @c wxST_ELLIPSIZE_MIDDLE or @c wxST_ELLIPSIZE_END styles.
*/
- wxString GetLabel() const;
-
- //@{
- /**
- The first form returns the control's label without the mnemonics characters (if
- any)
- and without the markup (if the control has @c wxST_MARKUP style).
- The second (static) version returns the given @a label string without the
- mnemonics
- characters (if any) and without the markup.
- */
- wxString GetLabelText();
- const static wxString GetLabelText(const wxString& label);
- //@}
-
- /**
- Sets the static text label and updates the controls size to exactly fit the
- label unless the control has wxST_NO_AUTORESIZE flag.
- This function allows to set decorated static label text on platforms which
- support it (currently only GTK+ 2). For the other platforms, the markup is
- ignored.
- The supported tags are:
-
-
- <b> |
- bold text |
-
-
- <big> |
- bigger text |
-
-
- <i> |
- italic text |
-
-
- <s> |
- strike-through text |
-
-
- <sub> |
- subscript text |
-
-
- <sup> |
- superscript text |
-
-
- <small> |
- smaller text |
-
-
- <tt> |
- monospaced text |
-
-
- <u> |
- underlined text |
-
-
- <span> |
- generic formatter tag; see Pango Markup for more information. |
-
-
-
- Note that the string must be well-formed (e.g. all tags must be correctly
- closed)
- otherwise it can be not shown correctly or at all.
- Also note that you need to escape the following special characters:
-
-
- @b Special character |
- @b Escape as |
-
-
- @c & |
- @c & or as && |
-
-
- @c ' |
- @c ' |
-
-
- @c " |
- @c " |
-
-
- @c < |
- @c < |
-
-
- @c > |
- @c > |
-
-
-
- The non-escaped ampersand @c & characters are interpreted as
- mnemonics; see wxControl::SetLabel.
-
- Example:
-
- @param label
- The new label to set. It may contain newline characters and the markup tags
- described above.
- */
- virtual void SetLabel(const wxString& label);
+ bool IsEllipsized() const;
/**
This functions wraps the controls label so that each of its lines becomes at
most @a width pixels wide if possible (the lines are broken at words
- boundaries so it might not be the case if words are too long). If @e width
- is negative, no wrapping is done. Note that this width is not
+ boundaries so it might not be the case if words are too long).
+
+ If @a width is negative, no wrapping is done. Note that this width is not
necessarily the total width of the control, since a few pixels for the
border (depending on the controls border style) may be added.