X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/50e55c13ea2da06b1b03069673ae45edd780fc99..36a0190ebd5bd9a7302f60f6dcd608b80574e21c:/interface/wx/textctrl.h diff --git a/interface/wx/textctrl.h b/interface/wx/textctrl.h index 048cf6564a..090e87f247 100644 --- a/interface/wx/textctrl.h +++ b/interface/wx/textctrl.h @@ -2,7 +2,6 @@ // Name: textctrl.h // Purpose: interface of wxTextAttr // Author: wxWidgets team -// RCS-ID: $Id$ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -87,19 +86,23 @@ enum wxTextAttrFlags wxTEXT_ATTR_BACKGROUND_COLOUR = 0x00000002, wxTEXT_ATTR_FONT_FACE = 0x00000004, - wxTEXT_ATTR_FONT_SIZE = 0x00000008, + wxTEXT_ATTR_FONT_POINT_SIZE = 0x00000008, + wxTEXT_ATTR_FONT_PIXEL_SIZE = 0x10000000, wxTEXT_ATTR_FONT_WEIGHT = 0x00000010, wxTEXT_ATTR_FONT_ITALIC = 0x00000020, wxTEXT_ATTR_FONT_UNDERLINE = 0x00000040, + wxTEXT_ATTR_FONT_STRIKETHROUGH = 0x08000000, wxTEXT_ATTR_FONT_ENCODING = 0x02000000, wxTEXT_ATTR_FONT_FAMILY = 0x04000000, + wxTEXT_ATTR_FONT_SIZE = \ + ( wxTEXT_ATTR_FONT_POINT_SIZE | wxTEXT_ATTR_FONT_PIXEL_SIZE ), /** Defined as the combination of all @c wxTEXT_ATTR_FONT_* values above. */ wxTEXT_ATTR_FONT = \ ( wxTEXT_ATTR_FONT_FACE | wxTEXT_ATTR_FONT_SIZE | wxTEXT_ATTR_FONT_WEIGHT | \ - wxTEXT_ATTR_FONT_ITALIC | wxTEXT_ATTR_FONT_UNDERLINE | wxTEXT_ATTR_FONT_ENCODING | wxTEXT_ATTR_FONT_FAMILY ), + wxTEXT_ATTR_FONT_ITALIC | wxTEXT_ATTR_FONT_UNDERLINE | wxTEXT_ATTR_FONT_STRIKETHROUGH | wxTEXT_ATTR_FONT_ENCODING | wxTEXT_ATTR_FONT_FAMILY ), wxTEXT_ATTR_ALIGNMENT = 0x00000080, wxTEXT_ATTR_LEFT_INDENT = 0x00000100, @@ -175,7 +178,9 @@ enum wxTextAttrBulletStyle wxTEXT_ATTR_BULLET_STYLE_ALIGN_LEFT = 0x00000000, wxTEXT_ATTR_BULLET_STYLE_ALIGN_RIGHT = 0x00001000, - wxTEXT_ATTR_BULLET_STYLE_ALIGN_CENTRE = 0x00002000 + wxTEXT_ATTR_BULLET_STYLE_ALIGN_CENTRE = 0x00002000, + + wxTEXT_ATTR_BULLET_STYLE_CONTINUATION = 0x00004000 }; /** @@ -290,6 +295,14 @@ public: const wxTextAttr& overlay); + /** + Partial equality test. If @a weakTest is @true, attributes of this object do not + have to be present if those attributes of @a attr are present. If @a weakTest is + @false, the function will fail if an attribute is present in @a attr but not + in this object. + */ + bool EqPartial(const wxTextAttr& attr, bool weakTest = true) const; + /** @name GetXXX functions */ @@ -567,10 +580,20 @@ public: bool HasFontItalic() const; /** - Returns @true if the attribute object specifies a font point size. + Returns @true if the attribute object specifies a font point or pixel size. */ bool HasFontSize() const; + /** + Returns @true if the attribute object specifies a font point size. + */ + bool HasFontPointSize() const; + + /** + Returns @true if the attribute object specifies a font pixel size. + */ + bool HasFontPixelSize() const; + /** Returns @true if the attribute object specifies either underlining or no underlining. @@ -738,7 +761,7 @@ public: Sets the attributes for the given font. Note that wxTextAttr does not store an actual wxFont object. */ - void SetFont(const wxFont& font, int flags = wxTEXT_ATTR_FONT); + void SetFont(const wxFont& font, int flags = wxTEXT_ATTR_FONT & ~wxTEXT_ATTR_FONT_PIXEL_SIZE); /** Sets the font encoding. @@ -760,6 +783,16 @@ public: */ void SetFontSize(int pointSize); + /** + Sets the font size in points. + */ + void SetFontPointSize(int pointSize); + + /** + Sets the font size in pixels. + */ + void SetFontPixelSize(int pixelSize); + /** Sets the font style (normal, italic or slanted). */ @@ -904,7 +937,7 @@ public: @beginStyleTable @style{wxTE_PROCESS_ENTER} - The control will generate the event @c wxEVT_COMMAND_TEXT_ENTER + The control will generate the event @c wxEVT_TEXT_ENTER (otherwise pressing Enter key is either processed internally by the control or used for navigation between dialog controls). @style{wxTE_PROCESS_TAB} @@ -1099,14 +1132,14 @@ public: @beginEventEmissionTable{wxCommandEvent} @event{EVT_TEXT(id, func)} - Respond to a @c wxEVT_COMMAND_TEXT_UPDATED event, generated when the text + Respond to a @c wxEVT_TEXT event, generated when the text changes. Notice that this event will be sent when the text controls contents changes -- whether this is due to user input or comes from the program itself (for example, if wxTextCtrl::SetValue() is called); see wxTextCtrl::ChangeValue() for a function which does not send this event. This event is however not sent during the control creation. @event{EVT_TEXT_ENTER(id, func)} - Respond to a @c wxEVT_COMMAND_TEXT_ENTER event, generated when enter is + Respond to a @c wxEVT_TEXT_ENTER event, generated when enter is pressed in a text control which must have wxTE_PROCESS_ENTER style for this event to be generated. @event{EVT_TEXT_URL(id, func)} @@ -1119,7 +1152,7 @@ public: @library{wxcore} @category{ctrl} - @appearance{textctrl.png} + @appearance{textctrl} @see wxTextCtrl::Create, wxValidator */ @@ -1189,11 +1222,6 @@ public: const wxValidator& validator = wxDefaultValidator, const wxString& name = wxTextCtrlNameStr); - /** - Copies the selected text to the clipboard and removes the selection. - */ - virtual void Cut(); - /** Resets the internal modified flag as if the current changes had been saved. @@ -1528,6 +1556,33 @@ public: +wxEventType wxEVT_TEXT; +wxEventType wxEVT_TEXT_ENTER; +wxEventType wxEVT_TEXT_URL; +wxEventType wxEVT_TEXT_MAXLEN; + + +class wxTextUrlEvent : public wxCommandEvent +{ +public: + wxTextUrlEvent(int winid, const wxMouseEvent& evtMouse, + long start, long end); + + wxTextUrlEvent(const wxTextUrlEvent& event); + + // get the mouse event which happened over the URL + const wxMouseEvent& GetMouseEvent() const; + + // get the start of the URL + long GetURLStart() const; + + // get the end of the URL + long GetURLEnd() const; + + virtual wxEvent *Clone() const; +}; + + /** @class wxStreamToTextRedirector