|
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 #ifndef nsIPercentHeightObserver_h___ |
|
7 #define nsIPercentHeightObserver_h___ |
|
8 |
|
9 #include "nsQueryFrame.h" |
|
10 |
|
11 struct nsHTMLReflowState; |
|
12 |
|
13 /** |
|
14 * This interface is supported by frames that need to provide computed height |
|
15 * values to children during reflow which would otherwise not happen. Currently only |
|
16 * table cells support this. |
|
17 */ |
|
18 class nsIPercentHeightObserver |
|
19 { |
|
20 public: |
|
21 NS_DECL_QUERYFRAME_TARGET(nsIPercentHeightObserver) |
|
22 |
|
23 // Notify the observer that aReflowState has no computed height, but it has a percent height |
|
24 virtual void NotifyPercentHeight(const nsHTMLReflowState& aReflowState) = 0; |
|
25 |
|
26 // Ask the observer if it should observe aReflowState.frame |
|
27 virtual bool NeedsToObserve(const nsHTMLReflowState& aReflowState) = 0; |
|
28 }; |
|
29 |
|
30 #endif // nsIPercentHeightObserver_h___ |