bump product version to 4.1.6.2
[LibreOffice.git] / include / oox / drawingml / table / tableproperties.hxx
blobda5462ba0da730e79792cd89e63564b13a9ddc98
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
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/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef OOX_DRAWINGML_TABLEPROPERTIES_HXX
21 #define OOX_DRAWINGML_TABLEPROPERTIES_HXX
23 #include "oox/drawingml/table/tablerow.hxx"
24 #include "oox/drawingml/table/tablestyle.hxx"
25 #include "oox/helper/propertymap.hxx"
26 #include "oox/drawingml/color.hxx"
28 #include <boost/shared_ptr.hpp>
29 #include <boost/optional.hpp>
30 #include <vector>
31 #include <map>
33 namespace oox { namespace drawingml { namespace table {
35 class TableProperties
37 public:
39 TableProperties();
40 ~TableProperties();
42 std::vector< sal_Int32 >& getTableGrid() { return mvTableGrid; };
43 std::vector< TableRow >& getTableRows() { return mvTableRows; };
45 OUString& getStyleId(){ return maStyleId; };
46 boost::shared_ptr< TableStyle >& getTableStyle(){ return mpTableStyle; };
47 sal_Bool& isRtl(){ return mbRtl; };
48 sal_Bool& isFirstRow(){ return mbFirstRow; };
49 sal_Bool& isFirstCol(){ return mbFirstCol; };
50 sal_Bool& isLastRow(){ return mbLastRow; };
51 sal_Bool& isLastCol(){ return mbLastCol; };
52 sal_Bool& isBandRow(){ return mbBandRow; };
53 sal_Bool& isBandCol(){ return mbBandCol; };
55 void pushToPropSet( const ::oox::core::XmlFilterBase& rFilterBase,
56 const ::com::sun::star::uno::Reference < ::com::sun::star::beans::XPropertySet > & xPropSet, ::oox::drawingml::TextListStylePtr pMasterTextListStyle );
58 private:
60 const TableStyle& getUsedTableStyle( const ::oox::core::XmlFilterBase& rFilterBase, sal_Bool &isCreateTabStyle);
62 OUString maStyleId; // either StyleId is available
63 boost::shared_ptr< TableStyle > mpTableStyle; // or the complete TableStyle
64 std::vector< sal_Int32 > mvTableGrid;
65 std::vector< TableRow > mvTableRows;
67 sal_Bool mbRtl;
68 sal_Bool mbFirstRow;
69 sal_Bool mbFirstCol;
70 sal_Bool mbLastRow;
71 sal_Bool mbLastCol;
72 sal_Bool mbBandRow;
73 sal_Bool mbBandCol;
76 } } }
78 #endif // OOX_DRAWINGML_TABLEPROPERTIES_HXX
80 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */