merge the formfield patch from ooo-build
[ooovba.git] / xmloff / source / text / txtexppr.hxx
blobdc47a82de631009051ab9468471bedc4790c45bf
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: txtexppr.hxx,v $
10 * $Revision: 1.8 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef _XMLOFF_TXTEXPPR_HXX
31 #define _XMLOFF_TXTEXPPR_HXX
34 #include <xmloff/xmlexppr.hxx>
35 #include "txtdrope.hxx"
36 #include "xmltabe.hxx"
37 #include "XMLTextColumnsExport.hxx"
38 #ifndef _XMLOFF_XMLBACKGROUNDIMAGEEXPORT_HXX
39 #include "XMLBackgroundImageExport.hxx"
40 #endif
42 class SvXMLExport;
43 class XMLTextExportPropertySetMapper: public SvXMLExportPropertyMapper
45 SvXMLExport& rExport;
47 ::rtl::OUString sDropCharStyle;
48 sal_Bool bDropWholeWord;
50 void ContextFontFilter(
51 XMLPropertyState *pFontNameState,
52 XMLPropertyState *pFontFamilyNameState,
53 XMLPropertyState *pFontStyleNameState,
54 XMLPropertyState *pFontFamilyState,
55 XMLPropertyState *pFontPitchState,
56 XMLPropertyState *pFontCharsetState ) const;
57 void ContextFontHeightFilter(
58 XMLPropertyState* pCharHeightState,
59 XMLPropertyState* pCharPropHeightState,
60 XMLPropertyState* pCharDiffHeightState ) const;
62 protected:
63 // SvXMLUnitConverter& mrUnitConverter;
64 // const Reference< xml::sax::XDocumentHandler > & mrHandler;
65 XMLTextDropCapExport maDropCapExport;
66 SvxXMLTabStopExport maTabStopExport;
67 XMLTextColumnsExport maTextColumnsExport;
68 XMLBackgroundImageExport maBackgroundImageExport;
70 /** Application-specific filter. By default do nothing. */
71 virtual void ContextFilter(
72 ::std::vector< XMLPropertyState >& rProperties,
73 ::com::sun::star::uno::Reference<
74 ::com::sun::star::beans::XPropertySet > rPropSet ) const;
75 const SvXMLExport& GetExport() const { return rExport; }
77 public:
79 XMLTextExportPropertySetMapper(
80 const UniReference< XMLPropertySetMapper >& rMapper,
81 SvXMLExport& rExt );
82 virtual ~XMLTextExportPropertySetMapper();
84 virtual void handleElementItem(
85 SvXMLExport& rExport,
86 const XMLPropertyState& rProperty,
87 sal_uInt16 nFlags,
88 const ::std::vector< XMLPropertyState > *pProperties = 0,
89 sal_uInt32 nIdx = 0 ) const;
91 virtual void handleSpecialItem(
92 SvXMLAttributeList& rAttrList,
93 const XMLPropertyState& rProperty,
94 const SvXMLUnitConverter& rUnitConverter,
95 const SvXMLNamespaceMap& rNamespaceMap,
96 const ::std::vector< XMLPropertyState > *pProperties = 0,
97 sal_uInt32 nIdx = 0 ) const;
101 #endif