1 /*************************************************************************
3 * OpenOffice.org - a multi-platform office productivity suite
5 * $RCSfile: textcharacterproperties.hxx,v $
9 * last change: $Author: rt $ $Date: 2008-01-17 08:05:45 $
11 * The Contents of this file are made available subject to
12 * the terms of GNU Lesser General Public License Version 2.1.
15 * GNU Lesser General Public License Version 2.1
16 * =============================================
17 * Copyright 2005 by Sun Microsystems, Inc.
18 * 901 San Antonio Road, Palo Alto, CA 94303, USA
20 * This library is free software; you can redistribute it and/or
21 * modify it under the terms of the GNU Lesser General Public
22 * License version 2.1, as published by the Free Software Foundation.
24 * This library is distributed in the hope that it will be useful,
25 * but WITHOUT ANY WARRANTY; without even the implied warranty of
26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
27 * Lesser General Public License for more details.
29 * You should have received a copy of the GNU Lesser General Public
30 * License along with this library; if not, write to the Free Software
31 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
34 ************************************************************************/
36 #ifndef OOX_DRAWINGML_TEXTCHARACTERPROPERTIES_HXX
37 #define OOX_DRAWINGML_TEXTCHARACTERPROPERTIES_HXX
39 #include "oox/helper/propertymap.hxx"
40 #include "oox/core/xmlfilterbase.hxx"
41 #include "oox/drawingml/color.hxx"
42 #include <com/sun/star/beans/XPropertySet.hpp>
43 #include <boost/shared_ptr.hpp>
45 namespace oox
{ namespace drawingml
{
47 class TextCharacterProperties
;
49 typedef boost::shared_ptr
< TextCharacterProperties
> TextCharacterPropertiesPtr
;
51 class TextCharacterProperties
55 TextCharacterProperties();
56 ~TextCharacterProperties();
58 PropertyMap
& getTextCharacterPropertyMap() { return maTextCharacterPropertyMap
; }
59 PropertyMap
& getHyperlinkPropertyMap() { return maHyperlinkPropertyMap
; }
60 ::oox::drawingml::ColorPtr
getCharColor() { return maCharColorPtr
; }
61 ::oox::drawingml::ColorPtr
getUnderlineColor() { return maUnderlineColorPtr
; }
62 ::oox::drawingml::ColorPtr
getHighlightColor() { return maHighlightColorPtr
; }
63 ::com::sun::star::uno::Any
& getHasUnderline() { return maHasUnderline
; }
64 ::com::sun::star::uno::Any
& getUnderlineLineFollowText() { return maUnderlineLineFollowText
; }
65 ::com::sun::star::uno::Any
& getUnderlineFillFollowText() { return maUnderlineFillFollowText
; }
68 void apply( const TextCharacterPropertiesPtr
& rSource
);
69 void pushToPropSet( const ::oox::core::XmlFilterBase
& rFilterBase
, const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertySet
> & xPropSet
) const;
70 void pushToUrlFieldPropSet( const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertySet
> & xPropSet
) const;
71 float getCharacterSize( float fDefault
) const;
74 PropertyMap maTextCharacterPropertyMap
;
75 PropertyMap maHyperlinkPropertyMap
;
76 ::oox::drawingml::ColorPtr maCharColorPtr
;
77 ::oox::drawingml::ColorPtr maUnderlineColorPtr
;
78 ::oox::drawingml::ColorPtr maHighlightColorPtr
;
79 ::com::sun::star::uno::Any maHasUnderline
;
80 ::com::sun::star::uno::Any maUnderlineLineFollowText
;
81 ::com::sun::star::uno::Any maUnderlineFillFollowText
;
86 #endif // OOX_DRAWINGML_TEXTCHARACTERPROPERTIES_HXX