Backed out changeset e2927bb26412
authorRobert O'Callahan <robert@ocallahan.org>
Wed, 26 Aug 2009 14:49:18 -0700
changeset 32009 f5cff6af5a6b5195e99b094241db00b6b643a4ec
parent 32001 e2927bb264129e21ef1e27c699707f06cef50c4d
child 32010 de6230e88094aea3f8efa9689f39cce7f5164f93
push id1
push userroot
push dateTue, 26 Apr 2011 22:38:44 +0000
treeherdermozilla-beta@bfdb6e623a36 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
milestone1.9.3a1pre
backs oute2927bb264129e21ef1e27c699707f06cef50c4d
Backed out changeset e2927bb26412
layout/base/nsIPercentHeightObserver.h
layout/forms/nsICheckboxControlFrame.h
layout/forms/nsIComboboxControlFrame.h
layout/forms/nsIFormControlFrame.h
layout/forms/nsIListControlFrame.h
layout/forms/nsIRadioControlFrame.h
layout/forms/nsISelectControlFrame.h
layout/forms/nsITextControlFrame.h
layout/forms/nsLegendFrame.h
layout/generic/nsBlockFrame.h
layout/generic/nsFrame.cpp
layout/generic/nsFrameSetFrame.h
layout/generic/nsIAnonymousContentCreator.h
layout/generic/nsICanvasFrame.h
layout/generic/nsIFrame.h
layout/generic/nsIFrameFrame.h
layout/generic/nsIImageFrame.h
layout/generic/nsIObjectFrame.h
layout/generic/nsIPageSequenceFrame.h
layout/generic/nsIScrollableFrame.h
layout/generic/nsIScrollableViewProvider.h
layout/generic/nsIStatefulFrame.h
layout/generic/nsInlineFrame.h
layout/generic/nsQueryFrame.h
layout/mathml/nsIMathMLFrame.h
layout/style/nsICSSPseudoComparator.h
layout/svg/base/src/nsISVGChildFrame.h
layout/svg/base/src/nsISVGGlyphFragmentLeaf.h
layout/svg/base/src/nsISVGGlyphFragmentNode.h
layout/svg/base/src/nsISVGSVGFrame.h
layout/svg/base/src/nsSVGContainerFrame.h
layout/svg/base/src/nsSVGInnerSVGFrame.h
layout/svg/base/src/nsSVGTextContainerFrame.h
layout/tables/nsITableCellLayout.h
layout/tables/nsITableLayout.h
layout/tables/nsTableCellFrame.h
layout/tables/nsTableRowFrame.h
layout/tables/nsTableRowGroupFrame.h
layout/xul/base/public/nsIMenuFrame.h
layout/xul/base/public/nsIScrollbarMediator.h
layout/xul/base/src/nsIRootBox.h
layout/xul/base/src/nsIScrollbarFrame.h
layout/xul/base/src/nsListBoxBodyFrame.h
layout/xul/base/src/tree/src/nsTreeBodyFrame.h
--- a/layout/base/nsIPercentHeightObserver.h
+++ b/layout/base/nsIPercentHeightObserver.h
@@ -46,17 +46,17 @@ class  nsPresContext;
 /**
  * This interface is supported by frames that need to provide computed height
  * values to children during reflow which would otherwise not happen. Currently only
  * table cells support this.
  */
 class nsIPercentHeightObserver
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIPercentHeightObserver)
+  NS_DECLARE_FRAME_ACCESSOR(nsIPercentHeightObserver)
 
   // Notify the observer that aReflowState has no computed height, but it has a percent height
   virtual void NotifyPercentHeight(const nsHTMLReflowState& aReflowState) = 0;
 
   // Ask the observer if it should observe aReflowState.frame
   virtual PRBool NeedsToObserve(const nsHTMLReflowState& aReflowState) = 0;
 };
 
--- a/layout/forms/nsICheckboxControlFrame.h
+++ b/layout/forms/nsICheckboxControlFrame.h
@@ -44,17 +44,17 @@ class nsPresContext;
 
 /** 
   * nsICheckControlFrame is the common interface radio buttons.
   * @see nsFromControlFrame and its base classes for more info
   */
 class nsICheckboxControlFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsICheckboxControlFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsICheckboxControlFrame)
   
   /**
    * Called by content when checkbox "checked" changes
    */
   NS_IMETHOD OnChecked(nsPresContext* aPresContext, PRBool aChecked) = 0;
 };
 
 #endif
--- a/layout/forms/nsIComboboxControlFrame.h
+++ b/layout/forms/nsIComboboxControlFrame.h
@@ -49,17 +49,17 @@ class nsCSSFrameConstructor;
 /** 
   * nsIComboboxControlFrame is the common interface for frames of form controls. It
   * provides a uniform way of creating widgets, resizing, and painting.
   * @see nsLeafFrame and its base classes for more info
   */
 class nsIComboboxControlFrame : public nsQueryFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIComboboxControlFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIComboboxControlFrame)
 
   /**
    * Indicates whether the list is dropped down
    */
   virtual PRBool IsDroppedDown() = 0;
 
   /**
    * Shows or hides the drop down
--- a/layout/forms/nsIFormControlFrame.h
+++ b/layout/forms/nsIFormControlFrame.h
@@ -47,17 +47,17 @@ struct nsSize;
 /** 
   * nsIFormControlFrame is the common interface for frames of form controls. It
   * provides a uniform way of creating widgets, resizing, and painting.
   * @see nsLeafFrame and its base classes for more info
   */
 class nsIFormControlFrame : public nsQueryFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIFormControlFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIFormControlFrame)
 
   /**
    * 
    * @param aOn
    * @param aRepaint
    */
   virtual void SetFocus(PRBool aOn = PR_TRUE, PRBool aRepaint = PR_FALSE) = 0;
 
