Version 5.4.3.2, tag libreoffice-5.4.3.2
[LibreOffice.git] / include / drawinglayer / primitive2d / objectinfoprimitive2d.hxx
blob3c0f1b684df2ccdf9a16a1ff04c5ed6f404a3964
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
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 * This file incorporates work covered by the following license notice:
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 .
19 #ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_OBJECTINFOPRIMITIVE2D_HXX
20 #define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_OBJECTINFOPRIMITIVE2D_HXX
22 #include <drawinglayer/drawinglayerdllapi.h>
23 #include <drawinglayer/primitive2d/groupprimitive2d.hxx>
24 #include <rtl/ustring.hxx>
26 namespace drawinglayer
28 namespace primitive2d
30 /** ObjectInfoPrimitive2D class
32 Info hierarchy helper class to hold contents like Name, Title and
33 Description which are valid for the child content, e.g. created for
34 primitives based on DrawingLayer objects or SVG parts. It decomposes
35 to its content, so all direct renderers may ignore it. May e.g.
36 be used when re-creating graphical content from a sequence of primitives
38 class DRAWINGLAYER_DLLPUBLIC ObjectInfoPrimitive2D : public GroupPrimitive2D
40 private:
41 OUString maName;
42 OUString maTitle;
43 OUString maDesc;
45 public:
46 /// constructor
47 ObjectInfoPrimitive2D(
48 const Primitive2DContainer& rChildren,
49 const OUString& rName,
50 const OUString& rTitle,
51 const OUString& rDesc);
53 /// data read access
54 const OUString& getName() const { return maName; }
55 const OUString& getTitle() const { return maTitle; }
56 const OUString& getDesc() const { return maDesc; }
58 /// compare operator
59 virtual bool operator==(const BasePrimitive2D& rPrimitive) const override;
61 /// provide unique ID
62 DeclPrimitive2DIDBlock()
64 } // end of namespace primitive2d
65 } // end of namespace drawinglayer
67 #endif // INCLUDED_DRAWINGLAYER_PRIMITIVE2D_OBJECTINFOPRIMITIVE2D_HXX
69 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */