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 : #ifndef nsITableCellLayout_h__
6 : #define nsITableCellLayout_h__
7 :
8 : #include "nsQueryFrame.h"
9 :
10 : #define MAX_ROWSPAN 65534 // the cellmap can not handle more.
11 : #define MAX_COLSPAN 1000 // limit as IE and opera do. If this ever changes,
12 : // change COL_SPAN_OFFSET/COL_SPAN_SHIFT accordingly.
13 :
14 : /**
15 : * nsITableCellLayout
16 : * interface for layout objects that act like table cells.
17 : *
18 : * @author sclark
19 : */
20 0 : class nsITableCellLayout
21 : {
22 : public:
23 :
24 : NS_DECL_QUERYFRAME_TARGET(nsITableCellLayout)
25 :
26 : /** return the mapped cell's row and column indexes (starting at 0 for each) */
27 : NS_IMETHOD GetCellIndexes(int32_t &aRowIndex, int32_t &aColIndex)=0;
28 :
29 : /** return the mapped cell's row index (starting at 0 for the first row) */
30 : virtual nsresult GetRowIndex(int32_t &aRowIndex) const = 0;
31 :
32 : /** return the mapped cell's column index (starting at 0 for the first column) */
33 : virtual nsresult GetColIndex(int32_t &aColIndex) const = 0;
34 : };
35 :
36 : #endif
37 :
38 :
39 :
|