tdf#154546 skip dispatch when presenter controller is not set
[LibreOffice.git] / include / drawinglayer / primitive2d / objectinfoprimitive2d.hxx
blob6dc410b86cbbf9473c259ad1f24120da8ef080f7
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 .
20 #pragma once
22 #include <drawinglayer/drawinglayerdllapi.h>
23 #include <drawinglayer/primitive2d/groupprimitive2d.hxx>
24 #include <rtl/ustring.hxx>
26 namespace drawinglayer::primitive2d
28 /** ObjectInfoPrimitive2D class
30 Info hierarchy helper class to hold contents like Name, Title and
31 Description which are valid for the child content, e.g. created for
32 primitives based on DrawingLayer objects or SVG parts. It decomposes
33 to its content, so all direct renderers may ignore it. May e.g.
34 be used when re-creating graphical content from a sequence of primitives
36 class DRAWINGLAYER_DLLPUBLIC ObjectInfoPrimitive2D final : public GroupPrimitive2D
38 private:
39 OUString maName;
40 OUString maTitle;
41 OUString maDesc;
43 public:
44 /// constructor
45 ObjectInfoPrimitive2D(
46 Primitive2DContainer&& aChildren,
47 OUString aName,
48 OUString aTitle,
49 OUString aDesc);
51 /// data read access
52 const OUString& getName() const { return maName; }
53 const OUString& getTitle() const { return maTitle; }
54 const OUString& getDesc() const { return maDesc; }
56 /// compare operator
57 virtual bool operator==(const BasePrimitive2D& rPrimitive) const override;
59 /// provide unique ID
60 virtual sal_uInt32 getPrimitive2DID() const override;
62 } // end of namespace drawinglayer::primitive2d
65 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */