Added IsBlock() to nsIParserService. r=jst

This commit is contained in:
vidur@netscape.com
2000-09-10 07:05:09 +00:00
parent d6e7132c23
commit d52d2b7222
4 changed files with 42 additions and 0 deletions

View File

@@ -64,6 +64,7 @@ public:
NS_IMETHOD HTMLConvertUnicodeToEntity(PRInt32 aUnicode,
nsCString& aEntity) const;
NS_IMETHOD IsContainer(nsString& aTag, PRBool& aIsContainer) const;
NS_IMETHOD IsBlock(nsString& aTag, PRBool& aIsBlock) const;
};
nsParserService::nsParserService()
@@ -118,6 +119,25 @@ nsParserService::IsContainer(nsString& aTag, PRBool& aIsContainer) const
return NS_OK;
}
NS_IMETHODIMP
nsParserService::IsBlock(nsString& aTag, PRBool& aIsBlock) const
{
PRInt32 id = nsHTMLTags::LookupTag(aTag);
if((id>eHTMLTag_unknown) && (id<eHTMLTag_userdefined)) {
aIsBlock=((gHTMLElements[id].IsMemberOf(kBlock)) ||
(gHTMLElements[id].IsMemberOf(kBlockEntity)) ||
(gHTMLElements[id].IsMemberOf(kHeading)) ||
(gHTMLElements[id].IsMemberOf(kPreformatted))||
(gHTMLElements[id].IsMemberOf(kList)));
}
else {
aIsBlock = PR_FALSE;
}
return NS_OK;
}
//----------------------------------------------------------------------
static NS_DEFINE_CID(kParserCID, NS_PARSER_IID);