--- a/layout/forms/nsIListControlFrame.h
+++ b/layout/forms/nsIListControlFrame.h
@@ -45,17 +45,17 @@ class nsAString;
 class nsIContent;
 
 /** 
   * nsIListControlFrame is the interface for frame-based listboxes.
   */
 class nsIListControlFrame : public nsQueryFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIListControlFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIListControlFrame)
 
   /**
    * Sets the ComboBoxFrame
    *
    */
   virtual void SetComboboxFrame(nsIFrame* aComboboxFrame) = 0;
 
   /**
--- a/layout/forms/nsIRadioControlFrame.h
+++ b/layout/forms/nsIRadioControlFrame.h
@@ -43,17 +43,17 @@ class nsStyleContext;
 
 /** 
   * nsIRadioControlFrame is the common interface radio buttons.
   * @see nsFormControlFrame and its base classes for more info
   */
 class nsIRadioControlFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIRadioControlFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIRadioControlFrame)
 
    /**
     * Called by content when the radio button's state changes
     */
    NS_IMETHOD OnChecked(nsPresContext* aPresContext, PRBool aChecked) = 0;
 };
 
 #endif
--- a/layout/forms/nsISelectControlFrame.h
+++ b/layout/forms/nsISelectControlFrame.h
@@ -44,17 +44,17 @@
 class nsIDOMHTMLOptionElement;
 
 /** 
   * nsISelectControlFrame is the interface for combo boxes and listboxes
   */
 class nsISelectControlFrame : public nsQueryFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsISelectControlFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsISelectControlFrame)
 
   /**
    * Adds an option to the list at index
    */
 
   NS_IMETHOD AddOption(PRInt32 index) = 0;
 
   /**
--- a/layout/forms/nsITextControlFrame.h
+++ b/layout/forms/nsITextControlFrame.h
@@ -43,17 +43,17 @@
 class nsIEditor;
 class nsIDocShell;
 class nsISelectionController;
 class nsFrameSelection;
 
 class nsITextControlFrame : public nsIFormControlFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsITextControlFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsITextControlFrame)
 
   NS_IMETHOD    GetEditor(nsIEditor **aEditor) = 0;
 
   /**
    * Tell whether the frame currently owns the value or the content does (for
    * edge cases where the frame has just been created or is just going away).
    *
    * @param aOwnsValue whether the frame owns the value [out]
--- a/layout/forms/nsLegendFrame.h
+++ b/layout/forms/nsLegendFrame.h
@@ -37,17 +37,17 @@
 
 #ifndef nsLegendFrame_h___
 #define nsLegendFrame_h___
 
 #include "nsBlockFrame.h"
 
 class nsLegendFrame : public nsBlockFrame {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsLegendFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsLegendFrame)
 
   nsLegendFrame(nsStyleContext* aContext) : nsBlockFrame(aContext) {}
 
   NS_DECL_QUERYFRAME
 
   NS_IMETHOD Reflow(nsPresContext*           aPresContext,
                     nsHTMLReflowMetrics&     aDesiredSize,
                     const nsHTMLReflowState& aReflowState,
--- a/layout/generic/nsBlockFrame.h
+++ b/layout/generic/nsBlockFrame.h
@@ -137,17 +137,17 @@ class nsIntervalSet;
  * The block frame has an additional named child list:
  * - "Absolute-list" which contains the absolutely positioned frames
  *
  * @see nsGkAtoms::absoluteList
  */ 
 class nsBlockFrame : public nsBlockFrameSuper
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsBlockFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsBlockFrame)
 
   typedef nsLineList::iterator                  line_iterator;
   typedef nsLineList::const_iterator            const_line_iterator;
   typedef nsLineList::reverse_iterator          reverse_line_iterator;
   typedef nsLineList::const_reverse_iterator    const_reverse_line_iterator;
 
   line_iterator begin_lines() { return mLines.begin(); }
   line_iterator end_lines() { return mLines.end(); }
--- a/layout/generic/nsFrame.cpp
+++ b/layout/generic/nsFrame.cpp
@@ -326,17 +326,17 @@ nsFrame::~nsFrame()
 
   NS_IF_RELEASE(mContent);
   if (mStyleContext)
     mStyleContext->Release();
 }
 
 NS_QUERYFRAME_HEAD(nsFrame)
   NS_QUERYFRAME_ENTRY(nsIFrame)
