1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
11  * OpenOffice.org is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * OpenOffice.org is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License version 3 for more details
19  * (a copy is included in the LICENSE file that accompanied this code).
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * version 3 along with OpenOffice.org.  If not, see
23  * <http://www.openoffice.org/license.html>
24  * for a copy of the LGPLv3 License.
25  *
26  ************************************************************************/
27 
28 #ifndef _XMLOFF_PAGEMASTEREXPORTPROPMAPPER_HXX
29 #define _XMLOFF_PAGEMASTEREXPORTPROPMAPPER_HXX
30 
31 #include <xmloff/xmlexppr.hxx>
32 #include "XMLBackgroundImageExport.hxx"
33 #include "XMLTextColumnsExport.hxx"
34 #include "XMLFootnoteSeparatorExport.hxx"
35 
36 //______________________________________________________________________________
37 
38 class XMLPageMasterExportPropMapper : public SvXMLExportPropertyMapper
39 {
40 protected:
41 	XMLBackgroundImageExport aBackgroundImageExport;
42 	XMLTextColumnsExport aTextColumnsExport;
43 	XMLFootnoteSeparatorExport aFootnoteSeparatorExport;
44 
45 	virtual void		ContextFilter(
46 							::std::vector< XMLPropertyState >& rProperties,
47 		    				::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > rPropSet
48 							) const;
49 
50 public:
51 						XMLPageMasterExportPropMapper(
52 						 	const UniReference< XMLPropertySetMapper >& rMapper,
53 							SvXMLExport& rExport
54 							);
55 	virtual				~XMLPageMasterExportPropMapper();
56 
57 	virtual void		handleElementItem(
58                             SvXMLExport& rExport,
59 							const XMLPropertyState& rProperty,
60 							sal_uInt16 nFlags,
61 							const ::std::vector< XMLPropertyState >* pProperties = 0,
62 							sal_uInt32 nIdx = 0
63 							) const;
64 	virtual void		handleSpecialItem(
65 							SvXMLAttributeList& rAttrList,
66 							const XMLPropertyState& rProperty,
67 							const SvXMLUnitConverter& rUnitConverter,
68 							const SvXMLNamespaceMap& rNamespaceMap,
69 							const ::std::vector< XMLPropertyState >* pProperties = 0,
70 							sal_uInt32 nIdx = 0
71 							) const;
72 
73 	inline XMLBackgroundImageExport& GetBackgroundImageExport()
74 								{ return aBackgroundImageExport; }
75 
76 };
77 
78 #endif
79 
80