Added frame type atoms for several table frame classes

This commit is contained in:
troy%netscape.com 1999-02-24 05:54:31 +00:00
Родитель a29e93d9d0
Коммит e4388eb926
26 изменённых файлов: 226 добавлений и 0 удалений

Просмотреть файл

@ -68,6 +68,11 @@ public:
static nsIAtom* pageFrame;
static nsIAtom* rootFrame;
static nsIAtom* scrollFrame;
static nsIAtom* tableOuterFrame;
static nsIAtom* tableFrame;
static nsIAtom* tableRowGroupFrame;
static nsIAtom* tableRowFrame;
static nsIAtom* tableCellFrame;
static nsIAtom* textFrame;
static nsIAtom* viewportFrame;
};

Просмотреть файл

@ -54,6 +54,11 @@ nsIAtom* nsLayoutAtoms::areaFrame;
nsIAtom* nsLayoutAtoms::pageFrame;
nsIAtom* nsLayoutAtoms::rootFrame;
nsIAtom* nsLayoutAtoms::scrollFrame;
nsIAtom* nsLayoutAtoms::tableOuterFrame;
nsIAtom* nsLayoutAtoms::tableFrame;
nsIAtom* nsLayoutAtoms::tableRowGroupFrame;
nsIAtom* nsLayoutAtoms::tableRowFrame;
nsIAtom* nsLayoutAtoms::tableCellFrame;
nsIAtom* nsLayoutAtoms::textFrame;
nsIAtom* nsLayoutAtoms::viewportFrame;
@ -92,6 +97,11 @@ void nsLayoutAtoms::AddrefAtoms()
pageFrame = NS_NewAtom("PageFrame");
rootFrame = NS_NewAtom("RootFrame");
scrollFrame = NS_NewAtom("ScrollFrame");
tableOuterFrame = NS_NewAtom("TableOuterFrame");
tableFrame = NS_NewAtom("TableFrame");
tableRowGroupFrame = NS_NewAtom("TableRowGroupFrame");
tableRowFrame = NS_NewAtom("TableRowFrame");
tableCellFrame = NS_NewAtom("TableCellFrame");
textFrame = NS_NewAtom("TextFrame");
viewportFrame = NS_NewAtom("ViewportFrame");
}
@ -132,6 +142,11 @@ void nsLayoutAtoms::ReleaseAtoms()
NS_RELEASE(pageFrame);
NS_RELEASE(rootFrame);
NS_RELEASE(scrollFrame);
NS_RELEASE(tableOuterFrame);
NS_RELEASE(tableFrame);
NS_RELEASE(tableRowGroupFrame);
NS_RELEASE(tableRowFrame);
NS_RELEASE(tableCellFrame);
NS_RELEASE(textFrame);
NS_RELEASE(viewportFrame);
}

Просмотреть файл

@ -54,6 +54,11 @@ nsIAtom* nsLayoutAtoms::areaFrame;
nsIAtom* nsLayoutAtoms::pageFrame;
nsIAtom* nsLayoutAtoms::rootFrame;
nsIAtom* nsLayoutAtoms::scrollFrame;
nsIAtom* nsLayoutAtoms::tableOuterFrame;
nsIAtom* nsLayoutAtoms::tableFrame;
nsIAtom* nsLayoutAtoms::tableRowGroupFrame;
nsIAtom* nsLayoutAtoms::tableRowFrame;
nsIAtom* nsLayoutAtoms::tableCellFrame;
nsIAtom* nsLayoutAtoms::textFrame;
nsIAtom* nsLayoutAtoms::viewportFrame;
@ -92,6 +97,11 @@ void nsLayoutAtoms::AddrefAtoms()
pageFrame = NS_NewAtom("PageFrame");
rootFrame = NS_NewAtom("RootFrame");
scrollFrame = NS_NewAtom("ScrollFrame");
tableOuterFrame = NS_NewAtom("TableOuterFrame");
tableFrame = NS_NewAtom("TableFrame");
tableRowGroupFrame = NS_NewAtom("TableRowGroupFrame");
tableRowFrame = NS_NewAtom("TableRowFrame");
tableCellFrame = NS_NewAtom("TableCellFrame");
textFrame = NS_NewAtom("TextFrame");
viewportFrame = NS_NewAtom("ViewportFrame");
}
@ -132,6 +142,11 @@ void nsLayoutAtoms::ReleaseAtoms()
NS_RELEASE(pageFrame);
NS_RELEASE(rootFrame);
NS_RELEASE(scrollFrame);
NS_RELEASE(tableOuterFrame);
NS_RELEASE(tableFrame);
NS_RELEASE(tableRowGroupFrame);
NS_RELEASE(tableRowFrame);
NS_RELEASE(tableCellFrame);
NS_RELEASE(textFrame);
NS_RELEASE(viewportFrame);
}

