From a7ffffa54dc808b8c08fc10900f4daa9b140a92e Mon Sep 17 00:00:00 2001 From: "karnaze%netscape.com" Date: Thu, 7 Jan 1999 01:00:07 +0000 Subject: [PATCH] Preliminary changes to support align="char" git-svn-id: svn://10.0.0.236/trunk@17278 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/content/html/content/src/nsHTMLAtoms.cpp | 6 ++++++ mozilla/content/html/content/src/nsHTMLAtoms.h | 2 ++ mozilla/content/shared/public/nsHTMLAtoms.h | 2 ++ mozilla/content/shared/src/nsHTMLAtoms.cpp | 6 ++++++ mozilla/layout/base/public/nsIFrameReflow.h | 5 +++++ mozilla/layout/html/base/src/nsHTMLAtoms.cpp | 6 ++++++ mozilla/layout/html/base/src/nsHTMLAtoms.h | 2 ++ 7 files changed, 29 insertions(+) diff --git a/mozilla/content/html/content/src/nsHTMLAtoms.cpp b/mozilla/content/html/content/src/nsHTMLAtoms.cpp index ed5dea36bd7..4347f4982b4 100644 --- a/mozilla/content/html/content/src/nsHTMLAtoms.cpp +++ b/mozilla/content/html/content/src/nsHTMLAtoms.cpp @@ -50,6 +50,8 @@ nsIAtom* nsHTMLAtoms::cellContentPseudo; nsIAtom* nsHTMLAtoms::cellpadding; nsIAtom* nsHTMLAtoms::cellspacing; nsIAtom* nsHTMLAtoms::ch; +nsIAtom* nsHTMLAtoms::_char; +nsIAtom* nsHTMLAtoms::charoff; nsIAtom* nsHTMLAtoms::charset; nsIAtom* nsHTMLAtoms::checked; nsIAtom* nsHTMLAtoms::choff; @@ -283,6 +285,8 @@ void nsHTMLAtoms::AddrefAtoms() cellpadding = NS_NewAtom("CELLPADDING"); cellspacing = NS_NewAtom("CELLSPACING"); ch = NS_NewAtom("CH"); + _char = NS_NewAtom("CHAR"); + charoff = NS_NewAtom("CHAROFF"); charset = NS_NewAtom("CHARSET"); checked = NS_NewAtom("CHECKED"); choff = NS_NewAtom("CHOFF"); @@ -513,6 +517,8 @@ void nsHTMLAtoms::ReleaseAtoms() NS_RELEASE(cellpadding); NS_RELEASE(cellspacing); NS_RELEASE(ch); + NS_RELEASE(_char); + NS_RELEASE(charoff); NS_RELEASE(charset); NS_RELEASE(checked); NS_RELEASE(choff); diff --git a/mozilla/content/html/content/src/nsHTMLAtoms.h b/mozilla/content/html/content/src/nsHTMLAtoms.h index 69b497fde5a..f87ea10a22e 100644 --- a/mozilla/content/html/content/src/nsHTMLAtoms.h +++ b/mozilla/content/html/content/src/nsHTMLAtoms.h @@ -71,6 +71,8 @@ public: static nsIAtom* cellpadding; static nsIAtom* cellspacing; static nsIAtom* ch; + static nsIAtom* _char; + static nsIAtom* charoff; static nsIAtom* charset; static nsIAtom* checked; static nsIAtom* choff; diff --git a/mozilla/content/shared/public/nsHTMLAtoms.h b/mozilla/content/shared/public/nsHTMLAtoms.h index 69b497fde5a..f87ea10a22e 100644 --- a/mozilla/content/shared/public/nsHTMLAtoms.h +++ b/mozilla/content/shared/public/nsHTMLAtoms.h @@ -71,6 +71,8 @@ public: static nsIAtom* cellpadding; static nsIAtom* cellspacing; static nsIAtom* ch; + static nsIAtom* _char; + static nsIAtom* charoff; static nsIAtom* charset; static nsIAtom* checked; static nsIAtom* choff; diff --git a/mozilla/content/shared/src/nsHTMLAtoms.cpp b/mozilla/content/shared/src/nsHTMLAtoms.cpp index ed5dea36bd7..4347f4982b4 100644 --- a/mozilla/content/shared/src/nsHTMLAtoms.cpp +++ b/mozilla/content/shared/src/nsHTMLAtoms.cpp @@ -50,6 +50,8 @@ nsIAtom* nsHTMLAtoms::cellContentPseudo; nsIAtom* nsHTMLAtoms::cellpadding; nsIAtom* nsHTMLAtoms::cellspacing; nsIAtom* nsHTMLAtoms::ch; +nsIAtom* nsHTMLAtoms::_char; +nsIAtom* nsHTMLAtoms::charoff; nsIAtom* nsHTMLAtoms::charset; nsIAtom* nsHTMLAtoms::checked; nsIAtom* nsHTMLAtoms::choff; @@ -283,6 +285,8 @@ void nsHTMLAtoms::AddrefAtoms() cellpadding = NS_NewAtom("CELLPADDING"); cellspacing = NS_NewAtom("CELLSPACING"); ch = NS_NewAtom("CH"); + _char = NS_NewAtom("CHAR"); + charoff = NS_NewAtom("CHAROFF"); charset = NS_NewAtom("CHARSET"); checked = NS_NewAtom("CHECKED"); choff = NS_NewAtom("CHOFF"); @@ -513,6 +517,8 @@ void nsHTMLAtoms::ReleaseAtoms() NS_RELEASE(cellpadding); NS_RELEASE(cellspacing); NS_RELEASE(ch); + NS_RELEASE(_char); + NS_RELEASE(charoff); NS_RELEASE(charset); NS_RELEASE(checked); NS_RELEASE(choff); diff --git a/mozilla/layout/base/public/nsIFrameReflow.h b/mozilla/layout/base/public/nsIFrameReflow.h index 38b4e502375..f767c173cd6 100644 --- a/mozilla/layout/base/public/nsIFrameReflow.h +++ b/mozilla/layout/base/public/nsIFrameReflow.h @@ -102,6 +102,11 @@ struct nsReflowState { availableHeight; // the available space in which to reflow nsIRenderingContext* rendContext; // rendering context to use for measurement PRPackedBool isTopOfPage; // is the current context at the top of a page? + // the following data members are relevant if nsStyleText.mTextAlign is NS_STYLE_TEXT_ALIGN_CHAR + PRPackedBool useAlignCharOffset;// if true, the reflow honors alignCharOffset and does not + // set it. if false, the reflow sets alignCharOffset + nscoord alignCharOffset; // distance from reference edge (as specified in nsStyleDisplay.mDirection) + // to the align character (which will be specified in nsStyleTable) // Note: there is no copy constructor, so the compiler can generate an // optimal one. diff --git a/mozilla/layout/html/base/src/nsHTMLAtoms.cpp b/mozilla/layout/html/base/src/nsHTMLAtoms.cpp index ed5dea36bd7..4347f4982b4 100644 --- a/mozilla/layout/html/base/src/nsHTMLAtoms.cpp +++ b/mozilla/layout/html/base/src/nsHTMLAtoms.cpp @@ -50,6 +50,8 @@ nsIAtom* nsHTMLAtoms::cellContentPseudo; nsIAtom* nsHTMLAtoms::cellpadding; nsIAtom* nsHTMLAtoms::cellspacing; nsIAtom* nsHTMLAtoms::ch; +nsIAtom* nsHTMLAtoms::_char; +nsIAtom* nsHTMLAtoms::charoff; nsIAtom* nsHTMLAtoms::charset; nsIAtom* nsHTMLAtoms::checked; nsIAtom* nsHTMLAtoms::choff; @@ -283,6 +285,8 @@ void nsHTMLAtoms::AddrefAtoms() cellpadding = NS_NewAtom("CELLPADDING"); cellspacing = NS_NewAtom("CELLSPACING"); ch = NS_NewAtom("CH"); + _char = NS_NewAtom("CHAR"); + charoff = NS_NewAtom("CHAROFF"); charset = NS_NewAtom("CHARSET"); checked = NS_NewAtom("CHECKED"); choff = NS_NewAtom("CHOFF"); @@ -513,6 +517,8 @@ void nsHTMLAtoms::ReleaseAtoms() NS_RELEASE(cellpadding); NS_RELEASE(cellspacing); NS_RELEASE(ch); + NS_RELEASE(_char); + NS_RELEASE(charoff); NS_RELEASE(charset); NS_RELEASE(checked); NS_RELEASE(choff); diff --git a/mozilla/layout/html/base/src/nsHTMLAtoms.h b/mozilla/layout/html/base/src/nsHTMLAtoms.h index 69b497fde5a..f87ea10a22e 100644 --- a/mozilla/layout/html/base/src/nsHTMLAtoms.h +++ b/mozilla/layout/html/base/src/nsHTMLAtoms.h @@ -71,6 +71,8 @@ public: static nsIAtom* cellpadding; static nsIAtom* cellspacing; static nsIAtom* ch; + static nsIAtom* _char; + static nsIAtom* charoff; static nsIAtom* charset; static nsIAtom* checked; static nsIAtom* choff;