//---------------------------------------------------------------------------
-%{
- DECLARE_DEF_STRING(TextCtrlNameStr);
-%}
+MAKE_CONST_WXSTRING(TextCtrlNameStr);
//---------------------------------------------------------------------------
%newgroup
// doesn't have focus - use this style to force it to always show it
wxTE_NOHIDESEL,
- // use wxHSCROLL to not wrap text at all, wxTE_LINEWRAP to wrap it at any
- // position and wxTE_WORDWRAP to wrap at words boundary
+ // use wxHSCROLL (wxTE_DONTWRAP) to not wrap text at all, wxTE_CHARWRAP to
+ // wrap it at any position and wxTE_WORDWRAP to wrap at words boundary
+ //
+ // if no wrapping style is given at all, the control wraps at word boundary
wxTE_DONTWRAP,
- wxTE_LINEWRAP,
+ wxTE_CHARWRAP,
wxTE_WORDWRAP,
+ wxTE_BESTWRAP,
+
+ // obsolete synonym
+ wxTE_LINEWRAP,
// 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
wxTE_RICH2,
+
+ wxTE_CAPITALIZE,
};
wxTEXT_ATTR_TABS
};
+enum wxTextCtrlHitTestResult
+{
+ wxTE_HT_UNKNOWN = -2, // this means HitTest() is simply not implemented
+ wxTE_HT_BEFORE, // either to the left or upper
+ wxTE_HT_ON_TEXT, // directly on
+ wxTE_HT_BELOW, // below [the last line]
+ wxTE_HT_BEYOND // after [the end of line]
+};
+
+
+enum {
+ wxOutOfRangeTextCoord,
+ wxInvalidTextCoord
+};
+
//---------------------------------------------------------------------------
// wxTextAttr: a structure containing the visual attributes of a text
class wxTextAttr
{
public:
- %nokwargs wxTextAttr;
- wxTextAttr();
- wxTextAttr(const wxColour& colText,
+ wxTextAttr(const wxColour& colText = wxNullColour,
const wxColour& colBack = wxNullColour,
const wxFont& font = wxNullFont,
wxTextAttrAlignment alignment = wxTEXT_ALIGNMENT_DEFAULT);
-
+ ~wxTextAttr();
+
// operations
void Init();
void SetFont(const wxFont& font, long flags = wxTEXT_ATTR_FONT);
void SetAlignment(wxTextAttrAlignment alignment);
void SetTabs(const wxArrayInt& tabs);
- void SetLeftIndent(int indent);
+ void SetLeftIndent(int indent, int subIndent=0);
void SetRightIndent(int indent);
void SetFlags(long flags);
wxTextAttrAlignment GetAlignment() const;
const wxArrayInt& GetTabs() const;
long GetLeftIndent() const;
+ long GetLeftSubIndent() const;
long GetRightIndent() const;
long GetFlags() const;
// wxTextCtrl: a single or multiple line text zone where user can enter and
// edit text
+MustHaveApp(wxTextCtrl);
class wxTextCtrl : public wxControl
{
public:
- %addtofunc wxTextCtrl "self._setOORInfo(self)"
- %addtofunc wxTextCtrl() ""
+ %pythonAppend wxTextCtrl "self._setOORInfo(self)"
+ %pythonAppend wxTextCtrl() ""
+ %typemap(out) wxTextCtrl*; // turn off this typemap
- wxTextCtrl(wxWindow* parent, wxWindowID id,
+ wxTextCtrl(wxWindow* parent, wxWindowID id=-1,
const wxString& value = wxPyEmptyString,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = 0,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxPyTextCtrlNameStr);
- %name(PreTextCtrl)wxTextCtrl();
+ %RenameCtor(PreTextCtrl, wxTextCtrl());
- bool Create(wxWindow* parent, wxWindowID id,
+ // Turn it back on again
+ %typemap(out) wxTextCtrl* { $result = wxPyMake_wxObject($1, $owner); }
+
+ bool Create(wxWindow* parent, wxWindowID id=-1,
const wxString& value = wxPyEmptyString,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
bool IsSingleLine() const;
bool IsMultiLine() const;
- // If the return values from and to are the same, there is no selection.
- virtual void GetSelection(long* OUTPUT, long* OUTPUT) const;
+
+ DocDeclAStr(
+ virtual void, GetSelection(long* OUTPUT, long* OUTPUT) const,
+ "GetSelection() -> (from, to)",
+ "If the return values from and to are the same, there is no selection.", "");
virtual wxString GetStringSelection() const;
// considering all its contents as a single strings) and (x, y) coordinates
// which represent column and line.
virtual long XYToPosition(long x, long y) const;
- virtual /*bool*/ void PositionToXY(long pos, long *OUTPUT, long *OUTPUT) const;
+ DocDeclA(
+ virtual /*bool*/ void, PositionToXY(long pos, long *OUTPUT, long *OUTPUT) const,
+ "PositionToXY(long pos) -> (x, y)");
virtual void ShowPosition(long pos);
+
+ DocDeclAStr(
+ virtual wxTextCtrlHitTestResult, HitTest(const wxPoint& pt,
+ long* OUTPUT, long* OUTPUT) const,
+ "HitTest(Point pt) -> (result, col, row)",
+ "Find the row, col coresponding to the character at the point given in
+pixels. NB: pt is in device coords but is not adjusted for the client
+area origin nor scrolling.", "");
+
+
+ DocDeclAStrName(
+ virtual wxTextCtrlHitTestResult , HitTest(const wxPoint& pt, long *OUTPUT) const,
+ "HitTestPos(Point pt) -> (result, position)",
+ "Find the character position in the text coresponding to the point
+given in pixels. NB: pt is in device coords but is not adjusted for
+the client area origin nor scrolling. ", "",
+ HitTestPos);
+
+
+
// Clipboard operations
virtual void Copy();
virtual void Cut();
#ifdef __WXMSW__
// Caret handling (Windows only)
- bool ShowNativeCaret(bool show = True);
+ bool ShowNativeCaret(bool show = true);
bool HideNativeCaret();
#endif
}
}
+ static wxVisualAttributes
+ GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
};
//---------------------------------------------------------------------------