Просмотреть файл

@ -68,6 +68,11 @@ public:
static nsIAtom* pageFrame;
static nsIAtom* rootFrame;
static nsIAtom* scrollFrame;
static nsIAtom* tableOuterFrame;
static nsIAtom* tableFrame;
static nsIAtom* tableRowGroupFrame;
static nsIAtom* tableRowFrame;
static nsIAtom* tableCellFrame;
static nsIAtom* textFrame;
static nsIAtom* viewportFrame;
};

Просмотреть файл

@ -68,6 +68,11 @@ public:
static nsIAtom* pageFrame;
static nsIAtom* rootFrame;
static nsIAtom* scrollFrame;
static nsIAtom* tableOuterFrame;
static nsIAtom* tableFrame;
static nsIAtom* tableRowGroupFrame;
static nsIAtom* tableRowFrame;
static nsIAtom* tableCellFrame;
static nsIAtom* textFrame;
static nsIAtom* viewportFrame;
};

Просмотреть файл

@ -54,6 +54,11 @@ nsIAtom* nsLayoutAtoms::areaFrame;
nsIAtom* nsLayoutAtoms::pageFrame;
nsIAtom* nsLayoutAtoms::rootFrame;
nsIAtom* nsLayoutAtoms::scrollFrame;
nsIAtom* nsLayoutAtoms::tableOuterFrame;
nsIAtom* nsLayoutAtoms::tableFrame;
nsIAtom* nsLayoutAtoms::tableRowGroupFrame;
nsIAtom* nsLayoutAtoms::tableRowFrame;
nsIAtom* nsLayoutAtoms::tableCellFrame;
nsIAtom* nsLayoutAtoms::textFrame;
nsIAtom* nsLayoutAtoms::viewportFrame;
@ -92,6 +97,11 @@ void nsLayoutAtoms::AddrefAtoms()
pageFrame = NS_NewAtom("PageFrame");
rootFrame = NS_NewAtom("RootFrame");
scrollFrame = NS_NewAtom("ScrollFrame");
tableOuterFrame = NS_NewAtom("TableOuterFrame");
tableFrame = NS_NewAtom("TableFrame");
tableRowGroupFrame = NS_NewAtom("TableRowGroupFrame");
tableRowFrame = NS_NewAtom("TableRowFrame");
tableCellFrame = NS_NewAtom("TableCellFrame");
textFrame = NS_NewAtom("TextFrame");
viewportFrame = NS_NewAtom("ViewportFrame");
}
@ -132,6 +142,11 @@ void nsLayoutAtoms::ReleaseAtoms()
NS_RELEASE(pageFrame);
NS_RELEASE(rootFrame);
NS_RELEASE(scrollFrame);
NS_RELEASE(tableOuterFrame);
NS_RELEASE(tableFrame);
NS_RELEASE(tableRowGroupFrame);
NS_RELEASE(tableRowFrame);
NS_RELEASE(tableCellFrame);
NS_RELEASE(textFrame);
NS_RELEASE(viewportFrame);
}

Просмотреть файл

