LibreOffice Module sw (master)  1
xmlbrshi.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
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/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 
20 #ifndef INCLUDED_SW_SOURCE_FILTER_XML_XMLBRSHI_HXX
21 #define INCLUDED_SW_SOURCE_FILTER_XML_XMLBRSHI_HXX
22 
23 #include <memory>
24 #include <com/sun/star/io/XOutputStream.hpp>
25 #include <com/sun/star/graphic/XGraphic.hpp>
26 
27 #include <xmloff/xmlictxt.hxx>
28 
29 class SvXMLImport;
30 class SvXMLUnitConverter;
31 class SvxBrushItem;
32 
33 namespace com::sun::star {
34  namespace io { class XOutputStream; }
35 }
36 
38 {
39 private:
40  css::uno::Reference<css::io::XOutputStream> m_xBase64Stream;
41  css::uno::Reference<css::graphic::XGraphic> m_xGraphic;
42 
43  std::unique_ptr<SvxBrushItem> pItem;
44 
45  void ProcessAttrs(
46  const css::uno::Reference<css::xml::sax::XFastAttributeList > & xAttrList,
47  const SvXMLUnitConverter& rUnitConv );
48 
49 public:
50 
52  SvXMLImport& rImport,
53  sal_Int32 nElement,
54  const css::uno::Reference<css::xml::sax::XFastAttributeList > & xAttrList,
55  const SvXMLUnitConverter& rUnitConv,
56  const SvxBrushItem& rItem );
57 
59  SvXMLImport& rImport,
60  sal_Int32 nElement,
61  const css::uno::Reference<css::xml::sax::XFastAttributeList > & xAttrList,
62  const SvXMLUnitConverter& rUnitConv,
63  sal_uInt16 nWhich );
64 
65  virtual ~SwXMLBrushItemImportContext() override;
66 
67  virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(
68  sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& AttrList ) override;
69 
70  virtual void SAL_CALL startFastElement( sal_Int32 /*nElement*/,
71  const css::uno::Reference< css::xml::sax::XFastAttributeList >& ) override {}
72  virtual void SAL_CALL endFastElement(sal_Int32 nElement) override;
73 
74  const SvxBrushItem& GetItem() const { return *pItem; }
75 };
76 
77 #endif // _XMLBRSHI_HXX
78 
79 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
const SvxBrushItem & GetItem() const
Definition: xmlbrshi.hxx:74
exports com.sun.star. io
css::uno::Reference< css::io::XOutputStream > m_xBase64Stream
Definition: xmlbrshi.hxx:40
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &AttrList) override
Definition: xmlbrsh.cxx:108
virtual ~SwXMLBrushItemImportContext() override
Definition: xmlbrsh.cxx:173
css::uno::Reference< css::graphic::XGraphic > m_xGraphic
Definition: xmlbrshi.hxx:41
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
Definition: xmlbrsh.cxx:125
std::unique_ptr< SvxBrushItem > pItem
Definition: xmlbrshi.hxx:43
virtual void SAL_CALL startFastElement(sal_Int32, const css::uno::Reference< css::xml::sax::XFastAttributeList > &) override
Definition: xmlbrshi.hxx:70
SwXMLBrushItemImportContext(SvXMLImport &rImport, sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList, const SvXMLUnitConverter &rUnitConv, const SvxBrushItem &rItem)
void ProcessAttrs(const css::uno::Reference< css::xml::sax::XFastAttributeList > &xAttrList, const SvXMLUnitConverter &rUnitConv)
Definition: xmlbrsh.cxx:70