-NS_QUERYFRAME_TAIL_INHERITANCE_ROOT
+NS_QUERYFRAME_TAIL
 
 /////////////////////////////////////////////////////////////////////////////
 // nsIFrame
 
 NS_IMETHODIMP
 nsFrame::Init(nsIContent*      aContent,
               nsIFrame*        aParent,
               nsIFrame*        aPrevInFlow)
--- a/layout/generic/nsFrameSetFrame.h
+++ b/layout/generic/nsFrameSetFrame.h
@@ -99,17 +99,17 @@ struct nsFramesetDrag {
 };
 
 /*******************************************************************************
  * nsHTMLFramesetFrame
  ******************************************************************************/
 class nsHTMLFramesetFrame : public nsHTMLContainerFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsHTMLFramesetFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsHTMLFramesetFrame)
 
   nsHTMLFramesetFrame(nsStyleContext* aContext);
 
   virtual ~nsHTMLFramesetFrame();
 
   NS_DECL_QUERYFRAME
 
   NS_IMETHOD Init(nsIContent*      aContent,
--- a/layout/generic/nsIAnonymousContentCreator.h
+++ b/layout/generic/nsIAnonymousContentCreator.h
@@ -53,17 +53,17 @@ template <class T> class nsTArray;
  * Any source for anonymous content can implement this interface to provide it.
  * HTML frames like nsFileControlFrame currently use this.
  *
  * @see nsCSSFrameConstructor
  */
 class nsIAnonymousContentCreator
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIAnonymousContentCreator)
+  NS_DECLARE_FRAME_ACCESSOR(nsIAnonymousContentCreator)
 
   /**
    * Creates "native" anonymous content and adds the created content to
    * the aElements array. None of the returned elements can be nsnull.
    *
    * @note The returned elements are owned by this object. This object is
    *       responsible for calling UnbindFromTree on the elements it returned
    *       from CreateAnonymousContent when appropriate (i.e. before releasing
--- a/layout/generic/nsICanvasFrame.h
+++ b/layout/generic/nsICanvasFrame.h
@@ -40,17 +40,17 @@
 #ifndef nsICanvasFrame_h__
 #define nsICanvasFrame_h__
 
 #include "nsQueryFrame.h"
 
 class nsICanvasFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsICanvasFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsICanvasFrame)
 
   /** SetHasFocus tells the CanvasFrame to draw with focus ring
    *  @param aHasFocus PR_TRUE to show focus ring, PR_FALSE to hide it
    */
   NS_IMETHOD SetHasFocus(PRBool aHasFocus) = 0;
 
 };
 
--- a/layout/generic/nsIFrame.h
+++ b/layout/generic/nsIFrame.h
@@ -485,17 +485,17 @@ typedef PRBool nsDidReflowStatus;
  * link to many of the functions defined here. Too bad.
  *
  * If you're not in layout but you must call functions in here, at least
  * restrict yourself to calling virtual methods, which won't hurt you as badly.
  */
 class nsIFrame : public nsQueryFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIFrame)
 
   nsPresContext* PresContext() const {
     return GetStyleContext()->GetRuleNode()->GetPresContext();
   }
 
   /**
    * Called to initialize the frame. This is called immediately after creating
    * the frame.
--- a/layout/generic/nsIFrameFrame.h
+++ b/layout/generic/nsIFrameFrame.h
@@ -43,17 +43,17 @@
 #ifndef nsIFrameFrame_h___
 #define nsIFrameFrame_h___
 
 class nsIDocShell;
 
 class nsIFrameFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIFrameFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIFrameFrame)
 
   NS_IMETHOD GetDocShell(nsIDocShell **aDocShell) = 0;
 
   /**
    * Only allowed to fail if the other frame is not the same type as
    * this one or if one of the frames has no docshell.  Don't call
    * EndSwapDocShells() unless BeginSwapDocShells() succeeds.
    */
--- a/layout/generic/nsIImageFrame.h
+++ b/layout/generic/nsIImageFrame.h
@@ -46,16 +46,16 @@
 struct nsSize;
 class imgIRequest;
 class nsPresContext;
 class nsIImageMap;
 
 class nsIImageFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIImageFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIImageFrame)
 
   NS_IMETHOD GetIntrinsicImageSize(nsSize& aSize) = 0;
 
   NS_IMETHOD GetImageMap(nsPresContext *aPresContext, nsIImageMap **aImageMap) = 0;
 };
 
 #endif /* nsIImageFrame_h___ */