@ -35,6 +35,7 @@
#include "nsIPtr.h"
#include "nsIView.h"
#include "nsStyleUtil.h"
#include "nsLayoutAtoms.h"
NS_DEF_PTR(nsIStyleContext);
@ -1072,6 +1073,15 @@ void nsTableCellFrame::RecalcLayoutData(nsTableFrame* aTableFrame,
mCalculated = NS_OK;
}
NS_IMETHODIMP
nsTableCellFrame::GetFrameType(nsIAtom** aType) const
{
NS_PRECONDITION(nsnull != aType, "null OUT parameter pointer");
*aType = nsLayoutAtoms::tableCellFrame;
NS_ADDREF(*aType);
return NS_OK;
}
NS_IMETHODIMP
nsTableCellFrame::GetFrameName(nsString& aResult) const
{

Просмотреть файл

@ -87,6 +87,13 @@ public:
nsIStyleContext* aStyleContext,
nsIFrame*& aContinuingFrame);
/**
* Get the "type" of the frame
*
* @see nsLayoutAtoms::tableCellFrame
*/
NS_IMETHOD GetFrameType(nsIAtom** aType) const;
NS_IMETHOD GetFrameName(nsString& aResult) const;
virtual void VerticallyAlignChild();

Просмотреть файл

@ -264,6 +264,14 @@ void ColumnInfoCache::GetColumnsByType(const nsStyleUnit aType,
if (PR_TRUE==gsDebug || PR_TRUE==gsDebugIR) printf("CIC GetColumnsByType: found %d of type %d\n", aOutNumColumns, aType);
}
NS_IMETHODIMP
nsTableFrame::GetFrameType(nsIAtom** aType) const
{
NS_PRECONDITION(nsnull != aType, "null OUT parameter pointer");
*aType = nsLayoutAtoms::tableFrame;
NS_ADDREF(*aType);
return NS_OK;
}
/* --------------------- nsTableFrame -------------------- */

Просмотреть файл

@ -210,6 +210,12 @@ public:
/** return PR_TRUE if the column width information has been set */
PRBool IsColumnWidthsSet();
/**
* Get the "type" of the frame
*
* @see nsLayoutAtoms::tableFrame
*/
NS_IMETHOD GetFrameType(nsIAtom** aType) const;
/** @see nsIFrame::GetFrameName */
NS_IMETHOD GetFrameName(nsString& aResult) const;

Просмотреть файл

@ -28,6 +28,7 @@
#include "nsIPtr.h"
#include "prinrval.h"
#include "nsHTMLIIDs.h"
#include "nsLayoutAtoms.h"
#ifdef NS_DEBUG
static PRBool gsDebug = PR_FALSE;
@ -1187,6 +1188,14 @@ void nsTableOuterFrame::DeleteChildsNextInFlow(nsIPresContext& aPresContext, nsI
#endif
}
NS_IMETHODIMP
nsTableOuterFrame::GetFrameType(nsIAtom** aType) const
{
NS_PRECONDITION(nsnull != aType, "null OUT parameter pointer");
*aType = nsLayoutAtoms::tableOuterFrame;
NS_ADDREF(*aType);
return NS_OK;
}
/* ----- global methods ----- */

Просмотреть файл

@ -75,6 +75,13 @@ public:
nsIStyleContext* aStyleContext,
nsIFrame*& aContinuingFrame);
/**
* Get the "type" of the frame
*
* @see nsLayoutAtoms::tableOuterFrame
*/
NS_IMETHOD GetFrameType(nsIAtom** aType) const;
/** @see nsIFrame::GetFrameName */
NS_IMETHOD GetFrameName(nsString& aResult) const;

Просмотреть файл

@ -30,6 +30,7 @@
#include "nsIReflowCommand.h"
#include "nsCSSRendering.h"
#include "nsHTMLIIDs.h"
#include "nsLayoutAtoms.h"
// the following header files are required for style optimizations that work only when the child content is really a cell
#include "nsIHTMLTableCellElement.h"
static NS_DEFINE_IID(kIHTMLTableCellElementIID, NS_IHTMLTABLECELLELEMENT_IID);
@ -1540,6 +1541,16 @@ void nsTableRowFrame::InsertCellFrame(nsTableCellFrame* aFrame,
mFrames.InsertFrame(nsnull, aPrevSibling, aFrame);
}
NS_IMETHODIMP
nsTableRowFrame::GetFrameType(nsIAtom** aType) const
{
NS_PRECONDITION(nsnull != aType, "null OUT parameter pointer");
*aType = nsLayoutAtoms::tableRowFrame;
NS_ADDREF(*aType);
return NS_OK;
}
/* ----- global methods ----- */
nsresult

