Implement CSS2 counters. b=3247 r+sr=bzbarsky

git-svn-id: svn://10.0.0.236/trunk@171473 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
dbaron%dbaron.org
2005-04-01 23:07:00 +00:00
parent 2c4a3cb1e0
commit 72020748e5
30 changed files with 1803 additions and 715 deletions

View File

@@ -41,6 +41,7 @@
#include "nsILayoutHistoryState.h"
#include "nsIXBLService.h"
#include "nsQuoteList.h"
#include "nsCounterManager.h"
#include "nsDataHashtable.h"
#include "nsHashKeys.h"
#include "plevent.h"
@@ -120,7 +121,9 @@ public:
nsIContent* aContent2,
PRInt32 aStateMask);
void GeneratedContentFrameRemoved(nsIFrame* aFrame);
// Should be called when a frame is going to be destroyed and
// WillDestroyFrameTree hasn't been called yet.
void NotifyDestroyingFrame(nsIFrame* aFrame);
nsresult AttributeChanged(nsIContent* aContent,
PRInt32 aNameSpaceID,
@@ -943,6 +946,13 @@ private:
mQuoteList.RecalcAll();
}
void CountersDirty() {
if (mUpdateCount != 0)
mCountersDirty = PR_TRUE;
else
mCounterManager.RecalcAll();
}
inline NS_HIDDEN_(nsresult)
CreateInsertionPointChildren(nsFrameConstructorState &aState,
nsIFrame *aNewFrame,
@@ -990,8 +1000,10 @@ private:
nsIFrame* mDocElementContainingBlock;
nsIFrame* mGfxScrollFrame;
nsQuoteList mQuoteList;
nsCounterManager mCounterManager;
PRUint16 mUpdateCount;
PRPackedBool mQuotesDirty;
PRPackedBool mCountersDirty;
nsCOMPtr<nsILayoutHistoryState> mTempFrameTreeState;