--- a/layout/generic/nsIObjectFrame.h
+++ b/layout/generic/nsIObjectFrame.h
@@ -45,17 +45,17 @@
 
 #include "nsIFrame.h"
 
 class nsIPluginInstance;
 
 class nsIObjectFrame : public nsQueryFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIObjectFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIObjectFrame)
 
   NS_IMETHOD GetPluginInstance(nsIPluginInstance*& aPluginInstance) = 0;
 
   /**
    * Instantiate a plugin for a channel, returning a stream listener for the
    * data.
    *
    * @note Calling this method can delete the frame, so don't assume
--- a/layout/generic/nsIPageSequenceFrame.h
+++ b/layout/generic/nsIPageSequenceFrame.h
@@ -46,17 +46,17 @@ class nsIPrintSettings;
 /**
  * Interface for accessing special capabilities of the page sequence frame.
  *
  * Today all that exists are member functions for printing.
  */
 class nsIPageSequenceFrame : public nsQueryFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIPageSequenceFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIPageSequenceFrame)
 
   /**
    * Print the set of pages.
    *
    * @param   aPrintOptions options for printing
    * @param   aStatusCallback interface that the client provides to receive
    *            progress notifications. Can be NULL
    * @return  NS_OK if successful
--- a/layout/generic/nsIScrollableFrame.h
+++ b/layout/generic/nsIScrollableFrame.h
@@ -50,17 +50,17 @@
 #include "nsPresContext.h"
 #include "nsIFrame.h" // to get nsIBox, which is a typedef
 
 class nsBoxLayoutState;
 
 class nsIScrollableFrame : public nsIScrollableViewProvider {
 public:
 
-  NS_DECL_QUERYFRAME_TARGET(nsIScrollableFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIScrollableFrame)
 
   /**
    * Get the frame that we are scrolling within the scrollable frame.
    * @result child frame
    */
   virtual nsIFrame* GetScrolledFrame() const = 0;
 
   typedef nsPresContext::ScrollbarStyles ScrollbarStyles;
--- a/layout/generic/nsIScrollableViewProvider.h
+++ b/layout/generic/nsIScrollableViewProvider.h
@@ -41,14 +41,14 @@
 
 #include "nsQueryFrame.h"
 
 class nsIScrollableView;
 
 class nsIScrollableViewProvider : public nsQueryFrame
 {
  public: 
-  NS_DECL_QUERYFRAME_TARGET(nsIScrollableViewProvider)
+  NS_DECLARE_FRAME_ACCESSOR(nsIScrollableViewProvider)
 
   virtual nsIScrollableView* GetScrollableView() = 0;
 };
 
 #endif /* _nsIScrollableViewProvider_h */
--- a/layout/generic/nsIStatefulFrame.h
+++ b/layout/generic/nsIStatefulFrame.h
@@ -9,17 +9,17 @@
 #include "nsQueryFrame.h"
 
 class nsPresContext;
 class nsPresState;
 
 class nsIStatefulFrame
 {
  public: 
-  NS_DECL_QUERYFRAME_TARGET(nsIStatefulFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIStatefulFrame)
 
   // If you create a special type stateful frame (e.g. scroll) that needs
   // to be captured outside of the standard pass through the frames, you'll need
   // a special ID by which to refer to that type.
   enum SpecialStateID {eNoID=0, eDocumentScrollState};
 
   // Save the state for this frame.  Some implementations may choose to return
   // different states depending on the value of aStateID.  If this method
--- a/layout/generic/nsInlineFrame.h
+++ b/layout/generic/nsInlineFrame.h
@@ -71,17 +71,17 @@ class nsAnonymousBlockFrame;
  * Inline frame class.
  *
  * This class manages a list of child frames that are inline frames. Working with
  * nsLineLayout, the class will reflow and place inline frames on a line.
  */
 class nsInlineFrame : public nsInlineFrameSuper
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsInlineFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsInlineFrame)
   NS_DECL_QUERYFRAME
 
   friend nsIFrame* NS_NewInlineFrame(nsIPresShell* aPresShell, nsStyleContext* aContext);
 
   // nsIFrame overrides
   NS_IMETHOD BuildDisplayList(nsDisplayListBuilder*   aBuilder,
                               const nsRect&           aDirtyRect,
                               const nsDisplayListSet& aLists);
--- a/layout/generic/nsQueryFrame.h
+++ b/layout/generic/nsQueryFrame.h
@@ -35,51 +35,41 @@
  *
  * ***** END LICENSE BLOCK ***** */
 
 #ifndef nsQueryFrame_h
 #define nsQueryFrame_h
 
 #include "nscore.h"
 
-#define NS_DECL_QUERYFRAME_TARGET(classname)                    \
+#define NS_DECLARE_FRAME_ACCESSOR(classname) \
   static const nsQueryFrame::FrameIID kFrameIID = nsQueryFrame::classname##_id;
 
-#define NS_DECL_QUERYFRAME                                      \
+#define NS_DECL_QUERYFRAME \
   virtual void* QueryFrame(FrameIID id);
 