Просмотреть файл

@ -99,6 +99,13 @@ public:
nsIStyleContext* aStyleContext,
nsIFrame*& aContinuingFrame);
/**
* Get the "type" of the frame
*
* @see nsLayoutAtoms::tableRowFrame
*/
NS_IMETHOD GetFrameType(nsIAtom** aType) const;
NS_IMETHOD GetFrameName(nsString& aResult) const;
/** set mTallestCell to 0 in anticipation of recalculating it */

Просмотреть файл

@ -33,6 +33,7 @@
#include "nsHTMLAtoms.h"
#include "nsIStyleSet.h"
#include "nsIPresShell.h"
#include "nsLayoutAtoms.h"
#ifdef NS_DEBUG
static PRBool gsDebug = PR_FALSE;
@ -1313,6 +1314,16 @@ nsTableRowGroupFrame::CreateContinuingFrame(nsIPresContext& aPresContext,
return NS_OK;
}
NS_IMETHODIMP
nsTableRowGroupFrame::GetFrameType(nsIAtom** aType) const
{
NS_PRECONDITION(nsnull != aType, "null OUT parameter pointer");
*aType = nsLayoutAtoms::tableRowGroupFrame;
NS_ADDREF(*aType);
return NS_OK;
}
/* ----- global methods ----- */
nsresult

Просмотреть файл

@ -96,6 +96,13 @@ public:
const nsHTMLReflowState& aReflowState,
nsReflowStatus& aStatus);
/**
* Get the "type" of the frame
*
* @see nsLayoutAtoms::tableRowGroupFrame
*/
NS_IMETHOD GetFrameType(nsIAtom** aType) const;
NS_IMETHOD GetFrameName(nsString& aResult) const;
/** set aCount to the number of child rows (not necessarily == number of child frames) */

Просмотреть файл

@ -35,6 +35,7 @@
#include "nsIPtr.h"
#include "nsIView.h"
#include "nsStyleUtil.h"
#include "nsLayoutAtoms.h"
NS_DEF_PTR(nsIStyleContext);
@ -1072,6 +1073,15 @@ void nsTableCellFrame::RecalcLayoutData(nsTableFrame* aTableFrame,
mCalculated = NS_OK;
}
NS_IMETHODIMP
nsTableCellFrame::GetFrameType(nsIAtom** aType) const
{
NS_PRECONDITION(nsnull != aType, "null OUT parameter pointer");
*aType = nsLayoutAtoms::tableCellFrame;
NS_ADDREF(*aType);
return NS_OK;
}
NS_IMETHODIMP
nsTableCellFrame::GetFrameName(nsString& aResult) const
{

Просмотреть файл

@ -87,6 +87,13 @@ public:
nsIStyleContext* aStyleContext,
nsIFrame*& aContinuingFrame);
/**
* Get the "type" of the frame
*
* @see nsLayoutAtoms::tableCellFrame
*/
NS_IMETHOD GetFrameType(nsIAtom** aType) const;
NS_IMETHOD GetFrameName(nsString& aResult) const;
virtual void VerticallyAlignChild();

Просмотреть файл

@ -264,6 +264,14 @@ void ColumnInfoCache::GetColumnsByType(const nsStyleUnit aType,
if (PR_TRUE==gsDebug || PR_TRUE==gsDebugIR) printf("CIC GetColumnsByType: found %d of type %d\n", aOutNumColumns, aType);
}
NS_IMETHODIMP
nsTableFrame::GetFrameType(nsIAtom** aType) const
{
NS_PRECONDITION(nsnull != aType, "null OUT parameter pointer");
*aType = nsLayoutAtoms::tableFrame;
NS_ADDREF(*aType);
return NS_OK;
}
/* --------------------- nsTableFrame -------------------- */

Просмотреть файл

@ -210,6 +210,12 @@ public:
/** return PR_TRUE if the column width information has been set */
PRBool IsColumnWidthsSet();
/**
* Get the "type" of the frame
*
* @see nsLayoutAtoms::tableFrame
*/
NS_IMETHOD GetFrameType(nsIAtom** aType) const;
/** @see nsIFrame::GetFrameName */
NS_IMETHOD GetFrameName(nsString& aResult) const;

