added support for <sub> and <sup> to wxHTML (based on patch #1263152)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -145,6 +145,13 @@ enum
|
||||
};
|
||||
|
||||
|
||||
// Superscript/subscript/normal script mode of a cell
|
||||
enum wxHtmlScriptMode
|
||||
{
|
||||
wxHTML_SCRIPT_NORMAL,
|
||||
wxHTML_SCRIPT_SUB,
|
||||
wxHTML_SCRIPT_SUP
|
||||
};
|
||||
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
@@ -176,6 +183,10 @@ public:
|
||||
int GetHeight() const {return m_Height;}
|
||||
int GetDescent() const {return m_Descent;}
|
||||
|
||||
void SetScriptMode(wxHtmlScriptMode mode, long previousBase);
|
||||
wxHtmlScriptMode GetScriptMode() const { return m_ScriptMode; }
|
||||
long GetScriptBaseline() { return m_ScriptBaseline; }
|
||||
|
||||
// Formatting cells are not visible on the screen, they only alter
|
||||
// renderer's state.
|
||||
bool IsFormattingCell() const { return m_Width == 0 && m_Height == 0; }
|
||||
@@ -297,21 +308,26 @@ public:
|
||||
{ return wxEmptyString; }
|
||||
|
||||
protected:
|
||||
// pointer to the next cell
|
||||
wxHtmlCell *m_Next;
|
||||
// pointer to the next cell
|
||||
// pointer to parent cell
|
||||
wxHtmlContainerCell *m_Parent;
|
||||
// pointer to parent cell
|
||||
|
||||
// dimensions of fragment (m_Descent is used to position text & images)
|
||||
long m_Width, m_Height, m_Descent;
|
||||
// dimensions of fragment
|
||||
// m_Descent is used to position text&images..
|
||||
// position where the fragment is drawn:
|
||||
long m_PosX, m_PosY;
|
||||
// position where the fragment is drawn
|
||||
|
||||
// superscript/subscript/normal:
|
||||
wxHtmlScriptMode m_ScriptMode;
|
||||
long m_ScriptBaseline;
|
||||
|
||||
// destination address if this fragment is hypertext link, NULL otherwise
|
||||
wxHtmlLinkInfo *m_Link;
|
||||
// destination address if this fragment is hypertext link, NULL otherwise
|
||||
// true if this cell can be placed on pagebreak, false otherwise
|
||||
bool m_CanLiveOnPagebreak;
|
||||
// true if this cell can be placed on pagebreak, false otherwise
|
||||
// unique identifier of the cell, generated from "id" property of tags
|
||||
wxString m_id;
|
||||
// unique identifier of the cell, generated from "id" property of tags
|
||||
|
||||
DECLARE_ABSTRACT_CLASS(wxHtmlCell)
|
||||
DECLARE_NO_COPY_CLASS(wxHtmlCell)
|
||||
@@ -414,6 +430,8 @@ public:
|
||||
#if WXWIN_COMPATIBILITY_2_4
|
||||
wxDEPRECATED( wxHtmlCell* GetFirstCell() const );
|
||||
#endif
|
||||
// returns last child cell:
|
||||
wxHtmlCell* GetLastChild() const { return m_LastCell; }
|
||||
|
||||
// see comment in wxHtmlCell about this method
|
||||
virtual bool IsTerminalCell() const { return false; }
|
||||
|
@@ -112,6 +112,12 @@ public:
|
||||
|
||||
int GetAlign() const {return m_Align;}
|
||||
void SetAlign(int a) {m_Align = a;}
|
||||
|
||||
wxHtmlScriptMode GetScriptMode() const { return m_ScriptMode; }
|
||||
void SetScriptMode(wxHtmlScriptMode mode) { m_ScriptMode = mode; }
|
||||
long GetScriptBaseline() const { return m_ScriptBaseline; }
|
||||
void SetScriptBaseline(long base) { m_ScriptBaseline = base; }
|
||||
|
||||
const wxColour& GetLinkColor() const { return m_LinkColor; }
|
||||
void SetLinkColor(const wxColour& clr) { m_LinkColor = clr; }
|
||||
const wxColour& GetActualColor() const { return m_ActualColor; }
|
||||
@@ -119,6 +125,9 @@ public:
|
||||
const wxHtmlLinkInfo& GetLink() const { return m_Link; }
|
||||
void SetLink(const wxHtmlLinkInfo& link);
|
||||
|
||||
// applies current parser state (link, sub/supscript, ...) to given cell
|
||||
void ApplyStateToCell(wxHtmlCell *cell);
|
||||
|
||||
#if !wxUSE_UNICODE
|
||||
void SetInputEncoding(wxFontEncoding enc);
|
||||
wxFontEncoding GetInputEncoding() const { return m_InputEnc; }
|
||||
@@ -164,6 +173,10 @@ private:
|
||||
// average height of normal-sized text
|
||||
int m_Align;
|
||||
// actual alignment
|
||||
wxHtmlScriptMode m_ScriptMode;
|
||||
// current script mode (sub/sup/normal)
|
||||
long m_ScriptBaseline;
|
||||
// current sub/supscript base
|
||||
|
||||
wxFont* m_FontsTable[2][2][2][2][7];
|
||||
wxString m_FontsFacesTable[2][2][2][2][7];
|
||||
|
Reference in New Issue
Block a user