Branch data Line data Source code
1 : : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : : /* TableStyle: Stores (and writes) table-based information that is
3 : : * needed at the head of an OO document.
4 : : *
5 : : * This Source Code Form is subject to the terms of the Mozilla Public
6 : : * License, v. 2.0. If a copy of the MPL was not distributed with this
7 : : * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 : : *
9 : : * For further information visit http://libwpd.sourceforge.net
10 : : */
11 : :
12 : : /* "This product is not manufactured, approved, or supported by
13 : : * Corel Corporation or Corel Corporation Limited."
14 : : */
15 : : #ifndef _TABLESTYLE_H
16 : : #define _TABLESTYLE_H
17 : : #include <libwpd/libwpd.h>
18 : : #include <vector>
19 : :
20 : : #include "Style.hxx"
21 : :
22 : : class OdfDocumentHandler;
23 : :
24 : : class TableCellStyle : public Style
25 : : {
26 : : public:
27 [ # # ][ # # ]: 0 : virtual ~TableCellStyle() {};
28 : : TableCellStyle(const WPXPropertyList &xPropList, const char *psName);
29 : : virtual void write(OdfDocumentHandler *pHandler) const;
30 : : private:
31 : : WPXPropertyList mPropList;
32 : : };
33 : :
34 : : class TableRowStyle : public Style
35 : : {
36 : : public:
37 [ # # ][ # # ]: 0 : virtual ~TableRowStyle() {};
38 : : TableRowStyle(const WPXPropertyList &propList, const char *psName);
39 : : virtual void write(OdfDocumentHandler *pHandler) const;
40 : : private:
41 : : WPXPropertyList mPropList;
42 : : };
43 : :
44 : : class TableStyle : public Style, public TopLevelElementStyle
45 : : {
46 : : public:
47 : : TableStyle(const WPXPropertyList &xPropList, const WPXPropertyListVector &columns, const char *psName);
48 : : virtual ~TableStyle();
49 : : virtual void write(OdfDocumentHandler *pHandler) const;
50 : 0 : int getNumColumns() const
51 : : {
52 : 0 : return mColumns.count();
53 : : }
54 : 0 : void addTableCellStyle(TableCellStyle *pTableCellStyle)
55 : : {
56 : 0 : mTableCellStyles.push_back(pTableCellStyle);
57 : 0 : }
58 : 0 : int getNumTableCellStyles()
59 : : {
60 : 0 : return mTableCellStyles.size();
61 : : }
62 : 0 : void addTableRowStyle(TableRowStyle *pTableRowStyle)
63 : : {
64 : 0 : mTableRowStyles.push_back(pTableRowStyle);
65 : 0 : }
66 : 0 : int getNumTableRowStyles()
67 : : {
68 : 0 : return mTableRowStyles.size();
69 : : }
70 : : private:
71 : : WPXPropertyList mPropList;
72 : : WPXPropertyListVector mColumns;
73 : : std::vector<TableCellStyle *> mTableCellStyles;
74 : : std::vector<TableRowStyle *> mTableRowStyles;
75 : : };
76 : : #endif
77 : :
78 : : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|