Просмотреть файл

@ -28,6 +28,7 @@
#include "nsIPtr.h"
#include "prinrval.h"
#include "nsHTMLIIDs.h"
#include "nsLayoutAtoms.h"
#ifdef NS_DEBUG
static PRBool gsDebug = PR_FALSE;
@ -1187,6 +1188,14 @@ void nsTableOuterFrame::DeleteChildsNextInFlow(nsIPresContext& aPresContext, nsI
#endif
}
NS_IMETHODIMP
nsTableOuterFrame::GetFrameType(nsIAtom** aType) const
{
NS_PRECONDITION(nsnull != aType, "null OUT parameter pointer");
*aType = nsLayoutAtoms::tableOuterFrame;
NS_ADDREF(*aType);
return NS_OK;
}
/* ----- global methods ----- */

Просмотреть файл

@ -75,6 +75,13 @@ public:
nsIStyleContext* aStyleContext,
nsIFrame*& aContinuingFrame);
/**
* Get the "type" of the frame
*
* @see nsLayoutAtoms::tableOuterFrame
*/
NS_IMETHOD GetFrameType(nsIAtom** aType) const;
/** @see nsIFrame::GetFrameName */
NS_IMETHOD GetFrameName(nsString& aResult) const;

Просмотреть файл

@ -30,6 +30,7 @@
#include "nsIReflowCommand.h"
#include "nsCSSRendering.h"
#include "nsHTMLIIDs.h"
#include "nsLayoutAtoms.h"
// the following header files are required for style optimizations that work only when the child content is really a cell
#include "nsIHTMLTableCellElement.h"
static NS_DEFINE_IID(kIHTMLTableCellElementIID, NS_IHTMLTABLECELLELEMENT_IID);
@ -1540,6 +1541,16 @@ void nsTableRowFrame::InsertCellFrame(nsTableCellFrame* aFrame,
mFrames.InsertFrame(nsnull, aPrevSibling, aFrame);
}
NS_IMETHODIMP
nsTableRowFrame::GetFrameType(nsIAtom** aType) const
{
NS_PRECONDITION(nsnull != aType, "null OUT parameter pointer");
*aType = nsLayoutAtoms::tableRowFrame;
NS_ADDREF(*aType);
return NS_OK;
}
/* ----- global methods ----- */
nsresult

Просмотреть файл

@ -99,6 +99,13 @@ public:
nsIStyleContext* aStyleContext,
nsIFrame*& aContinuingFrame);
/**
* Get the "type" of the frame
*
* @see nsLayoutAtoms::tableRowFrame
*/
NS_IMETHOD GetFrameType(nsIAtom** aType) const;
NS_IMETHOD GetFrameName(nsString& aResult) const;
/** set mTallestCell to 0 in anticipation of recalculating it */

Просмотреть файл

@ -33,6 +33,7 @@
#include "nsHTMLAtoms.h"
#include "nsIStyleSet.h"
#include "nsIPresShell.h"
#include "nsLayoutAtoms.h"
#ifdef NS_DEBUG
static PRBool gsDebug = PR_FALSE;
@ -1313,6 +1314,16 @@ nsTableRowGroupFrame::CreateContinuingFrame(nsIPresContext& aPresContext,
return NS_OK;
}
NS_IMETHODIMP
nsTableRowGroupFrame::GetFrameType(nsIAtom** aType) const
{
NS_PRECONDITION(nsnull != aType, "null OUT parameter pointer");
*aType = nsLayoutAtoms::tableRowGroupFrame;
NS_ADDREF(*aType);
return NS_OK;
}
/* ----- global methods ----- */
nsresult

Просмотреть файл

@ -96,6 +96,13 @@ public:
const nsHTMLReflowState& aReflowState,
nsReflowStatus& aStatus);
/**
* Get the "type" of the frame
*
* @see nsLayoutAtoms::tableRowGroupFrame
*/
NS_IMETHOD GetFrameType(nsIAtom** aType) const;
NS_IMETHOD GetFrameName(nsString& aResult) const;
/** set aCount to the number of child rows (not necessarily == number of child frames) */