#endif
class WXDLLEXPORT wxTextCtrl;
+class WXDLLEXPORT wxTextCtrlBase;
// ----------------------------------------------------------------------------
// constants
// doesn't have focus - use this style to force it to always show it
#define wxTE_NOHIDESEL 0x2000
+// use wxHSCROLL to not wrap text at all, wxTE_LINEWRAP to wrap it at any
+// position and wxTE_WORDWRAP to wrap at words boundary
+#define wxTE_DONTWRAP wxHSCROLL
+#define wxTE_LINEWRAP 0x4000
+#define wxTE_WORDWRAP 0x0000 // it's just == !wxHSCROLL
+
+// force using RichEdit version 2.0 or 3.0 instead of 1.0 (default) for
+// wxTE_RICH controls - can be used together with or instead of wxTE_RICH
+#define wxTE_RICH2 0x8000
+
// ----------------------------------------------------------------------------
// wxTextAttr: a structure containing the visual attributes of a text
// ----------------------------------------------------------------------------
return !HasTextColour() && !HasBackgroundColour() && !HasFont();
}
+ // return the attribute having the valid font and colours: it uses the
+ // attributes set in attr and falls back first to attrDefault and then to
+ // the text control font/colours for those attributes which are not set
+ static wxTextAttr Combine(const wxTextAttr& attr,
+ const wxTextAttr& attrDef,
+ const wxTextCtrlBase *text);
+
private:
wxColour m_colText,
m_colBack;
virtual wxString GetValue() const = 0;
virtual void SetValue(const wxString& value) = 0;
+ virtual wxString GetRange(long from, long to) const;
+
virtual int GetLineLength(long lineNo) const = 0;
virtual wxString GetLineText(long lineNo) const = 0;
virtual int GetNumberOfLines() const = 0;
// If the return values from and to are the same, there is no selection.
virtual void GetSelection(long* from, long* to) const = 0;
+ virtual wxString GetStringSelection() const;
+
// operations
// ----------