diff options
author | Zhe Wang <wangzcdl@apache.org> | 2012-09-07 03:49:09 +0000 |
---|---|---|
committer | Xisco Fauli <anistenis@gmail.com> | 2013-06-03 00:04:06 +0200 |
commit | f39f7ba614749d99362a2059919521eee6bdb6fc (patch) | |
tree | e9214ebd21ff013462058723df68d6f28ab13841 /oox/inc | |
parent | 8c39c42c299b13f9516e4f76e1e654867dd824ef (diff) |
Fix issue #i120723#: Table style is lost when import PPTX by AOO
* subversion/main/oox/inc/oox/drawingml/table/tableproperties.hxx
* subversion/main/oox/source/drawingml/table/tableproperties.cxx
[]if the imported table in pptx just have tableStyleId, should fill the tablestyle's content.
Patch by: Ma Bingbing <jiazema@gmail.com>
Suggested by: Wang Zhe <kingwisemmx@gmail.com>
Found by:Ma Bingbing <jiazema@gmail.com>
Review by: Wang Zhe <kingwisemmx@gmail.com>(cherry picked from commit 74b1435a4d39eac71e36fb1c387b24af4b353fa0)
Conflicts:
oox/inc/oox/drawingml/table/tableproperties.hxx
oox/source/drawingml/table/tableproperties.cxx
Change-Id: I554169522a95343662781c3f169c6485c38a6800
Diffstat (limited to 'oox/inc')
-rw-r--r-- | oox/inc/oox/drawingml/table/tableproperties.hxx | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/oox/inc/oox/drawingml/table/tableproperties.hxx b/oox/inc/oox/drawingml/table/tableproperties.hxx new file mode 100644 index 000000000000..2928966ea69d --- /dev/null +++ b/oox/inc/oox/drawingml/table/tableproperties.hxx @@ -0,0 +1,83 @@ +/************************************************************** + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + * + *************************************************************/ + + + +#ifndef OOX_DRAWINGML_TABLEPROPERTIES_HXX +#define OOX_DRAWINGML_TABLEPROPERTIES_HXX + +#include "oox/drawingml/table/tablerow.hxx" +#include "oox/drawingml/table/tablestyle.hxx" +#include "oox/helper/propertymap.hxx" +#include "oox/drawingml/color.hxx" + +#include <boost/shared_ptr.hpp> +#include <boost/optional.hpp> +#include <vector> +#include <map> + +namespace oox { namespace drawingml { namespace table { + +class TableProperties +{ +public: + + TableProperties(); + ~TableProperties(); + + std::vector< sal_Int32 >& getTableGrid() { return mvTableGrid; }; + std::vector< TableRow >& getTableRows() { return mvTableRows; }; + + rtl::OUString& getStyleId(){ return maStyleId; }; + boost::shared_ptr< TableStyle >& getTableStyle(){ return mpTableStyle; }; + sal_Bool& isRtl(){ return mbRtl; }; + sal_Bool& isFirstRow(){ return mbFirstRow; }; + sal_Bool& isFirstCol(){ return mbFirstCol; }; + sal_Bool& isLastRow(){ return mbLastRow; }; + sal_Bool& isLastCol(){ return mbLastCol; }; + sal_Bool& isBandRow(){ return mbBandRow; }; + sal_Bool& isBandCol(){ return mbBandCol; }; + + void apply( const TablePropertiesPtr& ); + void pushToPropSet( const ::oox::core::XmlFilterBase& rFilterBase, + const ::com::sun::star::uno::Reference < ::com::sun::star::beans::XPropertySet > & xPropSet, ::oox::drawingml::TextListStylePtr pMasterTextListStyle ); + +private: + + const TableStyle& getUsedTableStyle( const ::oox::core::XmlFilterBase& rFilterBase, sal_Bool &isCreateTabStyle); + + rtl::OUString maStyleId; // either StyleId is available + boost::shared_ptr< TableStyle > mpTableStyle; // or the complete TableStyle + std::vector< sal_Int32 > mvTableGrid; + std::vector< TableRow > mvTableRows; + + sal_Bool mbRtl; + sal_Bool mbFirstRow; + sal_Bool mbFirstCol; + sal_Bool mbLastRow; + sal_Bool mbLastCol; + sal_Bool mbBandRow; + sal_Bool mbBandCol; +}; + +} } } + +#endif // OOX_DRAWINGML_TABLEPROPERTIES_HXX |