-#define NS_QUERYFRAME_HEAD(class)                               \
-  void* class::QueryFrame(FrameIID id) { switch (id) {
-
-#define NS_QUERYFRAME_ENTRY(class)                              \
-  case class::kFrameIID: return static_cast<class*>(this);
-
-#define NS_QUERYFRAME_ENTRY_CONDITIONAL(class, condition)       \
-  case class::kFrameIID:                                        \
-  if (condition) return static_cast<class*>(this);              \
-  break;
+#define NS_QUERYFRAME_HEAD(class) \
+  void* class::QueryFrame(FrameIID id) {
 
-#define NS_QUERYFRAME_TAIL_INHERITING(class)                    \
-  default: break;                                               \
-  }                                                             \
-  return class::QueryFrame(id);                                 \
-}
+#define NS_QUERYFRAME_ENTRY(class) \
+  if (class::kFrameIID == id) \
+    return static_cast<class*>(this);
 
-#define NS_QUERYFRAME_TAIL_INHERITANCE_ROOT                     \
-  default: break;                                               \
-  }                                                             \
-  return nsnull;                                                \
-}
+#define NS_QUERYFRAME_TAIL_INHERITING(class) \
+  return class::QueryFrame(id); }
+
+#define NS_QUERYFRAME_TAIL return nsnull; }
 
 class nsQueryFrame
 {
 public:
   enum FrameIID {
     BRFrame_id,
     CanvasFrame_id,
+    nsAreaFrame_id,
     nsAutoRepeatBoxFrame_id,
     nsBCTableCellFrame_id,
     nsBlockFrame_id,
     nsBox_id,
     nsBoxFrame_id,
     nsBulletFrame_id,
     nsButtonBoxFrame_id,
     nsColumnSetFrame_id,
@@ -153,17 +143,16 @@ public:
     nsListControlFrame_id,
     nsListItemFrame_id,
     nsMathMLContainerFrame_id,
     nsMathMLForeignFrameWrapper_id,
     nsMathMLFrame_id,
     nsMathMLmactionFrame_id,
     nsMathMLmathBlockFrame_id,
     nsMathMLmathInlineFrame_id,
-    nsMathMLmencloseFrame_id,
     nsMathMLmfencedFrame_id,
     nsMathMLmfracFrame_id,
     nsMathMLmmultiscriptsFrame_id,
     nsMathMLmoFrame_id,
     nsMathMLmoverFrame_id,
     nsMathMLmpaddedFrame_id,
     nsMathMLmphantomFrame_id,
     nsMathMLmrootFrame_id,
@@ -243,17 +232,16 @@ public:
     nsTableRowGroupFrame_id,
     nsTextBoxFrame_id,
     nsTextControlFrame_id,
     nsTextFrame_id,
     nsTitleBarFrame_id,
     nsTreeBodyFrame_id,
     nsTreeColFrame_id,
     nsVideoFrame_id,
-    nsXULLabelFrame_id,
     nsXULScrollFrame_id,
     SpacerFrame_id,
     ViewportFrame_id
   };
 
   virtual void* QueryFrame(FrameIID id) = 0;
 };
 
--- a/layout/mathml/nsIMathMLFrame.h
+++ b/layout/mathml/nsIMathMLFrame.h
@@ -59,17 +59,17 @@ enum eMathMLFrameType {
   eMathMLFrameType_UprightIdentifier,
   eMathMLFrameType_COUNT
 };
 
 // Abstract base class that provides additional methods for MathML frames
 class nsIMathMLFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIMathMLFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIMathMLFrame)
 
  /* SUPPORT FOR PRECISE POSITIONING */
  /*====================================================================*/
  
  /* Metrics that _exactly_ enclose the text of the frame.
   * The frame *must* have *already* being reflowed, before you can call
   * the GetBoundingMetrics() method.
   * Note that for a frame with nested children, the bounding metrics
--- a/layout/style/nsICSSPseudoComparator.h
+++ b/layout/style/nsICSSPseudoComparator.h
@@ -43,14 +43,14 @@
 #include "nsQueryFrame.h"
 
 class nsIAtom;
 struct nsCSSSelector;
 
 class nsICSSPseudoComparator
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsICSSPseudoComparator)
+  NS_DECLARE_FRAME_ACCESSOR(nsICSSPseudoComparator)
 
   NS_IMETHOD  PseudoMatches(nsIAtom* aTag, nsCSSSelector* aSelector, PRBool* aResult)=0;
 };
 
 #endif /* nsICSSPseudoComparator_h___ */
--- a/layout/svg/base/src/nsISVGChildFrame.h
+++ b/layout/svg/base/src/nsISVGChildFrame.h
@@ -48,17 +48,17 @@
 
 class gfxContext;
 class nsPresContext;
 class nsSVGRenderState;
 
 class nsISVGChildFrame : public nsQueryFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsISVGChildFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsISVGChildFrame)
 
   // Paint this frame - aDirtyRect is the area being redrawn, in frame
   // offset pixel coordinates
   NS_IMETHOD PaintSVG(nsSVGRenderState* aContext,
                       const nsIntRect *aDirtyRect)=0;
 
   // Check if this frame or children contain the given point,
   // specified in app units relative to the origin of the outer
--- a/layout/svg/base/src/nsISVGGlyphFragmentLeaf.h
+++ b/layout/svg/base/src/nsISVGGlyphFragmentLeaf.h
@@ -44,17 +44,17 @@
 
 class nsIDOMSVGPoint;
 class nsIDOMSVGRect;
 class nsSVGTextPathFrame;
 
 class nsISVGGlyphFragmentLeaf : public nsISVGGlyphFragmentNode
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsISVGGlyphFragmentLeaf)
+  NS_DECLARE_FRAME_ACCESSOR(nsISVGGlyphFragmentLeaf)
 
   NS_IMETHOD GetStartPositionOfChar(PRUint32 charnum, nsIDOMSVGPoint **_retval)=0;
   NS_IMETHOD GetEndPositionOfChar(PRUint32 charnum, nsIDOMSVGPoint **_retval)=0;
   NS_IMETHOD GetExtentOfChar(PRUint32 charnum, nsIDOMSVGRect **_retval)=0;
   NS_IMETHOD GetRotationOfChar(PRUint32 charnum, float *_retval)=0;
 
   NS_IMETHOD_(float) GetAdvance(PRBool aForceGlobalTransform)=0;
 
