summaryrefslogtreecommitdiff
path: root/xmloff/source/draw/ximpcustomshape.hxx
blob: 218f6e5267bb6a487cc04bef5a17f51c65b19c86 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
 * This file is part of the LibreOffice project.
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 *
 * This file incorporates work covered by the following license notice:
 *
 *   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 .
 */

#ifndef INCLUDED_XMLOFF_SOURCE_DRAW_XIMPCUSTOMSHAPE_HXX
#define INCLUDED_XMLOFF_SOURCE_DRAW_XIMPCUSTOMSHAPE_HXX

#include <xmloff/xmlictxt.hxx>
#include <xmloff/xmluconv.hxx>
#include <rtl/ustring.hxx>
#include <vector>
#include <com/sun/star/uno/Reference.h>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/beans/PropertyValues.hpp>
#include <com/sun/star/drawing/XShape.hpp>
#include <com/sun/star/drawing/EnhancedCustomShapeParameter.hpp>

namespace com { namespace sun { namespace star {
    namespace container { class XIndexContainer; }
    namespace beans { class XPropertySet; }
    namespace xml { namespace sax { class XAttributeList; } }
} } }

class XMLEnhancedCustomShapeContext : public SvXMLImportContext
{
    SvXMLUnitConverter& mrUnitConverter;
    css::uno::Reference< css::drawing::XShape >& mrxShape;
    std::vector< css::beans::PropertyValue >& mrCustomShapeGeometry;

    std::vector< css::beans::PropertyValue > maExtrusion;
    std::vector< css::beans::PropertyValue > maPath;
    std::vector< css::beans::PropertyValue > maTextPath;
    std::vector< css::beans::PropertyValues > maHandles;
    std::vector< OUString > maEquations;
    std::vector< OUString > maEquationNames;

public:


    XMLEnhancedCustomShapeContext( SvXMLImport& rImport, css::uno::Reference< css::drawing::XShape > &, sal_uInt16 nPrefix,
        const OUString& rLocalName, std::vector< css::beans::PropertyValue >& rCustomShapeGeometry );

    virtual void StartElement( const css::uno::Reference< css::xml::sax::XAttributeList >& xAttrList ) override;
    virtual void EndElement() override;

    SvXMLImportContextRef CreateChildContext( sal_uInt16 nPrefix, const OUString& rLocalName,
        const css::uno::Reference< css::xml::sax::XAttributeList> & xAttrList ) override;
};

#endif

/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
id=708cab47c4457637f87815750a026168b3f10c84'>fdo#46808, propogate XLinguProperties through some more codeNoel Grandin Change-Id: I89258875094e9731921fcafdc903278ca8f95aa8 2013-05-09small optimization, don't call objectAtIndex twiceHerbert Dürr (cherry picked from commit a88630fb326fa4dcbe28edd1c149c8e5e7b7f123) Conflicts: lingucomponent/source/spellcheck/macosxspell/macspellimp.cxx Change-Id: Ic48281be27bf43f8a564f46684ddb53a2d83d80e 2013-05-06fix typos (wich instead of which)Philipp Riemer 2013-04-07mass removal of rtl:: prefixes for O(U)String*Luboš Luňák Modules sal, salhelper, cppu, cppuhelper, codemaker (selectively) and odk have kept them, in order not to break external API (the automatic using declaration is LO-internal). Change-Id: I588fc9e0c45b914f824f91c0376980621d730f09 2013-04-05new module i18nlangtagEike Rathke Moved portions from module i18npool, all of former i18nisolang1 library that now is i18nlangtag. Included are languagetag, isolang and mslangid. This i18nlangtag code is now even used by module comphelper, so disentangling i18npool and making this an own module was needed to not create circular module dependencies. Change-Id: Ib887c3d6dde667403fd22d382310ba5f1a9b0015