From 3b6c33c60c28c40349c1106e32d5641ab25ec8f4 Mon Sep 17 00:00:00 2001 From: "dbaron%fas.harvard.edu" Date: Wed, 28 Nov 2001 06:50:13 +0000 Subject: [PATCH] Fix HP bustage by moving GetStyleData function templates from nsStyleStruct.h to nsIFrame.h and nsIStyleContext.h b=111883 git-svn-id: svn://10.0.0.236/trunk@109122 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/content/shared/public/nsStyleStruct.h | 23 ++++--------------- mozilla/layout/base/public/nsIFrame.h | 10 ++++++++ mozilla/layout/base/public/nsIStyleContext.h | 9 ++++++++ mozilla/layout/generic/nsIFrame.h | 10 ++++++++ mozilla/layout/style/nsStyleStruct.h | 23 ++++--------------- 5 files changed, 37 insertions(+), 38 deletions(-) diff --git a/mozilla/content/shared/public/nsStyleStruct.h b/mozilla/content/shared/public/nsStyleStruct.h index f656b48f6ff..912d8889371 100644 --- a/mozilla/content/shared/public/nsStyleStruct.h +++ b/mozilla/content/shared/public/nsStyleStruct.h @@ -1100,24 +1100,9 @@ inline nsBorderEdges::nsBorderEdges() mOutsideEdge = PR_TRUE; }; -// typesafe mechanisms for accessing style data -class nsIFrame; -class nsIStyleContext; - -template -inline void -GetStyleData(nsIFrame* aFrame, const T** aStyleStruct) -{ - aFrame->GetStyleData(NS_GET_STYLESTRUCTID(T), - *NS_REINTERPRET_CAST(const nsStyleStruct**, aStyleStruct)); -} - -template -inline void -GetStyleData(nsIStyleContext* aStyleContext, const T** aStyleStruct) -{ - *aStyleStruct = NS_STATIC_CAST(const T*, - aStyleContext->GetStyleData(NS_GET_STYLESTRUCTID(T))); -} +// typesafe mechanisms for accessing style data, global function +// templates |GetStyleData(nsIFrame*, const T**)| and +// |GetStyleData(nsIStyleContext*, const T**)|, where T is derived from +// nsStyleStruct, are located in nsIStyleContext.h and nsIFrame.h #endif /* nsStyleStruct_h___ */ diff --git a/mozilla/layout/base/public/nsIFrame.h b/mozilla/layout/base/public/nsIFrame.h index 1e39212b350..0801d8d0cef 100644 --- a/mozilla/layout/base/public/nsIFrame.h +++ b/mozilla/layout/base/public/nsIFrame.h @@ -1159,4 +1159,14 @@ private: NS_IMETHOD_(nsrefcnt) Release(void) = 0; }; +// typesafe way to access style data. See comment in nsStyleStruct.h +// and also overloaded function in nsIStyleContext.h +template +inline void +GetStyleData(nsIFrame* aFrame, const T** aStyleStruct) +{ + aFrame->GetStyleData(NS_GET_STYLESTRUCTID(T), + *NS_REINTERPRET_CAST(const nsStyleStruct**, aStyleStruct)); +} + #endif /* nsIFrame_h___ */ diff --git a/mozilla/layout/base/public/nsIStyleContext.h b/mozilla/layout/base/public/nsIStyleContext.h index 9fcd05cceb8..919d6d38014 100644 --- a/mozilla/layout/base/public/nsIStyleContext.h +++ b/mozilla/layout/base/public/nsIStyleContext.h @@ -139,5 +139,14 @@ extern NS_EXPORT nsresult nsRuleNode* aRuleNode, nsIPresContext* aPresContext); +// typesafe way to access style data. See nsStyleStruct.h and also +// overloaded function in nsIFrame.h. +template +inline void +GetStyleData(nsIStyleContext* aStyleContext, const T** aStyleStruct) +{ + *aStyleStruct = NS_STATIC_CAST(const T*, + aStyleContext->GetStyleData(NS_GET_STYLESTRUCTID(T))); +} #endif /* nsIStyleContext_h___ */ diff --git a/mozilla/layout/generic/nsIFrame.h b/mozilla/layout/generic/nsIFrame.h index 1e39212b350..0801d8d0cef 100644 --- a/mozilla/layout/generic/nsIFrame.h +++ b/mozilla/layout/generic/nsIFrame.h @@ -1159,4 +1159,14 @@ private: NS_IMETHOD_(nsrefcnt) Release(void) = 0; }; +// typesafe way to access style data. See comment in nsStyleStruct.h +// and also overloaded function in nsIStyleContext.h +template +inline void +GetStyleData(nsIFrame* aFrame, const T** aStyleStruct) +{ + aFrame->GetStyleData(NS_GET_STYLESTRUCTID(T), + *NS_REINTERPRET_CAST(const nsStyleStruct**, aStyleStruct)); +} + #endif /* nsIFrame_h___ */ diff --git a/mozilla/layout/style/nsStyleStruct.h b/mozilla/layout/style/nsStyleStruct.h index f656b48f6ff..912d8889371 100644 --- a/mozilla/layout/style/nsStyleStruct.h +++ b/mozilla/layout/style/nsStyleStruct.h @@ -1100,24 +1100,9 @@ inline nsBorderEdges::nsBorderEdges() mOutsideEdge = PR_TRUE; }; -// typesafe mechanisms for accessing style data -class nsIFrame; -class nsIStyleContext; - -template -inline void -GetStyleData(nsIFrame* aFrame, const T** aStyleStruct) -{ - aFrame->GetStyleData(NS_GET_STYLESTRUCTID(T), - *NS_REINTERPRET_CAST(const nsStyleStruct**, aStyleStruct)); -} - -template -inline void -GetStyleData(nsIStyleContext* aStyleContext, const T** aStyleStruct) -{ - *aStyleStruct = NS_STATIC_CAST(const T*, - aStyleContext->GetStyleData(NS_GET_STYLESTRUCTID(T))); -} +// typesafe mechanisms for accessing style data, global function +// templates |GetStyleData(nsIFrame*, const T**)| and +// |GetStyleData(nsIStyleContext*, const T**)|, where T is derived from +// nsStyleStruct, are located in nsIStyleContext.h and nsIFrame.h #endif /* nsStyleStruct_h___ */