--- a/layout/svg/base/src/nsISVGGlyphFragmentNode.h
+++ b/layout/svg/base/src/nsISVGGlyphFragmentNode.h
@@ -48,17 +48,17 @@ class nsIDOMSVGPoint;
 #define PRESERVE_WHITESPACE       0x00
 #define COMPRESS_WHITESPACE       0x01
 #define TRIM_LEADING_WHITESPACE   0x02
 #define TRIM_TRAILING_WHITESPACE  0x04
 
 class nsISVGGlyphFragmentNode : public nsQueryFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsISVGGlyphFragmentNode)
+  NS_DECLARE_FRAME_ACCESSOR(nsISVGGlyphFragmentNode)
 
   virtual PRUint32 GetNumberOfChars()=0;
   virtual float GetComputedTextLength()=0;
   virtual float GetSubStringLength(PRUint32 charnum, PRUint32 fragmentChars)=0;
   virtual PRInt32 GetCharNumAtPosition(nsIDOMSVGPoint *point)=0;
   NS_IMETHOD_(nsISVGGlyphFragmentLeaf *) GetFirstGlyphFragment()=0;
   NS_IMETHOD_(nsISVGGlyphFragmentLeaf *) GetNextGlyphFragment()=0;
   NS_IMETHOD_(void) SetWhitespaceHandling(PRUint8 aWhitespaceHandling)=0;
--- a/layout/svg/base/src/nsISVGSVGFrame.h
+++ b/layout/svg/base/src/nsISVGSVGFrame.h
@@ -39,16 +39,16 @@
 #ifndef __NS_ISVGSVGFRAME_H__
 #define __NS_ISVGSVGFRAME_H__
 
 #include "nsQueryFrame.h"
 
 class nsISVGSVGFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsISVGSVGFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsISVGSVGFrame)
 
   NS_IMETHOD SuspendRedraw()=0;        
   NS_IMETHOD UnsuspendRedraw()=0;      
   NS_IMETHOD NotifyViewportChange()=0; 
 };
 
 #endif // __NS_ISVGSVGFRAME_H__
