X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6a603a10e77f719458939d117e46f7d8ed0b372b..7e083675342b17762735ef2223fb9d264d6fc937:/include/wx/html/htmlcell.h diff --git a/include/wx/html/htmlcell.h b/include/wx/html/htmlcell.h index df6dfa709a..20816b9525 100644 --- a/include/wx/html/htmlcell.h +++ b/include/wx/html/htmlcell.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: htmlcell.h +// Name: wx/html/htmlcell.h // Purpose: wxHtmlCell class is used by wxHtmlWindow/wxHtmlWinParser // as a basic visual element of HTML page // Author: Vaclav Slavik @@ -34,9 +34,10 @@ class WXDLLIMPEXP_HTML wxHtmlSelection public: wxHtmlSelection() : m_fromPos(wxDefaultPosition), m_toPos(wxDefaultPosition), - m_fromPrivPos(wxDefaultPosition), m_toPrivPos(wxDefaultPosition), + m_fromCharacterPos(-1), m_toCharacterPos(-1), m_fromCell(NULL), m_toCell(NULL) {} + // this version is used for the user selection defined with the mouse void Set(const wxPoint& fromPos, const wxHtmlCell *fromCell, const wxPoint& toPos, const wxHtmlCell *toCell); void Set(const wxHtmlCell *fromCell, const wxHtmlCell *toCell); @@ -49,11 +50,13 @@ public: const wxPoint& GetToPos() const { return m_toPos; } // these are From/ToCell's private data - const wxPoint& GetFromPrivPos() const { return m_fromPrivPos; } - const wxPoint& GetToPrivPos() const { return m_toPrivPos; } - void SetFromPrivPos(const wxPoint& pos) { m_fromPrivPos = pos; } - void SetToPrivPos(const wxPoint& pos) { m_toPrivPos = pos; } - void ClearPrivPos() { m_toPrivPos = m_fromPrivPos = wxDefaultPosition; } + void ClearFromToCharacterPos() { m_toCharacterPos = m_fromCharacterPos = -1; } + bool AreFromToCharacterPosSet() const { return m_toCharacterPos != -1 && m_fromCharacterPos != -1; } + + void SetFromCharacterPos (wxCoord pos) { m_fromCharacterPos = pos; } + void SetToCharacterPos (wxCoord pos) { m_toCharacterPos = pos; } + wxCoord GetFromCharacterPos () const { return m_fromCharacterPos; } + wxCoord GetToCharacterPos () const { return m_toCharacterPos; } bool IsEmpty() const { return m_fromPos == wxDefaultPosition && @@ -61,7 +64,7 @@ public: private: wxPoint m_fromPos, m_toPos; - wxPoint m_fromPrivPos, m_toPrivPos; + wxCoord m_fromCharacterPos, m_toCharacterPos; const wxHtmlCell *m_fromCell, *m_toCell; }; @@ -352,7 +355,7 @@ protected: wxString m_id; DECLARE_ABSTRACT_CLASS(wxHtmlCell) - DECLARE_NO_COPY_CLASS(wxHtmlCell) + wxDECLARE_NO_COPY_CLASS(wxHtmlCell); }; @@ -395,7 +398,7 @@ protected: bool m_allowLinebreak; DECLARE_ABSTRACT_CLASS(wxHtmlWordCell) - DECLARE_NO_COPY_CLASS(wxHtmlWordCell) + wxDECLARE_NO_COPY_CLASS(wxHtmlWordCell); }; @@ -470,7 +473,7 @@ public: // returns background colour (of wxNullColour if none set), so that widgets can // adapt to it: wxColour GetBackgroundColour(); - void SetBorder(const wxColour& clr1, const wxColour& clr2) {m_UseBorder = true; m_BorderColour1 = clr1, m_BorderColour2 = clr2;} + void SetBorder(const wxColour& clr1, const wxColour& clr2, int border = 1) {m_Border = border; m_BorderColour1 = clr1, m_BorderColour2 = clr2;} virtual wxHtmlLinkInfo* GetLink(int x = 0, int y = 0) const; virtual const wxHtmlCell* Find(int condition, const void* param) const; @@ -529,7 +532,8 @@ protected: bool m_UseBkColour; wxColour m_BkColour; // background color of this container - bool m_UseBorder; + int m_Border; + // border size. Draw only if m_Border > 0 wxColour m_BorderColour1, m_BorderColour2; // borders color of this container int m_LastLayout; @@ -540,7 +544,7 @@ protected: DECLARE_ABSTRACT_CLASS(wxHtmlContainerCell) - DECLARE_NO_COPY_CLASS(wxHtmlContainerCell) + wxDECLARE_NO_COPY_CLASS(wxHtmlContainerCell); }; @@ -564,7 +568,7 @@ protected: unsigned m_Flags; DECLARE_ABSTRACT_CLASS(wxHtmlColourCell) - DECLARE_NO_COPY_CLASS(wxHtmlColourCell) + wxDECLARE_NO_COPY_CLASS(wxHtmlColourCell); }; @@ -588,7 +592,7 @@ protected: wxFont m_Font; DECLARE_ABSTRACT_CLASS(wxHtmlFontCell) - DECLARE_NO_COPY_CLASS(wxHtmlFontCell) + wxDECLARE_NO_COPY_CLASS(wxHtmlFontCell); }; @@ -624,7 +628,7 @@ protected: // width float is used in adjustWidth (it is in percents) DECLARE_ABSTRACT_CLASS(wxHtmlWidgetCell) - DECLARE_NO_COPY_CLASS(wxHtmlWidgetCell) + wxDECLARE_NO_COPY_CLASS(wxHtmlWidgetCell); };