Line data Source code
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/. */
5 :
6 : /**
7 :
8 : Eric D Vaughan
9 : A frame that can have multiple children. Only one child may be displayed at one time. So the
10 : can be flipped though like a deck of cards.
11 :
12 : **/
13 :
14 : #ifndef nsGridRowGroupFrame_h___
15 : #define nsGridRowGroupFrame_h___
16 :
17 : #include "mozilla/Attributes.h"
18 : #include "nsBoxFrame.h"
19 :
20 : /**
21 : * A frame representing a grid row (or column) group, which is usually
22 : * an element that is a child of a grid and contains all the rows (or
23 : * all the columns). However, multiple levels of groups are allowed, so
24 : * the parent or child could instead be another group.
25 : */
26 0 : class nsGridRowGroupFrame final : public nsBoxFrame
27 : {
28 : public:
29 0 : NS_DECL_FRAMEARENA_HELPERS(nsGridRowGroupFrame)
30 :
31 : #ifdef DEBUG_FRAME_DUMP
32 0 : virtual nsresult GetFrameName(nsAString& aResult) const override
33 : {
34 0 : return MakeFrameName(NS_LITERAL_STRING("nsGridRowGroup"), aResult);
35 : }
36 : #endif
37 :
38 0 : nsGridRowGroupFrame(nsStyleContext* aContext,
39 0 : nsBoxLayout* aLayoutManager):
40 0 : nsBoxFrame(aContext, kClassID, false, aLayoutManager) {}
41 :
42 : virtual nscoord GetXULFlex() override;
43 :
44 : }; // class nsGridRowGroupFrame
45 :
46 :
47 :
48 : #endif
49 :
|