diff options
Diffstat (limited to 'filters/kword/wordperfect/import/TableStyle.h')
-rw-r--r-- | filters/kword/wordperfect/import/TableStyle.h | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/filters/kword/wordperfect/import/TableStyle.h b/filters/kword/wordperfect/import/TableStyle.h new file mode 100644 index 000000000..c15f4d81f --- /dev/null +++ b/filters/kword/wordperfect/import/TableStyle.h @@ -0,0 +1,75 @@ +/* TableStyle: Stores (and writes) table-based information that is + * needed at the head of an OO document. + * + * Copyright (C) 2002-2003 William Lachance (william.lachance@sympatico.ca) + * Copyright (C) 2004 Fridrich Strba (fridrich.strba@bluewin.ch) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + * + * For further information visit http://libwpd.sourceforge.net + * + */ + +/* "This product is not manufactured, approved, or supported by + * Corel Corporation or Corel Corporation Limited." + */ +#ifndef _TABLESTYLE_H +#define _TABLESTYLE_H +#include <libwpd/libwpd.h> +#include <vector> +#include "shared_headers.h" +#include "Style.h" +#include "WriterProperties.h" + +class DocumentElement; +class DocumentHandler; + +class TableCellStyle : public Style +{ +public: + TableCellStyle(const _SH_PropertyList &xPropList, const char *psName); + virtual void write(DocumentHandler &xHandler) const; +private: + _SH_PropertyList mPropList; +}; + +class TableRowStyle : public Style +{ +public: + TableRowStyle(const _SH_PropertyList &propList, const char *psName); + virtual void write(DocumentHandler &xHandler) const; +private: + _SH_PropertyList mPropList; +}; + +class TableStyle : public Style, public TopLevelElementStyle +{ +public: + TableStyle(const _SH_PropertyList &xPropList, const _SH_PropertyListVector &columns, const char *psName); + ~TableStyle(); + virtual void write(DocumentHandler &xHandler) const; + const int getNumColumns() const { return mColumns.count(); } + void addTableCellStyle(TableCellStyle *pTableCellStyle) { mTableCellStyles.push_back(pTableCellStyle); } + int getNumTableCellStyles() { return mTableCellStyles.size(); } + void addTableRowStyle(TableRowStyle *pTableRowStyle) { mTableRowStyles.push_back(pTableRowStyle); } + int getNumTableRowStyles() { return mTableRowStyles.size(); } +private: + _SH_PropertyList mPropList; + _SH_PropertyListVector mColumns; + std::vector<TableCellStyle *> mTableCellStyles; + std::vector<TableRowStyle *> mTableRowStyles; +}; +#endif |