continuing work to separate content from frames
git-svn-id: svn://10.0.0.236/trunk@3656 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -20,7 +20,6 @@
|
||||
|
||||
#include "nscore.h"
|
||||
#include "nsBodyFrame.h"
|
||||
#include "nsTableCaption.h"
|
||||
|
||||
/**
|
||||
* nsTableCaptionFrame
|
||||
|
||||
@@ -217,96 +217,121 @@ void nsTableCell::MapAttributesInto(nsIStyleContext* aContext,
|
||||
{
|
||||
NS_PRECONDITION(nsnull!=aContext, "bad style context arg");
|
||||
NS_PRECONDITION(nsnull!=aPresContext, "bad presentation context arg");
|
||||
if (nsnull != mAttributes) {
|
||||
nsHTMLValue value;
|
||||
nsStyleText* textStyle = nsnull;
|
||||
|
||||
// align: enum
|
||||
GetAttribute(nsHTMLAtoms::align, value);
|
||||
if (value.GetUnit() == eHTMLUnit_Enumerated)
|
||||
nsHTMLValue value;
|
||||
nsStyleText* textStyle = nsnull;
|
||||
|
||||
// align: enum
|
||||
GetAttribute(nsHTMLAtoms::align, value);
|
||||
if (value.GetUnit() == eHTMLUnit_Enumerated)
|
||||
{
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mTextAlign = value.GetIntValue();
|
||||
}
|
||||
// otherwise check the row for align and inherit it
|
||||
else {
|
||||
if (nsnull!=mRow)
|
||||
{
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mTextAlign = value.GetIntValue();
|
||||
}
|
||||
|
||||
// valign: enum
|
||||
GetAttribute(nsHTMLAtoms::valign, value);
|
||||
if (value.GetUnit() == eHTMLUnit_Enumerated)
|
||||
{
|
||||
if (nsnull==textStyle)
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mVerticalAlign.SetIntValue(value.GetIntValue(), eStyleUnit_Enumerated);
|
||||
}
|
||||
// otherwise check the row for valign and inherit it
|
||||
else {
|
||||
if (nsnull!=mRow)
|
||||
// TODO: optimize by putting a flag on the row to say whether align attr is set
|
||||
nsHTMLValue parentAlignValue;
|
||||
mRow->GetAttribute(nsHTMLAtoms::align, parentAlignValue);
|
||||
if (parentAlignValue.GetUnit() == eHTMLUnit_Enumerated)
|
||||
{
|
||||
// TODO: optimize by putting a flag on the row to say whether valign attr is set
|
||||
nsHTMLValue parentAlignValue;
|
||||
mRow->GetAttribute(nsHTMLAtoms::valign, parentAlignValue);
|
||||
if (parentAlignValue.GetUnit() == eHTMLUnit_Enumerated)
|
||||
PRUint8 rowAlign = parentAlignValue.GetIntValue();
|
||||
if (nsnull==textStyle)
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mTextAlign = rowAlign;
|
||||
}
|
||||
else
|
||||
{ // we need to check the row group as well
|
||||
nsTableRowGroup *rowGroup = mRow->GetRowGroup();
|
||||
if (nsnull!=rowGroup)
|
||||
{
|
||||
PRUint8 rowVAlign = parentAlignValue.GetIntValue();
|
||||
if (NS_STYLE_VERTICAL_ALIGN_MIDDLE!=rowVAlign)
|
||||
rowGroup->GetAttribute(nsHTMLAtoms::align, parentAlignValue);
|
||||
if (parentAlignValue.GetUnit() == eHTMLUnit_Enumerated)
|
||||
{
|
||||
PRUint8 rowGroupAlign = parentAlignValue.GetIntValue();
|
||||
if (nsnull==textStyle)
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mVerticalAlign.SetIntValue(rowVAlign, eStyleUnit_Enumerated);
|
||||
}
|
||||
}
|
||||
else
|
||||
{ // we need to check the row group as well
|
||||
nsTableRowGroup *rowGroup = mRow->GetRowGroup();
|
||||
if (nsnull!=rowGroup)
|
||||
{
|
||||
rowGroup->GetAttribute(nsHTMLAtoms::valign, parentAlignValue);
|
||||
if (parentAlignValue.GetUnit() == eHTMLUnit_Enumerated)
|
||||
{
|
||||
PRUint8 rowGroupVAlign = parentAlignValue.GetIntValue();
|
||||
if (NS_STYLE_VERTICAL_ALIGN_MIDDLE!=rowGroupVAlign)
|
||||
{
|
||||
if (nsnull==textStyle)
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mVerticalAlign.SetIntValue(rowGroupVAlign, eStyleUnit_Enumerated);
|
||||
}
|
||||
}
|
||||
textStyle->mTextAlign = rowGroupAlign;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
MapBackgroundAttributesInto(aContext, aPresContext);
|
||||
|
||||
// nowrap
|
||||
GetAttribute(nsHTMLAtoms::nowrap, value);
|
||||
if (value.GetUnit() == eHTMLUnit_Empty)
|
||||
}
|
||||
|
||||
// valign: enum
|
||||
GetAttribute(nsHTMLAtoms::valign, value);
|
||||
if (value.GetUnit() == eHTMLUnit_Enumerated)
|
||||
{
|
||||
if (nsnull==textStyle)
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mVerticalAlign.SetIntValue(value.GetIntValue(), eStyleUnit_Enumerated);
|
||||
}
|
||||
// otherwise check the row for valign and inherit it
|
||||
else {
|
||||
if (nsnull!=mRow)
|
||||
{
|
||||
if (nsnull==textStyle)
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mWhiteSpace = NS_STYLE_WHITESPACE_NOWRAP;
|
||||
}
|
||||
|
||||
// width: pixel
|
||||
float p2t = aPresContext->GetPixelsToTwips();
|
||||
nsStylePosition* pos = (nsStylePosition*)
|
||||
aContext->GetMutableStyleData(eStyleStruct_Position);
|
||||
GetAttribute(nsHTMLAtoms::width, value);
|
||||
if (value.GetUnit() == eHTMLUnit_Pixel) {
|
||||
nscoord twips = nscoord(p2t * value.GetPixelValue());
|
||||
pos->mWidth.SetCoordValue(twips);
|
||||
}
|
||||
else if (value.GetUnit() == eHTMLUnit_Percent) {
|
||||
pos->mWidth.SetPercentValue(value.GetPercentValue());
|
||||
}
|
||||
|
||||
// height: pixel
|
||||
GetAttribute(nsHTMLAtoms::height, value);
|
||||
if (value.GetUnit() == eHTMLUnit_Pixel) {
|
||||
nscoord twips = nscoord(p2t * value.GetPixelValue());
|
||||
pos->mHeight.SetCoordValue(twips);
|
||||
// TODO: optimize by putting a flag on the row to say whether valign attr is set
|
||||
nsHTMLValue parentAlignValue;
|
||||
mRow->GetAttribute(nsHTMLAtoms::valign, parentAlignValue);
|
||||
if (parentAlignValue.GetUnit() == eHTMLUnit_Enumerated)
|
||||
{
|
||||
PRUint8 rowVAlign = parentAlignValue.GetIntValue();
|
||||
if (nsnull==textStyle)
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mVerticalAlign.SetIntValue(rowVAlign, eStyleUnit_Enumerated);
|
||||
}
|
||||
else
|
||||
{ // we need to check the row group as well
|
||||
nsTableRowGroup *rowGroup = mRow->GetRowGroup();
|
||||
if (nsnull!=rowGroup)
|
||||
{
|
||||
rowGroup->GetAttribute(nsHTMLAtoms::valign, parentAlignValue);
|
||||
if (parentAlignValue.GetUnit() == eHTMLUnit_Enumerated)
|
||||
{
|
||||
PRUint8 rowGroupVAlign = parentAlignValue.GetIntValue();
|
||||
if (nsnull==textStyle)
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mVerticalAlign.SetIntValue(rowGroupVAlign, eStyleUnit_Enumerated);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
MapBackgroundAttributesInto(aContext, aPresContext);
|
||||
|
||||
// nowrap
|
||||
GetAttribute(nsHTMLAtoms::nowrap, value);
|
||||
if (value.GetUnit() == eHTMLUnit_Empty)
|
||||
{
|
||||
if (nsnull==textStyle)
|
||||
textStyle = (nsStyleText*)aContext->GetMutableStyleData(eStyleStruct_Text);
|
||||
textStyle->mWhiteSpace = NS_STYLE_WHITESPACE_NOWRAP;
|
||||
}
|
||||
|
||||
// width: pixel
|
||||
float p2t = aPresContext->GetPixelsToTwips();
|
||||
nsStylePosition* pos = (nsStylePosition*)
|
||||
aContext->GetMutableStyleData(eStyleStruct_Position);
|
||||
GetAttribute(nsHTMLAtoms::width, value);
|
||||
if (value.GetUnit() == eHTMLUnit_Pixel) {
|
||||
nscoord twips = nscoord(p2t * value.GetPixelValue());
|
||||
pos->mWidth.SetCoordValue(twips);
|
||||
}
|
||||
else if (value.GetUnit() == eHTMLUnit_Percent) {
|
||||
pos->mWidth.SetPercentValue(value.GetPercentValue());
|
||||
}
|
||||
|
||||
// height: pixel
|
||||
GetAttribute(nsHTMLAtoms::height, value);
|
||||
if (value.GetUnit() == eHTMLUnit_Pixel) {
|
||||
nscoord twips = nscoord(p2t * value.GetPixelValue());
|
||||
pos->mHeight.SetCoordValue(twips);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
nsContentAttr
|
||||
|
||||
@@ -31,9 +31,8 @@
|
||||
#include "nsHTMLIIDs.h"
|
||||
#include "nsIPtr.h"
|
||||
#include "nsIView.h"
|
||||
// evil dep's to be removed ASAP
|
||||
#include "nsTablePart.h"
|
||||
#include "nsTableContent.h"
|
||||
// dependancy on content
|
||||
#include "nsHTMLTagContent.h"
|
||||
|
||||
NS_DEF_PTR(nsIStyleContext);
|
||||
|
||||
@@ -485,14 +484,6 @@ void nsTableCellFrame::MapBorderMarginPadding(nsIPresContext* aPresContext)
|
||||
// this setting overrides any specific border, margin or
|
||||
// padding information in the cell. If these attributes
|
||||
// are not defined, the the cells attributes are used
|
||||
|
||||
nsHTMLValue padding_value;
|
||||
nsHTMLValue spacing_value;
|
||||
nsHTMLValue border_value;
|
||||
|
||||
nsContentAttr padding_result;
|
||||
nsContentAttr spacing_result;
|
||||
nsContentAttr border_result;
|
||||
|
||||
nscoord padding = 0;
|
||||
nscoord spacing = 0;
|
||||
@@ -500,54 +491,41 @@ void nsTableCellFrame::MapBorderMarginPadding(nsIPresContext* aPresContext)
|
||||
|
||||
float p2t = aPresContext->GetPixelsToTwips();
|
||||
|
||||
nsTablePart* table = ((nsTableContent*)mContent)->GetTable();
|
||||
|
||||
NS_ASSERTION(table,"Table Must not be null");
|
||||
if (!table)
|
||||
nsTableFrame* tableFrame = GetTableFrame();
|
||||
tableFrame->GetGeometricParent((nsIFrame *&)tableFrame); // get the outer frame
|
||||
NS_ASSERTION(tableFrame,"Table Must not be null");
|
||||
if (!tableFrame)
|
||||
return;
|
||||
|
||||
padding_result = table->GetAttribute(nsHTMLAtoms::cellpadding,padding_value);
|
||||
spacing_result = table->GetAttribute(nsHTMLAtoms::cellspacing,spacing_value);
|
||||
border_result = table->GetAttribute(nsHTMLAtoms::border,border_value);
|
||||
|
||||
// get the table frame style context, and from it get cellpadding, cellspacing, and border info
|
||||
nsIStyleContextPtr tableSC;
|
||||
tableFrame->GetStyleContext(aPresContext, tableSC.AssignRef());
|
||||
nsStyleTable* tableStyle = (nsStyleTable*)tableSC->GetStyleData(eStyleStruct_Table);
|
||||
nsStyleSpacing* tableSpacingStyle = (nsStyleSpacing*)tableSC->GetStyleData(eStyleStruct_Spacing);
|
||||
nsStyleSpacing* spacingData = (nsStyleSpacing*)mStyleContext->GetMutableStyleData(eStyleStruct_Spacing);
|
||||
|
||||
// check to see if cellpadding or cellspacing is defined
|
||||
if (spacing_result == eContentAttr_HasValue || padding_result == eContentAttr_HasValue)
|
||||
if (tableStyle->mCellPadding.GetUnit() != eStyleUnit_Null ||
|
||||
tableStyle->mCellSpacing.GetUnit() != eStyleUnit_Null)
|
||||
{
|
||||
|
||||
PRInt32 value;
|
||||
nsStyleCoord padding(0);
|
||||
nsStyleCoord spacing(0);
|
||||
|
||||
if (padding_result == eContentAttr_HasValue && ConvertToPixelValue(padding_value,0,value))
|
||||
padding.SetCoordValue((nscoord)(p2t*(float)value));
|
||||
|
||||
if (spacing_result == eContentAttr_HasValue && ConvertToPixelValue(spacing_value,0,value))
|
||||
spacing.SetCoordValue((nscoord)(p2t*(float)value));
|
||||
|
||||
spacingData->mMargin.SetTop(spacing);
|
||||
spacingData->mMargin.SetLeft(spacing);
|
||||
spacingData->mMargin.SetBottom(spacing);
|
||||
spacingData->mMargin.SetRight(spacing);
|
||||
spacingData->mPadding.SetTop(padding);
|
||||
spacingData->mPadding.SetLeft(padding);
|
||||
spacingData->mPadding.SetBottom(padding);
|
||||
spacingData->mPadding.SetRight(padding);
|
||||
|
||||
spacingData->mMargin.SetTop(tableStyle->mCellSpacing);
|
||||
spacingData->mMargin.SetLeft(tableStyle->mCellSpacing);
|
||||
spacingData->mMargin.SetBottom(tableStyle->mCellSpacing);
|
||||
spacingData->mMargin.SetRight(tableStyle->mCellSpacing);
|
||||
spacingData->mPadding.SetTop(tableStyle->mCellPadding);
|
||||
spacingData->mPadding.SetLeft(tableStyle->mCellPadding);
|
||||
spacingData->mPadding.SetBottom(tableStyle->mCellPadding);
|
||||
spacingData->mPadding.SetRight(tableStyle->mCellPadding);
|
||||
}
|
||||
if (border_result == eContentAttr_HasValue)
|
||||
|
||||
// get border information from the table
|
||||
if (tableSpacingStyle->mBorder.GetTopUnit() != eStyleUnit_Null)
|
||||
{
|
||||
PRInt32 intValue = 0;
|
||||
|
||||
if (ConvertToPixelValue(border_value,1,intValue))
|
||||
{
|
||||
if (intValue > 0)
|
||||
intValue = 1;
|
||||
border = nscoord(p2t*(float)intValue);
|
||||
}
|
||||
nsStyleCoord borderSize;
|
||||
tableSpacingStyle->mBorder.GetTop(borderSize);
|
||||
border = borderSize.GetCoordValue();
|
||||
}
|
||||
MapHTMLBorderStyle(aPresContext, *spacingData,border);
|
||||
MapHTMLBorderStyle(aPresContext, *spacingData, border);
|
||||
}
|
||||
|
||||
void nsTableCellFrame::MapTextAttributes(nsIPresContext* aPresContext)
|
||||
@@ -563,7 +541,6 @@ void nsTableCellFrame::MapTextAttributes(nsIPresContext* aPresContext)
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Subclass hook for style post processing
|
||||
NS_METHOD nsTableCellFrame::DidSetStyleContext(nsIPresContext* aPresContext)
|
||||
{
|
||||
|
||||
@@ -1125,7 +1125,7 @@ void nsTablePart::MapAttributesInto(nsIStyleContext* aContext,
|
||||
NS_PRECONDITION(nsnull!=aContext, "bad style context arg");
|
||||
NS_PRECONDITION(nsnull!=aPresContext, "bad presentation context arg");
|
||||
|
||||
float p2t;
|
||||
float p2t = aPresContext->GetPixelsToTwips();
|
||||
nsHTMLValue value;
|
||||
|
||||
// width
|
||||
@@ -1139,7 +1139,6 @@ void nsTablePart::MapAttributesInto(nsIStyleContext* aContext,
|
||||
break;
|
||||
|
||||
case eHTMLUnit_Pixel:
|
||||
p2t = aPresContext->GetPixelsToTwips();
|
||||
position->mWidth.SetCoordValue(nscoord(p2t * (float)value.GetPixelValue()));
|
||||
break;
|
||||
}
|
||||
@@ -1163,6 +1162,23 @@ void nsTablePart::MapAttributesInto(nsIStyleContext* aContext,
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// cellpadding
|
||||
nsStyleTable* tableStyle=nsnull;
|
||||
GetAttribute(nsHTMLAtoms::cellpadding, value);
|
||||
if (value.GetUnit() != eHTMLUnit_Null) {
|
||||
tableStyle = (nsStyleTable*)aContext->GetMutableStyleData(eStyleStruct_Table);
|
||||
tableStyle->mCellPadding.SetCoordValue(p2t*(float)(value.GetPixelValue()));
|
||||
}
|
||||
|
||||
// cellspacing (reuses tableStyle if already resolved)
|
||||
GetAttribute(nsHTMLAtoms::cellspacing, value);
|
||||
if (value.GetUnit() != eHTMLUnit_Null) {
|
||||
if (nsnull==tableStyle)
|
||||
tableStyle = (nsStyleTable*)aContext->GetMutableStyleData(eStyleStruct_Table);
|
||||
tableStyle->mCellSpacing.SetCoordValue(p2t*(float)(value.GetPixelValue()));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void nsTablePart::GetTableBorder(nsIHTMLContent* aContent,
|
||||
|
||||
@@ -31,9 +31,8 @@
|
||||
#include "nsHTMLIIDs.h"
|
||||
#include "nsIPtr.h"
|
||||
#include "nsIView.h"
|
||||
// evil dep's to be removed ASAP
|
||||
#include "nsTablePart.h"
|
||||
#include "nsTableContent.h"
|
||||
// dependancy on content
|
||||
#include "nsHTMLTagContent.h"
|
||||
|
||||
NS_DEF_PTR(nsIStyleContext);
|
||||
|
||||
@@ -485,14 +484,6 @@ void nsTableCellFrame::MapBorderMarginPadding(nsIPresContext* aPresContext)
|
||||
// this setting overrides any specific border, margin or
|
||||
// padding information in the cell. If these attributes
|
||||
// are not defined, the the cells attributes are used
|
||||
|
||||
nsHTMLValue padding_value;
|
||||
nsHTMLValue spacing_value;
|
||||
nsHTMLValue border_value;
|
||||
|
||||
nsContentAttr padding_result;
|
||||
nsContentAttr spacing_result;
|
||||
nsContentAttr border_result;
|
||||
|
||||
nscoord padding = 0;
|
||||
nscoord spacing = 0;
|
||||
@@ -500,54 +491,41 @@ void nsTableCellFrame::MapBorderMarginPadding(nsIPresContext* aPresContext)
|
||||
|
||||
float p2t = aPresContext->GetPixelsToTwips();
|
||||
|
||||
nsTablePart* table = ((nsTableContent*)mContent)->GetTable();
|
||||
|
||||
NS_ASSERTION(table,"Table Must not be null");
|
||||
if (!table)
|
||||
nsTableFrame* tableFrame = GetTableFrame();
|
||||
tableFrame->GetGeometricParent((nsIFrame *&)tableFrame); // get the outer frame
|
||||
NS_ASSERTION(tableFrame,"Table Must not be null");
|
||||
if (!tableFrame)
|
||||
return;
|
||||
|
||||
padding_result = table->GetAttribute(nsHTMLAtoms::cellpadding,padding_value);
|
||||
spacing_result = table->GetAttribute(nsHTMLAtoms::cellspacing,spacing_value);
|
||||
border_result = table->GetAttribute(nsHTMLAtoms::border,border_value);
|
||||
|
||||
// get the table frame style context, and from it get cellpadding, cellspacing, and border info
|
||||
nsIStyleContextPtr tableSC;
|
||||
tableFrame->GetStyleContext(aPresContext, tableSC.AssignRef());
|
||||
nsStyleTable* tableStyle = (nsStyleTable*)tableSC->GetStyleData(eStyleStruct_Table);
|
||||
nsStyleSpacing* tableSpacingStyle = (nsStyleSpacing*)tableSC->GetStyleData(eStyleStruct_Spacing);
|
||||
nsStyleSpacing* spacingData = (nsStyleSpacing*)mStyleContext->GetMutableStyleData(eStyleStruct_Spacing);
|
||||
|
||||
// check to see if cellpadding or cellspacing is defined
|
||||
if (spacing_result == eContentAttr_HasValue || padding_result == eContentAttr_HasValue)
|
||||
if (tableStyle->mCellPadding.GetUnit() != eStyleUnit_Null ||
|
||||
tableStyle->mCellSpacing.GetUnit() != eStyleUnit_Null)
|
||||
{
|
||||
|
||||
PRInt32 value;
|
||||
nsStyleCoord padding(0);
|
||||
nsStyleCoord spacing(0);
|
||||
|
||||
if (padding_result == eContentAttr_HasValue && ConvertToPixelValue(padding_value,0,value))
|
||||
padding.SetCoordValue((nscoord)(p2t*(float)value));
|
||||
|
||||
if (spacing_result == eContentAttr_HasValue && ConvertToPixelValue(spacing_value,0,value))
|
||||
spacing.SetCoordValue((nscoord)(p2t*(float)value));
|
||||
|
||||
spacingData->mMargin.SetTop(spacing);
|
||||
spacingData->mMargin.SetLeft(spacing);
|
||||
spacingData->mMargin.SetBottom(spacing);
|
||||
spacingData->mMargin.SetRight(spacing);
|
||||
spacingData->mPadding.SetTop(padding);
|
||||
spacingData->mPadding.SetLeft(padding);
|
||||
spacingData->mPadding.SetBottom(padding);
|
||||
spacingData->mPadding.SetRight(padding);
|
||||
|
||||
spacingData->mMargin.SetTop(tableStyle->mCellSpacing);
|
||||
spacingData->mMargin.SetLeft(tableStyle->mCellSpacing);
|
||||
spacingData->mMargin.SetBottom(tableStyle->mCellSpacing);
|
||||
spacingData->mMargin.SetRight(tableStyle->mCellSpacing);
|
||||
spacingData->mPadding.SetTop(tableStyle->mCellPadding);
|
||||
spacingData->mPadding.SetLeft(tableStyle->mCellPadding);
|
||||
spacingData->mPadding.SetBottom(tableStyle->mCellPadding);
|
||||
spacingData->mPadding.SetRight(tableStyle->mCellPadding);
|
||||
}
|
||||
if (border_result == eContentAttr_HasValue)
|
||||
|
||||
// get border information from the table
|
||||
if (tableSpacingStyle->mBorder.GetTopUnit() != eStyleUnit_Null)
|
||||
{
|
||||
PRInt32 intValue = 0;
|
||||
|
||||
if (ConvertToPixelValue(border_value,1,intValue))
|
||||
{
|
||||
if (intValue > 0)
|
||||
intValue = 1;
|
||||
border = nscoord(p2t*(float)intValue);
|
||||
}
|
||||
nsStyleCoord borderSize;
|
||||
tableSpacingStyle->mBorder.GetTop(borderSize);
|
||||
border = borderSize.GetCoordValue();
|
||||
}
|
||||
MapHTMLBorderStyle(aPresContext, *spacingData,border);
|
||||
MapHTMLBorderStyle(aPresContext, *spacingData, border);
|
||||
}
|
||||
|
||||
void nsTableCellFrame::MapTextAttributes(nsIPresContext* aPresContext)
|
||||
@@ -563,7 +541,6 @@ void nsTableCellFrame::MapTextAttributes(nsIPresContext* aPresContext)
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Subclass hook for style post processing
|
||||
NS_METHOD nsTableCellFrame::DidSetStyleContext(nsIPresContext* aPresContext)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user