X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1fded56b375bf7a4687af1cdb182899614c1b2a8..5dacf03c57128529219145bafe9cee07d4348e85:/wxPython/src/controls.i diff --git a/wxPython/src/controls.i b/wxPython/src/controls.i index f6146b9e27..461262b48e 100644 --- a/wxPython/src/controls.i +++ b/wxPython/src/controls.i @@ -49,6 +49,7 @@ //---------------------------------------------------------------------- %readonly +// See also wxPy_ReinitStockObjects in helpers.cpp wxValidator wxDefaultValidator; %readwrite @@ -457,7 +458,11 @@ public: } PyObject* GetClientData(int n) { +#ifdef __WXMAC__ + wxPyClientData* data = (wxPyClientData*)self->wxItemContainer::GetClientObject(n); +#else wxPyClientData* data = (wxPyClientData*)self->GetClientObject(n); +#endif if (data) { Py_INCREF(data->m_obj); return data->m_obj; @@ -469,7 +474,11 @@ public: void SetClientData(int n, PyObject* clientData) { wxPyClientData* data = new wxPyClientData(clientData); +#ifdef __WXMAC__ + self->wxItemContainer::SetClientObject(n, data); +#else self->SetClientObject(n, data); +#endif } } @@ -719,6 +728,56 @@ public: //---------------------------------------------------------------------- +enum { + // Styles + wxTE_NO_VSCROLL, + wxTE_AUTO_SCROLL, + wxTE_READONLY, + wxTE_MULTILINE, + wxTE_PROCESS_TAB, + wxTE_LEFT, + wxTE_CENTER, + wxTE_RIGHT, + wxTE_CENTRE, + wxTE_RICH, + wxTE_PROCESS_ENTER, + wxTE_PASSWORD, + wxTE_AUTO_URL, + wxTE_NOHIDESEL, + wxTE_DONTWRAP, + wxTE_LINEWRAP, + wxTE_WORDWRAP, + wxTE_RICH2, + + // Flags to indicate which attributes are being applied + wxTEXT_ATTR_TEXT_COLOUR, + wxTEXT_ATTR_BACKGROUND_COLOUR, + wxTEXT_ATTR_FONT_FACE, + wxTEXT_ATTR_FONT_SIZE, + wxTEXT_ATTR_FONT_WEIGHT, + wxTEXT_ATTR_FONT_ITALIC, + wxTEXT_ATTR_FONT_UNDERLINE, + wxTEXT_ATTR_FONT, + wxTEXT_ATTR_ALIGNMENT, + wxTEXT_ATTR_LEFT_INDENT, + wxTEXT_ATTR_RIGHT_INDENT, + wxTEXT_ATTR_TABS, + +}; + + +enum wxTextAttrAlignment +{ + wxTEXT_ALIGNMENT_DEFAULT, + wxTEXT_ALIGNMENT_LEFT, + wxTEXT_ALIGNMENT_CENTRE, + wxTEXT_ALIGNMENT_CENTER, + wxTEXT_ALIGNMENT_RIGHT, + wxTEXT_ALIGNMENT_JUSTIFIED +}; + + + class wxTextAttr { @@ -726,22 +785,41 @@ public: // ctors wxTextAttr(const wxColour& colText = wxNullColour, const wxColour& colBack = wxNullColour, - const wxFont& font = wxNullFont); + const wxFont& font = wxNullFont, + wxTextAttrAlignment alignment = wxTEXT_ALIGNMENT_DEFAULT); ~wxTextAttr(); + void Init(); + // setters void SetTextColour(const wxColour& colText); void SetBackgroundColour(const wxColour& colBack); void SetFont(const wxFont& font); + void SetAlignment(wxTextAttrAlignment alignment); + void SetTabs(const wxArrayInt& tabs); + void SetLeftIndent(int indent); + void SetRightIndent(int indent); + void SetFlags(long flags); // accessors bool HasTextColour() const; bool HasBackgroundColour() const; bool HasFont() const; + bool HasAlignment() const; + bool HasTabs() const; + bool HasLeftIndent() const; + bool HasRightIndent() const; + bool HasFlag(long flag) const; wxColour GetTextColour() const; wxColour GetBackgroundColour() const; wxFont GetFont() const; + wxTextAttrAlignment GetAlignment(); + const wxArrayInt& GetTabs() const; + long GetLeftIndent() const; + long GetRightIndent() const; + long GetFlags() const; + // returns false if we have any attributes set, true otherwise bool IsDefault(); @@ -825,6 +903,7 @@ public: bool SetStyle(long start, long end, const wxTextAttr& style); bool SetDefaultStyle(const wxTextAttr& style); const wxTextAttr& GetDefaultStyle() const; + bool GetStyle(long position, wxTextAttr& style); // translate between the position (which is just an index in the text ctrl // considering all its contents as a single strings) and (x, y) coordinates