1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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 #ifndef INCLUDED_POSITIONHANDLER_HXX
10 #define INCLUDED_POSITIONHANDLER_HXX
12 #include <WriterFilterDllApi.hxx>
13 #include <resourcemodel/LoggedResources.hxx>
14 #include <boost/shared_ptr.hpp>
15 #include <com/sun/star/beans/PropertyValue.hpp>
17 namespace writerfilter
{
20 /// Handler for floating table positioning
21 class WRITERFILTER_DLLPRIVATE TablePositionHandler
22 : public LoggedProperties
24 OUString m_aVertAnchor
;
26 OUString m_aHorzAnchor
;
30 sal_Int32 m_nLeftBorderDistance
;
31 sal_Int32 m_nRightBorderDistance
;
34 virtual void lcl_attribute(Id Name
, Value
& val
);
35 virtual void lcl_sprm(Sprm
& sprm
);
38 TablePositionHandler();
39 virtual ~TablePositionHandler();
41 /** Compute the UNO properties for the frame containing the table based
42 on the received tokens.
44 Note that the properties will need to be adjusted with the table
45 properties before actually using them.
47 com::sun::star::uno::Sequence
<com::sun::star::beans::PropertyValue
> getTablePosition() const;
49 bool operator== (const TablePositionHandler
& rHandler
) const;
52 typedef boost::shared_ptr
<TablePositionHandler
> TablePositionHandlerPtr
;
53 } // namespace dmapper
54 } // namespace writerfilter
58 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */