LibreOffice Module svx (master)  1
sdrattributecreator.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 #pragma once
21 
22 #include <sal/types.h>
23 #include <svx/svxdllapi.h>
24 
25 
26 // predefines
27 class SfxItemSet;
28 class SdrText;
29 
30 namespace drawinglayer::attribute {
31  class SdrLineAttribute;
32  class SdrLineStartEndAttribute;
33  class SdrShadowAttribute;
34  class SdrGlowAttribute;
35  class SdrFillAttribute;
36  class SdrTextAttribute;
37  class FillGradientAttribute;
38  class SdrFillGraphicAttribute;
39  class SdrEffectsTextAttribute;
40  class SdrLineEffectsTextAttribute;
41  class SdrLineFillEffectsTextAttribute;
42  class SdrLineFillShadowAttribute3D;
43  class SdrSceneAttribute;
44  class SdrLightingAttribute;
45  class SdrFillTextAttribute;
46 }
47 
48 namespace basegfx {
49  class B2DRange;
50 }
51 
52 
54  {
55  // SdrAttribute creators
56  attribute::SdrLineAttribute SVXCORE_DLLPUBLIC createNewSdrLineAttribute(
57  const SfxItemSet& rSet);
58 
59  attribute::SdrLineStartEndAttribute SVXCORE_DLLPUBLIC createNewSdrLineStartEndAttribute(
60  const SfxItemSet& rSet,
61  double fWidth);
62 
63  attribute::SdrShadowAttribute createNewSdrShadowAttribute(
64  const SfxItemSet& rSet);
65 
66  attribute::SdrFillAttribute SVXCORE_DLLPUBLIC createNewSdrFillAttribute(
67  const SfxItemSet& rSet);
68 
69  // #i101508# Support handing over given text-to-border distances
70  attribute::SdrTextAttribute createNewSdrTextAttribute(
71  const SfxItemSet& rSet,
72  const SdrText& rText,
73  const sal_Int32* pLeft = nullptr,
74  const sal_Int32* pUpper = nullptr,
75  const sal_Int32* pRight = nullptr,
76  const sal_Int32* pLower = nullptr);
77 
78  attribute::FillGradientAttribute SVXCORE_DLLPUBLIC createNewTransparenceGradientAttribute(
79  const SfxItemSet& rSet);
80 
81  attribute::SdrFillGraphicAttribute createNewSdrFillGraphicAttribute(
82  const SfxItemSet& rSet);
83 
84  attribute::SdrEffectsTextAttribute createNewSdrEffectsTextAttribute(
85  const SfxItemSet& rSet,
86  const SdrText* pText,
87  bool bSuppressText); // #i98072# added option to suppress text on demand
88 
89  attribute::SdrLineEffectsTextAttribute createNewSdrLineEffectsTextAttribute(
90  const SfxItemSet& rSet,
91  const SdrText* pText);
92 
93  attribute::SdrLineFillEffectsTextAttribute createNewSdrLineFillEffectsTextAttribute(
94  const SfxItemSet& rSet,
95  const SdrText* pText,
96  bool bHasContent); // used from OLE and graphic
97 
98  attribute::SdrLineFillShadowAttribute3D createNewSdrLineFillShadowAttribute(
99  const SfxItemSet& rSet,
100  bool bSuppressFill);
101 
102  attribute::SdrSceneAttribute createNewSdrSceneAttribute(
103  const SfxItemSet& rSet);
104 
105  attribute::SdrLightingAttribute createNewSdrLightingAttribute(
106  const SfxItemSet& rSet);
107 
108  // #i101508# Support handing over given text-to-border distances
109  attribute::SdrFillTextAttribute createNewSdrFillTextAttribute(
110  const SfxItemSet& rSet,
111  const SdrText* pSdrText,
112  const sal_Int32* pLeft = nullptr,
113  const sal_Int32* pUpper = nullptr,
114  const sal_Int32* pRight = nullptr,
115  const sal_Int32* pLower = nullptr);
116 
117  // helpers
119  sal_Int32 nRadius,
120  const ::basegfx::B2DRange& rObjectRange,
121  double& rfCornerRadiusX,
122  double& rfCornerRadiusY);
123 
124 
125 } // end of namespace drawinglayer::primitive2d
126 
127 
128 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
attribute::SdrFillAttribute createNewSdrFillAttribute(const SfxItemSet &rSet)
attribute::SdrLineEffectsTextAttribute createNewSdrLineEffectsTextAttribute(const SfxItemSet &rSet, const SdrText *pText)
attribute::SdrFillGraphicAttribute createNewSdrFillGraphicAttribute(const SfxItemSet &rSet)
attribute::SdrLineFillShadowAttribute3D createNewSdrLineFillShadowAttribute(const SfxItemSet &rSet, bool bSuppressFill)
attribute::SdrLineAttribute createNewSdrLineAttribute(const SfxItemSet &rSet)
attribute::SdrTextAttribute createNewSdrTextAttribute(const SfxItemSet &rSet, const SdrText &rText, const sal_Int32 *pLeft, const sal_Int32 *pUpper, const sal_Int32 *pRight, const sal_Int32 *pLower)
attribute::FillGradientAttribute createNewTransparenceGradientAttribute(const SfxItemSet &rSet)
void calculateRelativeCornerRadius(sal_Int32 nRadius, const basegfx::B2DRange &rObjectRange, double &rfCornerRadiusX, double &rfCornerRadiusY)
attribute::SdrEffectsTextAttribute createNewSdrEffectsTextAttribute(const SfxItemSet &rSet, const SdrText *pText, bool bSuppressText)
attribute::SdrLineStartEndAttribute createNewSdrLineStartEndAttribute(const SfxItemSet &rSet, double fWidth)
attribute::SdrSceneAttribute createNewSdrSceneAttribute(const SfxItemSet &rSet)
attribute::SdrShadowAttribute createNewSdrShadowAttribute(const SfxItemSet &rSet)
#define SVXCORE_DLLPUBLIC
Definition: svxdllapi.h:35
attribute::SdrFillTextAttribute createNewSdrFillTextAttribute(const SfxItemSet &rSet, const SdrText *pText, const sal_Int32 *pLeft, const sal_Int32 *pUpper, const sal_Int32 *pRight, const sal_Int32 *pLower)
attribute::SdrLineFillEffectsTextAttribute createNewSdrLineFillEffectsTextAttribute(const SfxItemSet &rSet, const SdrText *pText, bool bHasContent)
attribute::SdrLightingAttribute createNewSdrLightingAttribute(const SfxItemSet &rSet)