layout/xul/tree/nsTreeColFrame.h

Wed, 31 Dec 2014 06:55:50 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:55:50 +0100
changeset 2
7e26c7da4463
permissions
-rw-r--r--

Added tag UPSTREAM_283F7C6 for changeset ca08bd8f51b2

     1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
     2 /* This Source Code Form is subject to the terms of the Mozilla Public
     3  * License, v. 2.0. If a copy of the MPL was not distributed with this
     4  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     6 #include "mozilla/Attributes.h"
     7 #include "nsBoxFrame.h"
     9 class nsITreeBoxObject;
    11 nsIFrame* NS_NewTreeColFrame(nsIPresShell* aPresShell, 
    12                              nsStyleContext* aContext);
    14 class nsTreeColFrame : public nsBoxFrame
    15 {
    16 public:
    17   NS_DECL_FRAMEARENA_HELPERS
    19   nsTreeColFrame(nsIPresShell* aPresShell,
    20                  nsStyleContext* aContext):
    21     nsBoxFrame(aPresShell, aContext) {}
    23   virtual void Init(nsIContent*      aContent,
    24                     nsIFrame*        aParent,
    25                     nsIFrame*        aPrevInFlow) MOZ_OVERRIDE;
    27   virtual void DestroyFrom(nsIFrame* aDestructRoot) MOZ_OVERRIDE;
    29   virtual void BuildDisplayListForChildren(nsDisplayListBuilder*   aBuilder,
    30                                            const nsRect&           aDirtyRect,
    31                                            const nsDisplayListSet& aLists) MOZ_OVERRIDE;
    33   virtual nsresult AttributeChanged(int32_t aNameSpaceID,
    34                                     nsIAtom* aAttribute,
    35                                     int32_t aModType) MOZ_OVERRIDE;
    37   virtual void SetBounds(nsBoxLayoutState& aBoxLayoutState, const nsRect& aRect,
    38                          bool aRemoveOverflowArea = false) MOZ_OVERRIDE;
    40   friend nsIFrame* NS_NewTreeColFrame(nsIPresShell* aPresShell,
    41                                       nsStyleContext* aContext);
    43 protected:
    44   virtual ~nsTreeColFrame();
    46   /**
    47    * @return the tree box object of the tree this column belongs to, or nullptr.
    48    */
    49   nsITreeBoxObject* GetTreeBoxObject();
    51   /**
    52    * Helper method that gets the nsITreeColumns object this column belongs to
    53    * and calls InvalidateColumns() on it.
    54    */
    55   void InvalidateColumns(bool aCanWalkFrameTree = true);
    56 };

mercurial