--- a/layout/svg/base/src/nsSVGContainerFrame.h
+++ b/layout/svg/base/src/nsSVGContainerFrame.h
@@ -49,17 +49,17 @@ class nsSVGContainerFrame : public nsSVG
 {
   friend nsIFrame* NS_NewSVGContainerFrame(nsIPresShell* aPresShell,
                                            nsStyleContext* aContext);
 protected:
   nsSVGContainerFrame(nsStyleContext* aContext) :
     nsSVGContainerFrameBase(aContext) {}
 
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsSVGContainerFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsSVGContainerFrame)
   
   NS_DECL_QUERYFRAME
 
   // Returns the transform to our gfxContext (to device pixels, not CSS px)
   virtual gfxMatrix GetCanvasTM() { return gfxMatrix(); }
 
   // nsIFrame:
   NS_IMETHOD AppendFrames(nsIAtom*        aListName,
@@ -83,17 +83,17 @@ public:
 class nsSVGDisplayContainerFrame : public nsSVGContainerFrame,
                                    public nsISVGChildFrame
 {
 protected:
   nsSVGDisplayContainerFrame(nsStyleContext* aContext) :
     nsSVGContainerFrame(aContext) {}
 
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsSVGDisplayContainerFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsSVGDisplayContainerFrame)
 
   NS_DECL_QUERYFRAME
 
   // nsIFrame:
   NS_IMETHOD InsertFrames(nsIAtom*        aListName,
                           nsIFrame*       aPrevFrame,
                           nsFrameList&    aFrameList);
   NS_IMETHOD RemoveFrame(nsIAtom*        aListName,
--- a/layout/svg/base/src/nsSVGInnerSVGFrame.h
+++ b/layout/svg/base/src/nsSVGInnerSVGFrame.h
@@ -47,17 +47,17 @@ class nsSVGInnerSVGFrame : public nsSVGI
 {
   friend nsIFrame*
   NS_NewSVGInnerSVGFrame(nsIPresShell* aPresShell, nsStyleContext* aContext);
 protected:
   nsSVGInnerSVGFrame(nsStyleContext* aContext) :
     nsSVGInnerSVGFrameBase(aContext) {}
   
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsSVGInnerSVGFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsSVGInnerSVGFrame)
 
   NS_DECL_QUERYFRAME
 
   // We don't define an AttributeChanged method since changes to the
   // 'x', 'y', 'width' and 'height' attributes of our content object
   // are handled in nsSVGSVGElement::DidModifySVGObservable
 
 #ifdef DEBUG
--- a/layout/svg/base/src/nsSVGTextContainerFrame.h
+++ b/layout/svg/base/src/nsSVGTextContainerFrame.h
@@ -54,17 +54,17 @@ public:
   void NotifyGlyphMetricsChange();
   NS_IMETHOD_(already_AddRefed<nsIDOMSVGLengthList>) GetX();
   NS_IMETHOD_(already_AddRefed<nsIDOMSVGLengthList>) GetY();
   NS_IMETHOD_(already_AddRefed<nsIDOMSVGLengthList>) GetDx();
   NS_IMETHOD_(already_AddRefed<nsIDOMSVGLengthList>) GetDy();
   
 public:
   NS_DECL_QUERYFRAME
-  NS_DECL_QUERYFRAME_TARGET(nsSVGTextContainerFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsSVGTextContainerFrame)
 
   // nsIFrame
   NS_IMETHOD InsertFrames(nsIAtom*        aListName,
                           nsIFrame*       aPrevFrame,
                           nsFrameList&    aFrameList);
   NS_IMETHOD RemoveFrame(nsIAtom *aListName, nsIFrame *aOldFrame);
 
   NS_IMETHOD GetStartPositionOfChar(PRUint32 charnum, nsIDOMSVGPoint **_retval);
--- a/layout/tables/nsITableCellLayout.h
+++ b/layout/tables/nsITableCellLayout.h
@@ -44,17 +44,17 @@
  * interface for layout objects that act like table cells.
  *
  * @author  sclark
  */
 class nsITableCellLayout
 {
 public:
 
-  NS_DECL_QUERYFRAME_TARGET(nsITableCellLayout)
+  NS_DECLARE_FRAME_ACCESSOR(nsITableCellLayout)
 
   /** return the mapped cell's row and column indexes (starting at 0 for each) */
   NS_IMETHOD GetCellIndexes(PRInt32 &aRowIndex, PRInt32 &aColIndex)=0;
 
   /** return the mapped cell's row index (starting at 0 for the first row) */
   virtual nsresult GetRowIndex(PRInt32 &aRowIndex) const = 0;
   
   /** return the mapped cell's column index (starting at 0 for the first column) */
--- a/layout/tables/nsITableLayout.h
+++ b/layout/tables/nsITableLayout.h
@@ -46,17 +46,17 @@ class nsIDOMElement;
  * initially, we use this to get cell info 
  *
  * @author  sclark
  */
 class nsITableLayout
 {
 public:
 
-  NS_DECL_QUERYFRAME_TARGET(nsITableLayout)
+  NS_DECLARE_FRAME_ACCESSOR(nsITableLayout)
 
   /** return all the relevant layout information about a cell.
    *  @param aRowIndex       a row which the cell intersects
    *  @param aColIndex       a col which the cell intersects
    *  @param aCell           [OUT] the content representing the cell at (aRowIndex, aColIndex)
    *  @param aStartRowIndex  [IN/OUT] the row in which aCell starts
    *  @param aStartColIndex  [IN/OUT] the col in which aCell starts
    *                         Initialize these with the "candidate" start indexes to use
--- a/layout/tables/nsTableCellFrame.h
+++ b/layout/tables/nsTableCellFrame.h
@@ -68,17 +68,17 @@ class nsTableFrame;
  * @author  sclark
  */
 class nsTableCellFrame : public nsHTMLContainerFrame, 
                          public nsITableCellLayout, 
                          public nsIPercentHeightObserver
 {
 public:
 
-  NS_DECL_QUERYFRAME_TARGET(nsTableCellFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsTableCellFrame)
   NS_DECL_QUERYFRAME
 
   // default constructor supplied by the compiler
 
   nsTableCellFrame(nsStyleContext* aContext);
   ~nsTableCellFrame();
 
   NS_IMETHOD Init(nsIContent*      aContent,
--- a/layout/tables/nsTableRowFrame.h
+++ b/layout/tables/nsTableRowFrame.h
@@ -63,17 +63,17 @@ struct nsTableCellReflowState;
  * @see nsTableFrame
  * @see nsTableRowGroupFrame
  * @see nsTableCellFrame
  */
 class nsTableRowFrame : public nsHTMLContainerFrame
 {
 public:
 
-  NS_DECL_QUERYFRAME_TARGET(nsTableRowFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsTableRowFrame)
   NS_DECL_QUERYFRAME
 
   virtual ~nsTableRowFrame();
 
   NS_IMETHOD Init(nsIContent*      aContent,
                   nsIFrame*        aParent,
                   nsIFrame*        aPrevInFlow);
   /** @see nsIFrame::DidSetStyleContext */
--- a/layout/tables/nsTableRowGroupFrame.h
+++ b/layout/tables/nsTableRowGroupFrame.h
@@ -92,17 +92,17 @@ struct nsRowGroupReflowState {
  * @see nsTableFrame
  * @see nsTableRowFrame
  */
 class nsTableRowGroupFrame
   : public nsHTMLContainerFrame
   , public nsILineIterator
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsTableRowGroupFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsTableRowGroupFrame)
   NS_DECL_QUERYFRAME
 
   /** instantiate a new instance of nsTableRowFrame.
     * @param aPresShell the pres shell for this frame
     *
     * @return           the frame that was created
     */
   friend nsIFrame* NS_NewTableRowGroupFrame(nsIPresShell* aPresShell, nsStyleContext* aContext);
--- a/layout/xul/base/public/nsIMenuFrame.h
+++ b/layout/xul/base/public/nsIMenuFrame.h
@@ -41,17 +41,17 @@
 #include "nsQueryFrame.h"
 
 // this interface exists solely because native themes need to call into it.
 // Only menu frames should implement it
 
 class nsIMenuFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIMenuFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIMenuFrame)
 
   virtual PRBool IsOpen() = 0;
   virtual PRBool IsMenu() = 0;
   virtual PRBool IsOnMenuBar() = 0;
   virtual PRBool IsOnActiveMenuBar() = 0;
 };
 
 #endif
--- a/layout/xul/base/public/nsIScrollbarMediator.h
+++ b/layout/xul/base/public/nsIScrollbarMediator.h
@@ -42,17 +42,17 @@
 
 #include "nsQueryFrame.h"
 
 class nsIScrollbarFrame;
 
 class nsIScrollbarMediator
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIScrollbarMediator)
+  NS_DECLARE_FRAME_ACCESSOR(nsIScrollbarMediator)
 
   // The nsIFrame aScrollbar argument below denotes the
   // scrollbar that's firing the notification. It should be
   // where the same object as where nsIScrollbarFrame is implemented
 
   NS_IMETHOD PositionChanged(nsIScrollbarFrame* aScrollbar, PRInt32 aOldIndex, PRInt32& aNewIndex) = 0;
   NS_IMETHOD ScrollbarButtonPressed(nsIScrollbarFrame* aScrollbar, PRInt32 aOldIndex, PRInt32 aNewIndex) = 0;
 
--- a/layout/xul/base/src/nsIRootBox.h
+++ b/layout/xul/base/src/nsIRootBox.h
@@ -43,17 +43,17 @@
 #include "nsQueryFrame.h"
 class nsPopupSetFrame;
 class nsIContent;
 class nsIPresShell;
 
 class nsIRootBox
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIRootBox)
+  NS_DECLARE_FRAME_ACCESSOR(nsIRootBox)
 
   virtual nsPopupSetFrame* GetPopupSetFrame() = 0;
   virtual void SetPopupSetFrame(nsPopupSetFrame* aPopupSet) = 0;
 
   virtual nsIContent* GetDefaultTooltip() = 0;
   virtual void SetDefaultTooltip(nsIContent* aTooltip) = 0;
 
   virtual nsresult AddTooltipSupport(nsIContent* aNode) = 0;
--- a/layout/xul/base/src/nsIScrollbarFrame.h
+++ b/layout/xul/base/src/nsIScrollbarFrame.h
@@ -41,17 +41,17 @@
 
 #include "nsQueryFrame.h"
 
 class nsIScrollbarMediator;
 
 class nsIScrollbarFrame : public nsQueryFrame
 {
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsIScrollbarFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsIScrollbarFrame)
   
   // Sets the scrollbar mediator content. We will try to get its primary frame
   // and then QI that to nsIScrollbarMediator as necessary.
   virtual void SetScrollbarMediatorContent(nsIContent* aMediator) = 0;
 
   // Do NOT hold on to this.
   virtual nsIScrollbarMediator* GetScrollbarMediator() = 0;
 };
--- a/layout/xul/base/src/nsListBoxBodyFrame.h
+++ b/layout/xul/base/src/nsListBoxBodyFrame.h
@@ -59,17 +59,17 @@ class nsListBoxBodyFrame : public nsBoxF
                            public nsIScrollbarMediator,
                            public nsIReflowCallback
 {
   nsListBoxBodyFrame(nsIPresShell* aPresShell, nsStyleContext* aContext,
                      nsIBoxLayout* aLayoutManager);
   virtual ~nsListBoxBodyFrame();
 
 public:
-  NS_DECL_QUERYFRAME_TARGET(nsListBoxBodyFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsListBoxBodyFrame)
 
   NS_DECL_QUERYFRAME
 
   // non-virtual nsIListBoxObject
   nsresult GetRowCount(PRInt32 *aResult);
   nsresult GetNumberOfVisibleRows(PRInt32 *aResult);
   nsresult GetIndexOfFirstVisibleRow(PRInt32 *aResult);
   nsresult EnsureIndexIsVisible(PRInt32 aRowIndex);
--- a/layout/xul/base/src/tree/src/nsTreeBodyFrame.h
+++ b/layout/xul/base/src/tree/src/nsTreeBodyFrame.h
@@ -82,17 +82,17 @@ class NS_FINAL_CLASS nsTreeBodyFrame
   , public nsICSSPseudoComparator
   , public nsIScrollbarMediator
   , public nsIReflowCallback
 {
 public:
   nsTreeBodyFrame(nsIPresShell* aPresShell, nsStyleContext* aContext);
   ~nsTreeBodyFrame();
 
-  NS_DECL_QUERYFRAME_TARGET(nsTreeBodyFrame)
+  NS_DECLARE_FRAME_ACCESSOR(nsTreeBodyFrame)
 
   NS_DECL_QUERYFRAME
 
   // non-virtual signatures like nsITreeBodyFrame
   nsresult GetColumns(nsITreeColumns **aColumns);
   nsresult GetView(nsITreeView **aView);
   nsresult SetView(nsITreeView *aView);
   nsresult GetFocused(PRBool *aFocused);