1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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 #include <com/sun/star/drawing/TextFitToSizeType.hpp>
21 #include <com/sun/star/drawing/TextHorizontalAdjust.hpp>
22 #include <com/sun/star/drawing/TextVerticalAdjust.hpp>
23 #include <com/sun/star/drawing/TextAnimationKind.hpp>
24 #include <com/sun/star/uno/Any.hxx>
25 #include <com/sun/star/drawing/TextAnimationDirection.hpp>
26 #include <com/sun/star/drawing/ConnectorType.hpp>
27 #include <com/sun/star/drawing/MeasureKind.hpp>
28 #include <com/sun/star/drawing/MeasureTextHorzPos.hpp>
29 #include <com/sun/star/drawing/MeasureTextVertPos.hpp>
30 #include <com/sun/star/drawing/CircleKind.hpp>
31 #include <com/sun/star/uno/Sequence.hxx>
33 #include <editeng/boxitem.hxx>
34 #include <editeng/lineitem.hxx>
35 #include <editeng/shaditem.hxx>
36 #include <editeng/xmlcnitm.hxx>
37 #include <comphelper/processfactory.hxx>
38 #include <editeng/adjustitem.hxx>
39 #include <editeng/editdata.hxx>
40 #include <editeng/writingmodeitem.hxx>
41 #include <editeng/charrotateitem.hxx>
42 #include <i18nutil/unicode.hxx>
43 #include <svl/solar.hrc>
44 #include <tools/bigint.hxx>
45 #include <tools/stream.hxx>
46 #include <unotools/intlwrapper.hxx>
47 #include <vcl/svapp.hxx>
48 #include <vcl/settings.hxx>
50 #include <svdglob.hxx>
51 #include <svx/strings.hrc>
53 #include <svx/dialmgr.hxx>
54 #include <svx/sdgcpitm.hxx>
55 #include <svx/sdtfchim.hxx>
56 #include <svx/svdattr.hxx>
57 #include <svx/svdmodel.hxx>
58 #include <svx/svdpool.hxx>
59 #include <svx/svdtrans.hxx>
60 #include <svx/svx3ditems.hxx>
61 #include <svx/svxids.hrc>
62 #include <sxallitm.hxx>
63 #include <svx/sxcaitm.hxx>
64 #include <svx/sxcecitm.hxx>
65 #include <svx/sxcgitm.hxx>
66 #include <svx/sxciaitm.hxx>
67 #include <sxcikitm.hxx>
68 #include <svx/sxcllitm.hxx>
69 #include <svx/sxctitm.hxx>
70 #include <svx/sxekitm.hxx>
71 #include <svx/sxelditm.hxx>
72 #include <svx/sxenditm.hxx>
73 #include <svx/sxfiitm.hxx>
74 #include <sxlayitm.hxx>
75 #include <sxlogitm.hxx>
76 #include <svx/sxmbritm.hxx>
77 #include <svx/sxmfsitm.hxx>
78 #include <sxmkitm.hxx>
79 #include <svx/sxmlhitm.hxx>
80 #include <sxmoitm.hxx>
81 #include <sxmovitm.hxx>
82 #include <sxmsitm.hxx>
83 #include <sxmtaitm.hxx>
84 #include <svx/sxmtfitm.hxx>
85 #include <svx/sxmtpitm.hxx>
86 #include <svx/sxmtritm.hxx>
87 #include <svx/sxmuitm.hxx>
88 #include <sxoneitm.hxx>
89 #include <sxopitm.hxx>
90 #include <sxreaitm.hxx>
91 #include <sxreoitm.hxx>
92 #include <sxroaitm.hxx>
93 #include <sxrooitm.hxx>
94 #include <sxsaitm.hxx>
95 #include <sxsalitm.hxx>
96 #include <svx/sxsiitm.hxx>
97 #include <sxsoitm.hxx>
98 #include <sxtraitm.hxx>
99 #include <svx/xfillit0.hxx>
100 #include <svx/xflclit.hxx>
101 #include <svx/xlineit0.hxx>
102 #include <svx/xtable.hxx>
103 #include <libxml/xmlwriter.h>
105 using namespace ::com::sun::star
;
107 SdrItemPool::SdrItemPool(
108 SfxItemPool
* _pMaster
)
109 : XOutdevItemPool(_pMaster
)
111 // prepare some constants
112 const Color
aNullCol(RGB_Color(COL_BLACK
));
113 const sal_Int32
nDefEdgeDist(500); // Defaulting hard for Draw (100TH_MM) currently. MapMode will have to be taken into account in the future.
115 // init the non-persistent items
116 for(sal_uInt16
i(SDRATTR_NOTPERSIST_FIRST
); i
<= SDRATTR_NOTPERSIST_LAST
; i
++)
118 mpLocalItemInfos
[i
- SDRATTR_START
]._bPoolable
= false;
121 // init own PoolDefaults
122 std::vector
<SfxPoolItem
*>& rPoolDefaults
= *mpLocalPoolDefaults
;
123 rPoolDefaults
[SDRATTR_SHADOW
-SDRATTR_START
]=new SdrOnOffItem(SDRATTR_SHADOW
, false);
124 rPoolDefaults
[SDRATTR_SHADOWCOLOR
-SDRATTR_START
]=new XColorItem(SDRATTR_SHADOWCOLOR
, aNullCol
);
125 rPoolDefaults
[SDRATTR_SHADOWXDIST
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_SHADOWXDIST
, 0);
126 rPoolDefaults
[SDRATTR_SHADOWYDIST
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_SHADOWYDIST
, 0);
127 rPoolDefaults
[SDRATTR_SHADOWTRANSPARENCE
-SDRATTR_START
]=new SdrPercentItem(SDRATTR_SHADOWTRANSPARENCE
, 0);
128 rPoolDefaults
[SDRATTR_SHADOW3D
-SDRATTR_START
]=new SfxVoidItem(SDRATTR_SHADOW3D
);
129 rPoolDefaults
[SDRATTR_SHADOWPERSP
-SDRATTR_START
]=new SfxVoidItem(SDRATTR_SHADOWPERSP
);
130 rPoolDefaults
[SDRATTR_CAPTIONTYPE
-SDRATTR_START
]=new SdrCaptionTypeItem
;
131 rPoolDefaults
[SDRATTR_CAPTIONFIXEDANGLE
-SDRATTR_START
]=new SdrOnOffItem(SDRATTR_CAPTIONFIXEDANGLE
, true);
132 rPoolDefaults
[SDRATTR_CAPTIONANGLE
-SDRATTR_START
]=new SdrCaptionAngleItem
;
133 rPoolDefaults
[SDRATTR_CAPTIONGAP
-SDRATTR_START
]=new SdrCaptionGapItem
;
134 rPoolDefaults
[SDRATTR_CAPTIONESCDIR
-SDRATTR_START
]=new SdrCaptionEscDirItem
;
135 rPoolDefaults
[SDRATTR_CAPTIONESCISREL
-SDRATTR_START
]=new SdrCaptionEscIsRelItem
;
136 rPoolDefaults
[SDRATTR_CAPTIONESCREL
-SDRATTR_START
]=new SdrCaptionEscRelItem
;
137 rPoolDefaults
[SDRATTR_CAPTIONESCABS
-SDRATTR_START
]=new SdrCaptionEscAbsItem
;
138 rPoolDefaults
[SDRATTR_CAPTIONLINELEN
-SDRATTR_START
]=new SdrCaptionLineLenItem
;
139 rPoolDefaults
[SDRATTR_CAPTIONFITLINELEN
-SDRATTR_START
]=new SdrCaptionFitLineLenItem
;
140 rPoolDefaults
[SDRATTR_ECKENRADIUS
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_ECKENRADIUS
, 0);
141 rPoolDefaults
[SDRATTR_TEXT_MINFRAMEHEIGHT
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_TEXT_MINFRAMEHEIGHT
, 0);
142 rPoolDefaults
[SDRATTR_TEXT_AUTOGROWHEIGHT
-SDRATTR_START
]=new SdrOnOffItem(SDRATTR_TEXT_AUTOGROWHEIGHT
, true);
143 rPoolDefaults
[SDRATTR_TEXT_FITTOSIZE
-SDRATTR_START
]=new SdrTextFitToSizeTypeItem
;
144 rPoolDefaults
[SDRATTR_TEXT_LEFTDIST
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_TEXT_LEFTDIST
, 0);
145 rPoolDefaults
[SDRATTR_TEXT_RIGHTDIST
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_TEXT_RIGHTDIST
, 0);
146 rPoolDefaults
[SDRATTR_TEXT_UPPERDIST
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_TEXT_UPPERDIST
, 0);
147 rPoolDefaults
[SDRATTR_TEXT_LOWERDIST
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_TEXT_LOWERDIST
, 0);
148 rPoolDefaults
[SDRATTR_TEXT_VERTADJUST
-SDRATTR_START
]=new SdrTextVertAdjustItem
;
149 rPoolDefaults
[SDRATTR_TEXT_MAXFRAMEHEIGHT
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_TEXT_MAXFRAMEHEIGHT
, 0);
150 rPoolDefaults
[SDRATTR_TEXT_MINFRAMEWIDTH
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_TEXT_MINFRAMEWIDTH
, 0);
151 rPoolDefaults
[SDRATTR_TEXT_MAXFRAMEWIDTH
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_TEXT_MAXFRAMEWIDTH
, 0);
152 rPoolDefaults
[SDRATTR_TEXT_AUTOGROWWIDTH
-SDRATTR_START
]=new SdrOnOffItem(SDRATTR_TEXT_AUTOGROWWIDTH
, false);
153 rPoolDefaults
[SDRATTR_TEXT_HORZADJUST
-SDRATTR_START
]=new SdrTextHorzAdjustItem
;
154 rPoolDefaults
[SDRATTR_TEXT_ANIKIND
-SDRATTR_START
]=new SdrTextAniKindItem
;
155 rPoolDefaults
[SDRATTR_TEXT_ANIDIRECTION
-SDRATTR_START
]=new SdrTextAniDirectionItem
;
156 rPoolDefaults
[SDRATTR_TEXT_ANISTARTINSIDE
-SDRATTR_START
]=new SdrTextAniStartInsideItem
;
157 rPoolDefaults
[SDRATTR_TEXT_ANISTOPINSIDE
-SDRATTR_START
]=new SdrTextAniStopInsideItem
;
158 rPoolDefaults
[SDRATTR_TEXT_ANICOUNT
-SDRATTR_START
]=new SdrTextAniCountItem
;
159 rPoolDefaults
[SDRATTR_TEXT_ANIDELAY
-SDRATTR_START
]=new SdrTextAniDelayItem
;
160 rPoolDefaults
[SDRATTR_TEXT_ANIAMOUNT
-SDRATTR_START
]=new SdrTextAniAmountItem
;
161 rPoolDefaults
[SDRATTR_TEXT_CONTOURFRAME
-SDRATTR_START
]=new SdrOnOffItem(SDRATTR_TEXT_CONTOURFRAME
, false);
162 rPoolDefaults
[SDRATTR_XMLATTRIBUTES
-SDRATTR_START
]=new SvXMLAttrContainerItem( SDRATTR_XMLATTRIBUTES
);
163 rPoolDefaults
[SDRATTR_TEXT_CHAINNEXTNAME
-SDRATTR_START
]=new SfxStringItem(SDRATTR_TEXT_CHAINNEXTNAME
, "");
164 rPoolDefaults
[SDRATTR_TEXT_USEFIXEDCELLHEIGHT
-SDRATTR_START
]=new SdrTextFixedCellHeightItem
;
165 rPoolDefaults
[SDRATTR_TEXT_WORDWRAP
-SDRATTR_START
]=new SdrOnOffItem(SDRATTR_TEXT_WORDWRAP
, true);
166 rPoolDefaults
[SDRATTR_EDGEKIND
-SDRATTR_START
]=new SdrEdgeKindItem
;
167 rPoolDefaults
[SDRATTR_EDGENODE1HORZDIST
-SDRATTR_START
]=new SdrEdgeNode1HorzDistItem(nDefEdgeDist
);
168 rPoolDefaults
[SDRATTR_EDGENODE1VERTDIST
-SDRATTR_START
]=new SdrEdgeNode1VertDistItem(nDefEdgeDist
);
169 rPoolDefaults
[SDRATTR_EDGENODE2HORZDIST
-SDRATTR_START
]=new SdrEdgeNode2HorzDistItem(nDefEdgeDist
);
170 rPoolDefaults
[SDRATTR_EDGENODE2VERTDIST
-SDRATTR_START
]=new SdrEdgeNode2VertDistItem(nDefEdgeDist
);
171 rPoolDefaults
[SDRATTR_EDGENODE1GLUEDIST
-SDRATTR_START
]=new SdrEdgeNode1GlueDistItem
;
172 rPoolDefaults
[SDRATTR_EDGENODE2GLUEDIST
-SDRATTR_START
]=new SdrEdgeNode2GlueDistItem
;
173 rPoolDefaults
[SDRATTR_EDGELINEDELTACOUNT
-SDRATTR_START
]=new SdrEdgeLineDeltaCountItem
;
174 rPoolDefaults
[SDRATTR_EDGELINE1DELTA
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_EDGELINE1DELTA
, 0);
175 rPoolDefaults
[SDRATTR_EDGELINE2DELTA
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_EDGELINE2DELTA
, 0);
176 rPoolDefaults
[SDRATTR_EDGELINE3DELTA
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_EDGELINE3DELTA
, 0);
177 rPoolDefaults
[SDRATTR_MEASUREKIND
-SDRATTR_START
]=new SdrMeasureKindItem
;
178 rPoolDefaults
[SDRATTR_MEASURETEXTHPOS
-SDRATTR_START
]=new SdrMeasureTextHPosItem
;
179 rPoolDefaults
[SDRATTR_MEASURETEXTVPOS
-SDRATTR_START
]=new SdrMeasureTextVPosItem
;
180 rPoolDefaults
[SDRATTR_MEASURELINEDIST
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_MEASURELINEDIST
, 800);
181 rPoolDefaults
[SDRATTR_MEASUREHELPLINEOVERHANG
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_MEASUREHELPLINEOVERHANG
, 200);
182 rPoolDefaults
[SDRATTR_MEASUREHELPLINEDIST
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_MEASUREHELPLINEDIST
, 100);
183 rPoolDefaults
[SDRATTR_MEASUREHELPLINE1LEN
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_MEASUREHELPLINE1LEN
, 0);
184 rPoolDefaults
[SDRATTR_MEASUREHELPLINE2LEN
-SDRATTR_START
]=new SdrMetricItem(SDRATTR_MEASUREHELPLINE2LEN
, 0);
185 rPoolDefaults
[SDRATTR_MEASUREBELOWREFEDGE
-SDRATTR_START
]=new SdrMeasureBelowRefEdgeItem
;
186 rPoolDefaults
[SDRATTR_MEASURETEXTROTA90
-SDRATTR_START
]=new SdrMeasureTextRota90Item
;
187 rPoolDefaults
[SDRATTR_MEASURETEXTUPSIDEDOWN
-SDRATTR_START
]=new SdrMeasureTextUpsideDownItem
;
188 rPoolDefaults
[SDRATTR_MEASUREOVERHANG
-SDRATTR_START
]=new SdrMeasureOverhangItem(600);
189 rPoolDefaults
[SDRATTR_MEASUREUNIT
-SDRATTR_START
]=new SdrMeasureUnitItem
;
190 rPoolDefaults
[SDRATTR_MEASURESCALE
-SDRATTR_START
]=new SdrMeasureScaleItem
;
191 rPoolDefaults
[SDRATTR_MEASURESHOWUNIT
-SDRATTR_START
]=new SdrYesNoItem(SDRATTR_MEASURESHOWUNIT
, false);
192 rPoolDefaults
[SDRATTR_MEASUREFORMATSTRING
-SDRATTR_START
]=new SdrMeasureFormatStringItem();
193 rPoolDefaults
[SDRATTR_MEASURETEXTAUTOANGLE
-SDRATTR_START
]=new SdrMeasureTextAutoAngleItem();
194 rPoolDefaults
[SDRATTR_MEASURETEXTAUTOANGLEVIEW
-SDRATTR_START
]=new SdrMeasureTextAutoAngleViewItem();
195 rPoolDefaults
[SDRATTR_MEASURETEXTISFIXEDANGLE
-SDRATTR_START
]=new SdrMeasureTextIsFixedAngleItem();
196 rPoolDefaults
[SDRATTR_MEASURETEXTFIXEDANGLE
-SDRATTR_START
]=new SdrMeasureTextFixedAngleItem();
197 rPoolDefaults
[SDRATTR_MEASUREDECIMALPLACES
-SDRATTR_START
]=new SdrMeasureDecimalPlacesItem();
198 rPoolDefaults
[SDRATTR_CIRCKIND
-SDRATTR_START
]=new SdrCircKindItem
;
199 rPoolDefaults
[SDRATTR_CIRCSTARTANGLE
-SDRATTR_START
]=new SdrAngleItem(SDRATTR_CIRCSTARTANGLE
, 0);
200 rPoolDefaults
[SDRATTR_CIRCENDANGLE
-SDRATTR_START
]=new SdrAngleItem(SDRATTR_CIRCENDANGLE
, 36000);
201 rPoolDefaults
[SDRATTR_OBJMOVEPROTECT
-SDRATTR_START
]=new SdrYesNoItem(SDRATTR_OBJMOVEPROTECT
, false);
202 rPoolDefaults
[SDRATTR_OBJSIZEPROTECT
-SDRATTR_START
]=new SdrYesNoItem(SDRATTR_OBJSIZEPROTECT
, false);
203 rPoolDefaults
[SDRATTR_OBJPRINTABLE
-SDRATTR_START
]=new SdrObjPrintableItem
;
204 rPoolDefaults
[SDRATTR_OBJVISIBLE
-SDRATTR_START
]=new SdrObjVisibleItem
;
205 rPoolDefaults
[SDRATTR_LAYERID
-SDRATTR_START
]=new SdrLayerIdItem(SdrLayerID(0));
206 rPoolDefaults
[SDRATTR_LAYERNAME
-SDRATTR_START
]=new SdrLayerNameItem
;
207 rPoolDefaults
[SDRATTR_OBJECTNAME
-SDRATTR_START
]=new SfxStringItem(SDRATTR_OBJECTNAME
);
208 rPoolDefaults
[SDRATTR_ALLPOSITIONX
-SDRATTR_START
]=new SdrAllPositionXItem
;
209 rPoolDefaults
[SDRATTR_ALLPOSITIONY
-SDRATTR_START
]=new SdrAllPositionYItem
;
210 rPoolDefaults
[SDRATTR_ALLSIZEWIDTH
-SDRATTR_START
]=new SdrAllSizeWidthItem
;
211 rPoolDefaults
[SDRATTR_ALLSIZEHEIGHT
-SDRATTR_START
]=new SdrAllSizeHeightItem
;
212 rPoolDefaults
[SDRATTR_ONEPOSITIONX
-SDRATTR_START
]=new SdrOnePositionXItem
;
213 rPoolDefaults
[SDRATTR_ONEPOSITIONY
-SDRATTR_START
]=new SdrOnePositionYItem
;
214 rPoolDefaults
[SDRATTR_ONESIZEWIDTH
-SDRATTR_START
]=new SdrOneSizeWidthItem
;
215 rPoolDefaults
[SDRATTR_ONESIZEHEIGHT
-SDRATTR_START
]=new SdrOneSizeHeightItem
;
216 rPoolDefaults
[SDRATTR_LOGICSIZEWIDTH
-SDRATTR_START
]=new SdrLogicSizeWidthItem
;
217 rPoolDefaults
[SDRATTR_LOGICSIZEHEIGHT
-SDRATTR_START
]=new SdrLogicSizeHeightItem
;
218 rPoolDefaults
[SDRATTR_ROTATEANGLE
-SDRATTR_START
]=new SdrAngleItem(SDRATTR_ROTATEANGLE
, 0);
219 rPoolDefaults
[SDRATTR_SHEARANGLE
-SDRATTR_START
]=new SdrShearAngleItem
;
220 rPoolDefaults
[SDRATTR_MOVEX
-SDRATTR_START
]=new SdrMoveXItem
;
221 rPoolDefaults
[SDRATTR_MOVEY
-SDRATTR_START
]=new SdrMoveYItem
;
222 rPoolDefaults
[SDRATTR_RESIZEXONE
-SDRATTR_START
]=new SdrResizeXOneItem
;
223 rPoolDefaults
[SDRATTR_RESIZEYONE
-SDRATTR_START
]=new SdrResizeYOneItem
;
224 rPoolDefaults
[SDRATTR_ROTATEONE
-SDRATTR_START
]=new SdrRotateOneItem
;
225 rPoolDefaults
[SDRATTR_HORZSHEARONE
-SDRATTR_START
]=new SdrHorzShearOneItem
;
226 rPoolDefaults
[SDRATTR_VERTSHEARONE
-SDRATTR_START
]=new SdrVertShearOneItem
;
227 rPoolDefaults
[SDRATTR_RESIZEXALL
-SDRATTR_START
]=new SdrResizeXAllItem
;
228 rPoolDefaults
[SDRATTR_RESIZEYALL
-SDRATTR_START
]=new SdrResizeYAllItem
;
229 rPoolDefaults
[SDRATTR_ROTATEALL
-SDRATTR_START
]=new SdrRotateAllItem
;
230 rPoolDefaults
[SDRATTR_HORZSHEARALL
-SDRATTR_START
]=new SdrHorzShearAllItem
;
231 rPoolDefaults
[SDRATTR_VERTSHEARALL
-SDRATTR_START
]=new SdrVertShearAllItem
;
232 rPoolDefaults
[SDRATTR_TRANSFORMREF1X
-SDRATTR_START
]=new SdrTransformRef1XItem
;
233 rPoolDefaults
[SDRATTR_TRANSFORMREF1Y
-SDRATTR_START
]=new SdrTransformRef1YItem
;
234 rPoolDefaults
[SDRATTR_TRANSFORMREF2X
-SDRATTR_START
]=new SdrTransformRef2XItem
;
235 rPoolDefaults
[SDRATTR_TRANSFORMREF2Y
-SDRATTR_START
]=new SdrTransformRef2YItem
;
236 rPoolDefaults
[SDRATTR_TEXTDIRECTION
-SDRATTR_START
]=new SvxWritingModeItem(css::text::WritingMode_LR_TB
, SDRATTR_TEXTDIRECTION
);
237 rPoolDefaults
[ SDRATTR_GRAFRED
- SDRATTR_START
] = new SdrGrafRedItem
;
238 rPoolDefaults
[ SDRATTR_GRAFGREEN
- SDRATTR_START
] = new SdrGrafGreenItem
;
239 rPoolDefaults
[ SDRATTR_GRAFBLUE
- SDRATTR_START
] = new SdrGrafBlueItem
;
240 rPoolDefaults
[ SDRATTR_GRAFLUMINANCE
- SDRATTR_START
] = new SdrGrafLuminanceItem
;
241 rPoolDefaults
[ SDRATTR_GRAFCONTRAST
- SDRATTR_START
] = new SdrGrafContrastItem
;
242 rPoolDefaults
[ SDRATTR_GRAFGAMMA
- SDRATTR_START
] = new SdrGrafGamma100Item
;
243 rPoolDefaults
[ SDRATTR_GRAFTRANSPARENCE
- SDRATTR_START
] = new SdrGrafTransparenceItem
;
244 rPoolDefaults
[ SDRATTR_GRAFINVERT
- SDRATTR_START
] = new SdrGrafInvertItem
;
245 rPoolDefaults
[ SDRATTR_GRAFMODE
- SDRATTR_START
] = new SdrGrafModeItem
;
246 rPoolDefaults
[ SDRATTR_GRAFCROP
- SDRATTR_START
] = new SdrGrafCropItem
;
247 rPoolDefaults
[ SDRATTR_3DOBJ_PERCENT_DIAGONAL
- SDRATTR_START
] = new SfxUInt16Item(SDRATTR_3DOBJ_PERCENT_DIAGONAL
, 10);
248 rPoolDefaults
[ SDRATTR_3DOBJ_BACKSCALE
- SDRATTR_START
] = new SfxUInt16Item(SDRATTR_3DOBJ_BACKSCALE
, 100);
249 rPoolDefaults
[ SDRATTR_3DOBJ_DEPTH
- SDRATTR_START
] = new SfxUInt32Item(SDRATTR_3DOBJ_DEPTH
, 1000);
250 rPoolDefaults
[ SDRATTR_3DOBJ_HORZ_SEGS
- SDRATTR_START
] = new SfxUInt32Item(SDRATTR_3DOBJ_HORZ_SEGS
, 24);
251 rPoolDefaults
[ SDRATTR_3DOBJ_VERT_SEGS
- SDRATTR_START
] = new SfxUInt32Item(SDRATTR_3DOBJ_VERT_SEGS
, 24);
252 rPoolDefaults
[ SDRATTR_3DOBJ_END_ANGLE
- SDRATTR_START
] = new SfxUInt32Item(SDRATTR_3DOBJ_END_ANGLE
, 3600);
253 rPoolDefaults
[ SDRATTR_3DOBJ_DOUBLE_SIDED
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DOBJ_DOUBLE_SIDED
, false);
254 rPoolDefaults
[ SDRATTR_3DOBJ_NORMALS_KIND
- SDRATTR_START
] = new Svx3DNormalsKindItem
;
255 rPoolDefaults
[ SDRATTR_3DOBJ_NORMALS_INVERT
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DOBJ_NORMALS_INVERT
, false);
256 rPoolDefaults
[ SDRATTR_3DOBJ_TEXTURE_PROJ_X
- SDRATTR_START
] = new Svx3DTextureProjectionXItem
;
257 rPoolDefaults
[ SDRATTR_3DOBJ_TEXTURE_PROJ_Y
- SDRATTR_START
] = new Svx3DTextureProjectionYItem
;
258 rPoolDefaults
[ SDRATTR_3DOBJ_SHADOW_3D
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DOBJ_SHADOW_3D
, false);
259 rPoolDefaults
[ SDRATTR_3DOBJ_MAT_COLOR
- SDRATTR_START
] = new SvxColorItem(Color(0x0000b8ff), SDRATTR_3DOBJ_MAT_COLOR
);
260 rPoolDefaults
[ SDRATTR_3DOBJ_MAT_EMISSION
- SDRATTR_START
] = new SvxColorItem(Color(0x00000000), SDRATTR_3DOBJ_MAT_EMISSION
);
261 rPoolDefaults
[ SDRATTR_3DOBJ_MAT_SPECULAR
- SDRATTR_START
] = new SvxColorItem(Color(0x00ffffff), SDRATTR_3DOBJ_MAT_SPECULAR
);
262 rPoolDefaults
[ SDRATTR_3DOBJ_MAT_SPECULAR_INTENSITY
- SDRATTR_START
] = new SfxUInt16Item(SDRATTR_3DOBJ_MAT_SPECULAR_INTENSITY
, 15);
263 rPoolDefaults
[ SDRATTR_3DOBJ_TEXTURE_KIND
- SDRATTR_START
] = new Svx3DTextureKindItem
;
264 rPoolDefaults
[ SDRATTR_3DOBJ_TEXTURE_MODE
- SDRATTR_START
] = new Svx3DTextureModeItem
;
265 rPoolDefaults
[ SDRATTR_3DOBJ_TEXTURE_FILTER
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DOBJ_TEXTURE_FILTER
, false);
266 rPoolDefaults
[ SDRATTR_3DOBJ_SMOOTH_NORMALS
- SDRATTR_START
] = new Svx3DSmoothNormalsItem
;
267 rPoolDefaults
[ SDRATTR_3DOBJ_SMOOTH_LIDS
- SDRATTR_START
] = new Svx3DSmoothLidsItem
;
268 rPoolDefaults
[ SDRATTR_3DOBJ_CHARACTER_MODE
- SDRATTR_START
] = new Svx3DCharacterModeItem
;
269 rPoolDefaults
[ SDRATTR_3DOBJ_CLOSE_FRONT
- SDRATTR_START
] = new Svx3DCloseFrontItem
;
270 rPoolDefaults
[ SDRATTR_3DOBJ_CLOSE_BACK
- SDRATTR_START
] = new Svx3DCloseBackItem
;
271 rPoolDefaults
[ SDRATTR_3DOBJ_REDUCED_LINE_GEOMETRY
- SDRATTR_START
] = new Svx3DReducedLineGeometryItem
;
272 rPoolDefaults
[ SDRATTR_3DSCENE_PERSPECTIVE
- SDRATTR_START
] = new Svx3DPerspectiveItem
;
273 rPoolDefaults
[ SDRATTR_3DSCENE_DISTANCE
- SDRATTR_START
] = new SfxUInt32Item(SDRATTR_3DSCENE_DISTANCE
, 100);
274 rPoolDefaults
[ SDRATTR_3DSCENE_FOCAL_LENGTH
- SDRATTR_START
] = new SfxUInt32Item(SDRATTR_3DSCENE_FOCAL_LENGTH
, 100);
275 rPoolDefaults
[ SDRATTR_3DSCENE_TWO_SIDED_LIGHTING
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DSCENE_TWO_SIDED_LIGHTING
, false);
276 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTCOLOR_1
- SDRATTR_START
] = new SvxColorItem(Color(0xffcccccc), SDRATTR_3DSCENE_LIGHTCOLOR_1
);
277 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTCOLOR_2
- SDRATTR_START
] = new SvxColorItem(Color(0x00000000), SDRATTR_3DSCENE_LIGHTCOLOR_2
);
278 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTCOLOR_3
- SDRATTR_START
] = new SvxColorItem(Color(0x00000000), SDRATTR_3DSCENE_LIGHTCOLOR_3
);
279 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTCOLOR_4
- SDRATTR_START
] = new SvxColorItem(Color(0x00000000), SDRATTR_3DSCENE_LIGHTCOLOR_4
);
280 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTCOLOR_5
- SDRATTR_START
] = new SvxColorItem(Color(0x00000000), SDRATTR_3DSCENE_LIGHTCOLOR_5
);
281 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTCOLOR_6
- SDRATTR_START
] = new SvxColorItem(Color(0x00000000), SDRATTR_3DSCENE_LIGHTCOLOR_6
);
282 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTCOLOR_7
- SDRATTR_START
] = new SvxColorItem(Color(0x00000000), SDRATTR_3DSCENE_LIGHTCOLOR_7
);
283 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTCOLOR_8
- SDRATTR_START
] = new SvxColorItem(Color(0x00000000), SDRATTR_3DSCENE_LIGHTCOLOR_8
);
284 rPoolDefaults
[ SDRATTR_3DSCENE_AMBIENTCOLOR
- SDRATTR_START
] = new SvxColorItem(Color(0x00666666), SDRATTR_3DSCENE_AMBIENTCOLOR
);
285 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTON_1
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DSCENE_LIGHTON_1
, true);
286 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTON_2
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DSCENE_LIGHTON_2
, false);
287 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTON_3
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DSCENE_LIGHTON_3
, false);
288 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTON_4
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DSCENE_LIGHTON_4
, false);
289 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTON_5
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DSCENE_LIGHTON_5
, false);
290 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTON_6
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DSCENE_LIGHTON_6
, false);
291 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTON_7
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DSCENE_LIGHTON_7
, false);
292 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTON_8
- SDRATTR_START
] = new SfxBoolItem(SDRATTR_3DSCENE_LIGHTON_8
, false);
293 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTDIRECTION_1
- SDRATTR_START
] = new SvxB3DVectorItem(SDRATTR_3DSCENE_LIGHTDIRECTION_1
, basegfx::B3DVector(0.57735026918963, 0.57735026918963, 0.57735026918963));
294 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTDIRECTION_2
- SDRATTR_START
] = new SvxB3DVectorItem(SDRATTR_3DSCENE_LIGHTDIRECTION_2
, basegfx::B3DVector(0.0,0.0,1.0));
295 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTDIRECTION_3
- SDRATTR_START
] = new SvxB3DVectorItem(SDRATTR_3DSCENE_LIGHTDIRECTION_3
, basegfx::B3DVector(0.0,0.0,1.0));
296 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTDIRECTION_4
- SDRATTR_START
] = new SvxB3DVectorItem(SDRATTR_3DSCENE_LIGHTDIRECTION_4
, basegfx::B3DVector(0.0,0.0,1.0));
297 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTDIRECTION_5
- SDRATTR_START
] = new SvxB3DVectorItem(SDRATTR_3DSCENE_LIGHTDIRECTION_5
, basegfx::B3DVector(0.0,0.0,1.0));
298 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTDIRECTION_6
- SDRATTR_START
] = new SvxB3DVectorItem(SDRATTR_3DSCENE_LIGHTDIRECTION_6
, basegfx::B3DVector(0.0,0.0,1.0));
299 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTDIRECTION_7
- SDRATTR_START
] = new SvxB3DVectorItem(SDRATTR_3DSCENE_LIGHTDIRECTION_7
, basegfx::B3DVector(0.0,0.0,1.0));
300 rPoolDefaults
[ SDRATTR_3DSCENE_LIGHTDIRECTION_8
- SDRATTR_START
] = new SvxB3DVectorItem(SDRATTR_3DSCENE_LIGHTDIRECTION_8
, basegfx::B3DVector(0.0,0.0,1.0));
301 rPoolDefaults
[ SDRATTR_3DSCENE_SHADOW_SLANT
- SDRATTR_START
] = new SfxUInt16Item(SDRATTR_3DSCENE_SHADOW_SLANT
, 0);
302 rPoolDefaults
[ SDRATTR_3DSCENE_SHADE_MODE
- SDRATTR_START
] = new Svx3DShadeModeItem
;
303 rPoolDefaults
[ SDRATTR_CUSTOMSHAPE_ENGINE
- SDRATTR_START
] = new SfxStringItem(SDRATTR_CUSTOMSHAPE_ENGINE
, "");
304 rPoolDefaults
[ SDRATTR_CUSTOMSHAPE_DATA
- SDRATTR_START
] = new SfxStringItem(SDRATTR_CUSTOMSHAPE_DATA
, "");
305 rPoolDefaults
[ SDRATTR_CUSTOMSHAPE_GEOMETRY
- SDRATTR_START
] = new SdrCustomShapeGeometryItem
;
307 SvxBoxItem
* pboxItem
= new SvxBoxItem( SDRATTR_TABLE_BORDER
);
308 pboxItem
->SetAllDistances( 100 );
309 rPoolDefaults
[ SDRATTR_TABLE_BORDER
- SDRATTR_START
] = pboxItem
;
311 SvxBoxInfoItem
* pBoxInfoItem
= new SvxBoxInfoItem( SDRATTR_TABLE_BORDER_INNER
);
313 pBoxInfoItem
->SetTable( true );
314 pBoxInfoItem
->SetDist( true); // always show margin field
315 pBoxInfoItem
->SetValid( SvxBoxInfoItemValidFlags::DISABLE
); // some lines may have DontCare state only in tables
317 rPoolDefaults
[ SDRATTR_TABLE_BORDER_INNER
- SDRATTR_START
] = pBoxInfoItem
;
318 rPoolDefaults
[ SDRATTR_TABLE_BORDER_TLBR
- SDRATTR_START
] = new SvxLineItem( SDRATTR_TABLE_BORDER_TLBR
);
319 rPoolDefaults
[ SDRATTR_TABLE_BORDER_BLTR
- SDRATTR_START
] = new SvxLineItem( SDRATTR_TABLE_BORDER_BLTR
);
320 rPoolDefaults
[ SDRATTR_TABLE_TEXT_ROTATION
- SDRATTR_START
] = new SvxTextRotateItem(0, SDRATTR_TABLE_TEXT_ROTATION
);
323 mpLocalItemInfos
[SDRATTR_SHADOW
-SDRATTR_START
]._nSID
=SID_ATTR_FILL_SHADOW
;
324 mpLocalItemInfos
[SDRATTR_SHADOWCOLOR
-SDRATTR_START
]._nSID
=SID_ATTR_SHADOW_COLOR
;
325 mpLocalItemInfos
[SDRATTR_SHADOWTRANSPARENCE
-SDRATTR_START
]._nSID
=SID_ATTR_SHADOW_TRANSPARENCE
;
326 mpLocalItemInfos
[SDRATTR_SHADOWXDIST
-SDRATTR_START
]._nSID
=SID_ATTR_SHADOW_XDISTANCE
;
327 mpLocalItemInfos
[SDRATTR_SHADOWYDIST
-SDRATTR_START
]._nSID
=SID_ATTR_SHADOW_YDISTANCE
;
328 mpLocalItemInfos
[SDRATTR_TEXT_FITTOSIZE
-SDRATTR_START
]._nSID
=SID_ATTR_TEXT_FITTOSIZE
;
329 mpLocalItemInfos
[SDRATTR_GRAFCROP
-SDRATTR_START
]._nSID
=SID_ATTR_GRAF_CROP
;
331 mpLocalItemInfos
[SDRATTR_TABLE_BORDER
- SDRATTR_START
]._nSID
= SID_ATTR_BORDER_OUTER
;
332 mpLocalItemInfos
[SDRATTR_TABLE_BORDER_INNER
- SDRATTR_START
]._nSID
= SID_ATTR_BORDER_INNER
;
333 mpLocalItemInfos
[SDRATTR_TABLE_BORDER_TLBR
- SDRATTR_START
]._nSID
= SID_ATTR_BORDER_DIAG_TLBR
;
334 mpLocalItemInfos
[SDRATTR_TABLE_BORDER_BLTR
- SDRATTR_START
]._nSID
= SID_ATTR_BORDER_DIAG_BLTR
;
336 // it's my own creation level, set Defaults and ItemInfos
337 SetDefaults(mpLocalPoolDefaults
);
338 SetItemInfos(mpLocalItemInfos
.get());
341 // copy ctor, so that static defaults are cloned
342 // (Parameter 2 = sal_True)
343 SdrItemPool::SdrItemPool(const SdrItemPool
& rPool
)
344 : XOutdevItemPool(rPool
)
348 SfxItemPool
* SdrItemPool::Clone() const
350 return new SdrItemPool(*this);
353 SdrItemPool::~SdrItemPool()
355 // split pools before destroying
356 SetSecondaryPool(nullptr);
359 bool SdrItemPool::GetPresentation(
360 const SfxPoolItem
& rItem
,
361 MapUnit ePresentationMetric
, OUString
& rText
,
362 const IntlWrapper
& rIntlWrapper
) const
364 if (!IsInvalidItem(&rItem
)) {
365 sal_uInt16 nWhich
=rItem
.Which();
366 if (nWhich
>=SDRATTR_SHADOW_FIRST
&& nWhich
<=SDRATTR_END
) {
367 rItem
.GetPresentation(SfxItemPresentation::Nameless
,
368 GetMetric(nWhich
),ePresentationMetric
,rText
,
372 TakeItemName(nWhich
, aStr
);
373 rText
= aStr
+ " " + rText
;
378 return XOutdevItemPool::GetPresentation(rItem
,ePresentationMetric
,rText
,rIntlWrapper
);
381 void SdrItemPool::TakeItemName(sal_uInt16 nWhich
, OUString
& rItemName
)
383 const char* pResId
= SIP_UNKNOWN_ATTR
;
387 case XATTR_LINESTYLE
: pResId
= SIP_XA_LINESTYLE
;break;
388 case XATTR_LINEDASH
: pResId
= SIP_XA_LINEDASH
;break;
389 case XATTR_LINEWIDTH
: pResId
= SIP_XA_LINEWIDTH
;break;
390 case XATTR_LINECOLOR
: pResId
= SIP_XA_LINECOLOR
;break;
391 case XATTR_LINESTART
: pResId
= SIP_XA_LINESTART
;break;
392 case XATTR_LINEEND
: pResId
= SIP_XA_LINEEND
;break;
393 case XATTR_LINESTARTWIDTH
: pResId
= SIP_XA_LINESTARTWIDTH
;break;
394 case XATTR_LINEENDWIDTH
: pResId
= SIP_XA_LINEENDWIDTH
;break;
395 case XATTR_LINESTARTCENTER
: pResId
= SIP_XA_LINESTARTCENTER
;break;
396 case XATTR_LINEENDCENTER
: pResId
= SIP_XA_LINEENDCENTER
;break;
397 case XATTR_LINETRANSPARENCE
: pResId
= SIP_XA_LINETRANSPARENCE
;break;
398 case XATTR_LINEJOINT
: pResId
= SIP_XA_LINEJOINT
;break;
399 case XATTRSET_LINE
: pResId
= SIP_XATTRSET_LINE
;break;
401 case XATTR_FILLSTYLE
: pResId
= SIP_XA_FILLSTYLE
;break;
402 case XATTR_FILLCOLOR
: pResId
= SIP_XA_FILLCOLOR
;break;
403 case XATTR_FILLGRADIENT
: pResId
= SIP_XA_FILLGRADIENT
;break;
404 case XATTR_FILLHATCH
: pResId
= SIP_XA_FILLHATCH
;break;
405 case XATTR_FILLBITMAP
: pResId
= SIP_XA_FILLBITMAP
;break;
406 case XATTR_FILLTRANSPARENCE
: pResId
= SIP_XA_FILLTRANSPARENCE
;break;
407 case XATTR_GRADIENTSTEPCOUNT
: pResId
= SIP_XA_GRADIENTSTEPCOUNT
;break;
408 case XATTR_FILLBMP_TILE
: pResId
= SIP_XA_FILLBMP_TILE
;break;
409 case XATTR_FILLBMP_POS
: pResId
= SIP_XA_FILLBMP_POS
;break;
410 case XATTR_FILLBMP_SIZEX
: pResId
= SIP_XA_FILLBMP_SIZEX
;break;
411 case XATTR_FILLBMP_SIZEY
: pResId
= SIP_XA_FILLBMP_SIZEY
;break;
412 case XATTR_FILLFLOATTRANSPARENCE
: pResId
= SIP_XA_FILLFLOATTRANSPARENCE
;break;
413 case XATTR_SECONDARYFILLCOLOR
: pResId
= SIP_XA_SECONDARYFILLCOLOR
;break;
414 case XATTR_FILLBMP_SIZELOG
: pResId
= SIP_XA_FILLBMP_SIZELOG
;break;
415 case XATTR_FILLBMP_TILEOFFSETX
: pResId
= SIP_XA_FILLBMP_TILEOFFSETX
;break;
416 case XATTR_FILLBMP_TILEOFFSETY
: pResId
= SIP_XA_FILLBMP_TILEOFFSETY
;break;
417 case XATTR_FILLBMP_STRETCH
: pResId
= SIP_XA_FILLBMP_STRETCH
;break;
418 case XATTR_FILLBMP_POSOFFSETX
: pResId
= SIP_XA_FILLBMP_POSOFFSETX
;break;
419 case XATTR_FILLBMP_POSOFFSETY
: pResId
= SIP_XA_FILLBMP_POSOFFSETY
;break;
420 case XATTR_FILLBACKGROUND
: pResId
= SIP_XA_FILLBACKGROUND
;break;
422 case XATTRSET_FILL
: pResId
= SIP_XATTRSET_FILL
;break;
424 case XATTR_FORMTXTSTYLE
: pResId
= SIP_XA_FORMTXTSTYLE
;break;
425 case XATTR_FORMTXTADJUST
: pResId
= SIP_XA_FORMTXTADJUST
;break;
426 case XATTR_FORMTXTDISTANCE
: pResId
= SIP_XA_FORMTXTDISTANCE
;break;
427 case XATTR_FORMTXTSTART
: pResId
= SIP_XA_FORMTXTSTART
;break;
428 case XATTR_FORMTXTMIRROR
: pResId
= SIP_XA_FORMTXTMIRROR
;break;
429 case XATTR_FORMTXTOUTLINE
: pResId
= SIP_XA_FORMTXTOUTLINE
;break;
430 case XATTR_FORMTXTSHADOW
: pResId
= SIP_XA_FORMTXTSHADOW
;break;
431 case XATTR_FORMTXTSHDWCOLOR
: pResId
= SIP_XA_FORMTXTSHDWCOLOR
;break;
432 case XATTR_FORMTXTSHDWXVAL
: pResId
= SIP_XA_FORMTXTSHDWXVAL
;break;
433 case XATTR_FORMTXTSHDWYVAL
: pResId
= SIP_XA_FORMTXTSHDWYVAL
;break;
434 case XATTR_FORMTXTHIDEFORM
: pResId
= SIP_XA_FORMTXTHIDEFORM
;break;
435 case XATTR_FORMTXTSHDWTRANSP
: pResId
= SIP_XA_FORMTXTSHDWTRANSP
;break;
437 case SDRATTR_SHADOW
: pResId
= SIP_SA_SHADOW
;break;
438 case SDRATTR_SHADOWCOLOR
: pResId
= SIP_SA_SHADOWCOLOR
;break;
439 case SDRATTR_SHADOWXDIST
: pResId
= SIP_SA_SHADOWXDIST
;break;
440 case SDRATTR_SHADOWYDIST
: pResId
= SIP_SA_SHADOWYDIST
;break;
441 case SDRATTR_SHADOWTRANSPARENCE
: pResId
= SIP_SA_SHADOWTRANSPARENCE
;break;
442 case SDRATTR_SHADOW3D
: pResId
= SIP_SA_SHADOW3D
;break;
443 case SDRATTR_SHADOWPERSP
: pResId
= SIP_SA_SHADOWPERSP
;break;
445 case SDRATTR_CAPTIONTYPE
: pResId
= SIP_SA_CAPTIONTYPE
;break;
446 case SDRATTR_CAPTIONFIXEDANGLE
: pResId
= SIP_SA_CAPTIONFIXEDANGLE
;break;
447 case SDRATTR_CAPTIONANGLE
: pResId
= SIP_SA_CAPTIONANGLE
;break;
448 case SDRATTR_CAPTIONGAP
: pResId
= SIP_SA_CAPTIONGAP
;break;
449 case SDRATTR_CAPTIONESCDIR
: pResId
= SIP_SA_CAPTIONESCDIR
;break;
450 case SDRATTR_CAPTIONESCISREL
: pResId
= SIP_SA_CAPTIONESCISREL
;break;
451 case SDRATTR_CAPTIONESCREL
: pResId
= SIP_SA_CAPTIONESCREL
;break;
452 case SDRATTR_CAPTIONESCABS
: pResId
= SIP_SA_CAPTIONESCABS
;break;
453 case SDRATTR_CAPTIONLINELEN
: pResId
= SIP_SA_CAPTIONLINELEN
;break;
454 case SDRATTR_CAPTIONFITLINELEN
: pResId
= SIP_SA_CAPTIONFITLINELEN
;break;
456 case SDRATTR_ECKENRADIUS
: pResId
= SIP_SA_ECKENRADIUS
;break;
457 case SDRATTR_TEXT_MINFRAMEHEIGHT
: pResId
= SIP_SA_TEXT_MINFRAMEHEIGHT
;break;
458 case SDRATTR_TEXT_AUTOGROWHEIGHT
: pResId
= SIP_SA_TEXT_AUTOGROWHEIGHT
;break;
459 case SDRATTR_TEXT_FITTOSIZE
: pResId
= SIP_SA_TEXT_FITTOSIZE
;break;
460 case SDRATTR_TEXT_LEFTDIST
: pResId
= SIP_SA_TEXT_LEFTDIST
;break;
461 case SDRATTR_TEXT_RIGHTDIST
: pResId
= SIP_SA_TEXT_RIGHTDIST
;break;
462 case SDRATTR_TEXT_UPPERDIST
: pResId
= SIP_SA_TEXT_UPPERDIST
;break;
463 case SDRATTR_TEXT_LOWERDIST
: pResId
= SIP_SA_TEXT_LOWERDIST
;break;
464 case SDRATTR_TEXT_VERTADJUST
: pResId
= SIP_SA_TEXT_VERTADJUST
;break;
465 case SDRATTR_TEXT_MAXFRAMEHEIGHT
: pResId
= SIP_SA_TEXT_MAXFRAMEHEIGHT
;break;
466 case SDRATTR_TEXT_MINFRAMEWIDTH
: pResId
= SIP_SA_TEXT_MINFRAMEWIDTH
;break;
467 case SDRATTR_TEXT_MAXFRAMEWIDTH
: pResId
= SIP_SA_TEXT_MAXFRAMEWIDTH
;break;
468 case SDRATTR_TEXT_AUTOGROWWIDTH
: pResId
= SIP_SA_TEXT_AUTOGROWWIDTH
;break;
469 case SDRATTR_TEXT_HORZADJUST
: pResId
= SIP_SA_TEXT_HORZADJUST
;break;
470 case SDRATTR_TEXT_ANIKIND
: pResId
= SIP_SA_TEXT_ANIKIND
;break;
471 case SDRATTR_TEXT_ANIDIRECTION
: pResId
= SIP_SA_TEXT_ANIDIRECTION
;break;
472 case SDRATTR_TEXT_ANISTARTINSIDE
: pResId
= SIP_SA_TEXT_ANISTARTINSIDE
;break;
473 case SDRATTR_TEXT_ANISTOPINSIDE
: pResId
= SIP_SA_TEXT_ANISTOPINSIDE
;break;
474 case SDRATTR_TEXT_ANICOUNT
: pResId
= SIP_SA_TEXT_ANICOUNT
;break;
475 case SDRATTR_TEXT_ANIDELAY
: pResId
= SIP_SA_TEXT_ANIDELAY
;break;
476 case SDRATTR_TEXT_ANIAMOUNT
: pResId
= SIP_SA_TEXT_ANIAMOUNT
;break;
477 case SDRATTR_TEXT_CONTOURFRAME
: pResId
= SIP_SA_TEXT_CONTOURFRAME
;break;
478 case SDRATTR_XMLATTRIBUTES
: pResId
= SIP_SA_XMLATTRIBUTES
;break;
479 case SDRATTR_TEXT_USEFIXEDCELLHEIGHT
: pResId
= SIP_SA_TEXT_USEFIXEDCELLHEIGHT
;break;
480 case SDRATTR_TEXT_WORDWRAP
: pResId
= SIP_SA_WORDWRAP
;break;
481 case SDRATTR_TEXT_CHAINNEXTNAME
: pResId
= SIP_SA_CHAINNEXTNAME
;break;
483 case SDRATTR_EDGEKIND
: pResId
= SIP_SA_EDGEKIND
;break;
484 case SDRATTR_EDGENODE1HORZDIST
: pResId
= SIP_SA_EDGENODE1HORZDIST
;break;
485 case SDRATTR_EDGENODE1VERTDIST
: pResId
= SIP_SA_EDGENODE1VERTDIST
;break;
486 case SDRATTR_EDGENODE2HORZDIST
: pResId
= SIP_SA_EDGENODE2HORZDIST
;break;
487 case SDRATTR_EDGENODE2VERTDIST
: pResId
= SIP_SA_EDGENODE2VERTDIST
;break;
488 case SDRATTR_EDGENODE1GLUEDIST
: pResId
= SIP_SA_EDGENODE1GLUEDIST
;break;
489 case SDRATTR_EDGENODE2GLUEDIST
: pResId
= SIP_SA_EDGENODE2GLUEDIST
;break;
490 case SDRATTR_EDGELINEDELTACOUNT
: pResId
= SIP_SA_EDGELINEDELTACOUNT
;break;
491 case SDRATTR_EDGELINE1DELTA
: pResId
= SIP_SA_EDGELINE1DELTA
;break;
492 case SDRATTR_EDGELINE2DELTA
: pResId
= SIP_SA_EDGELINE2DELTA
;break;
493 case SDRATTR_EDGELINE3DELTA
: pResId
= SIP_SA_EDGELINE3DELTA
;break;
495 case SDRATTR_MEASUREKIND
: pResId
= SIP_SA_MEASUREKIND
;break;
496 case SDRATTR_MEASURETEXTHPOS
: pResId
= SIP_SA_MEASURETEXTHPOS
;break;
497 case SDRATTR_MEASURETEXTVPOS
: pResId
= SIP_SA_MEASURETEXTVPOS
;break;
498 case SDRATTR_MEASURELINEDIST
: pResId
= SIP_SA_MEASURELINEDIST
;break;
499 case SDRATTR_MEASUREHELPLINEOVERHANG
: pResId
= SIP_SA_MEASUREHELPLINEOVERHANG
;break;
500 case SDRATTR_MEASUREHELPLINEDIST
: pResId
= SIP_SA_MEASUREHELPLINEDIST
;break;
501 case SDRATTR_MEASUREHELPLINE1LEN
: pResId
= SIP_SA_MEASUREHELPLINE1LEN
;break;
502 case SDRATTR_MEASUREHELPLINE2LEN
: pResId
= SIP_SA_MEASUREHELPLINE2LEN
;break;
503 case SDRATTR_MEASUREBELOWREFEDGE
: pResId
= SIP_SA_MEASUREBELOWREFEDGE
;break;
504 case SDRATTR_MEASURETEXTROTA90
: pResId
= SIP_SA_MEASURETEXTROTA90
;break;
505 case SDRATTR_MEASURETEXTUPSIDEDOWN
: pResId
= SIP_SA_MEASURETEXTUPSIDEDOWN
;break;
506 case SDRATTR_MEASUREOVERHANG
: pResId
= SIP_SA_MEASUREOVERHANG
;break;
507 case SDRATTR_MEASUREUNIT
: pResId
= SIP_SA_MEASUREUNIT
;break;
508 case SDRATTR_MEASURESCALE
: pResId
= SIP_SA_MEASURESCALE
;break;
509 case SDRATTR_MEASURESHOWUNIT
: pResId
= SIP_SA_MEASURESHOWUNIT
;break;
510 case SDRATTR_MEASUREFORMATSTRING
: pResId
= SIP_SA_MEASUREFORMATSTRING
;break;
511 case SDRATTR_MEASURETEXTAUTOANGLE
: pResId
= SIP_SA_MEASURETEXTAUTOANGLE
;break;
512 case SDRATTR_MEASURETEXTAUTOANGLEVIEW
: pResId
= SIP_SA_MEASURETEXTAUTOANGLEVIEW
;break;
513 case SDRATTR_MEASURETEXTISFIXEDANGLE
: pResId
= SIP_SA_MEASURETEXTISFIXEDANGLE
;break;
514 case SDRATTR_MEASURETEXTFIXEDANGLE
: pResId
= SIP_SA_MEASURETEXTFIXEDANGLE
;break;
515 case SDRATTR_MEASUREDECIMALPLACES
: pResId
= SIP_SA_MEASUREDECIMALPLACES
;break;
517 case SDRATTR_CIRCKIND
: pResId
= SIP_SA_CIRCKIND
;break;
518 case SDRATTR_CIRCSTARTANGLE
: pResId
= SIP_SA_CIRCSTARTANGLE
;break;
519 case SDRATTR_CIRCENDANGLE
: pResId
= SIP_SA_CIRCENDANGLE
;break;
521 case SDRATTR_OBJMOVEPROTECT
: pResId
= SIP_SA_OBJMOVEPROTECT
;break;
522 case SDRATTR_OBJSIZEPROTECT
: pResId
= SIP_SA_OBJSIZEPROTECT
;break;
523 case SDRATTR_OBJPRINTABLE
: pResId
= SIP_SA_OBJPRINTABLE
;break;
524 case SDRATTR_OBJVISIBLE
: pResId
= SIP_SA_OBJVISIBLE
;break;
525 case SDRATTR_LAYERID
: pResId
= SIP_SA_LAYERID
;break;
526 case SDRATTR_LAYERNAME
: pResId
= SIP_SA_LAYERNAME
;break;
527 case SDRATTR_OBJECTNAME
: pResId
= SIP_SA_OBJECTNAME
;break;
528 case SDRATTR_ALLPOSITIONX
: pResId
= SIP_SA_ALLPOSITIONX
;break;
529 case SDRATTR_ALLPOSITIONY
: pResId
= SIP_SA_ALLPOSITIONY
;break;
530 case SDRATTR_ALLSIZEWIDTH
: pResId
= SIP_SA_ALLSIZEWIDTH
;break;
531 case SDRATTR_ALLSIZEHEIGHT
: pResId
= SIP_SA_ALLSIZEHEIGHT
;break;
532 case SDRATTR_ONEPOSITIONX
: pResId
= SIP_SA_ONEPOSITIONX
;break;
533 case SDRATTR_ONEPOSITIONY
: pResId
= SIP_SA_ONEPOSITIONY
;break;
534 case SDRATTR_ONESIZEWIDTH
: pResId
= SIP_SA_ONESIZEWIDTH
;break;
535 case SDRATTR_ONESIZEHEIGHT
: pResId
= SIP_SA_ONESIZEHEIGHT
;break;
536 case SDRATTR_LOGICSIZEWIDTH
: pResId
= SIP_SA_LOGICSIZEWIDTH
;break;
537 case SDRATTR_LOGICSIZEHEIGHT
: pResId
= SIP_SA_LOGICSIZEHEIGHT
;break;
538 case SDRATTR_ROTATEANGLE
: pResId
= SIP_SA_ROTATEANGLE
;break;
539 case SDRATTR_SHEARANGLE
: pResId
= SIP_SA_SHEARANGLE
;break;
540 case SDRATTR_MOVEX
: pResId
= SIP_SA_MOVEX
;break;
541 case SDRATTR_MOVEY
: pResId
= SIP_SA_MOVEY
;break;
542 case SDRATTR_RESIZEXONE
: pResId
= SIP_SA_RESIZEXONE
;break;
543 case SDRATTR_RESIZEYONE
: pResId
= SIP_SA_RESIZEYONE
;break;
544 case SDRATTR_ROTATEONE
: pResId
= SIP_SA_ROTATEONE
;break;
545 case SDRATTR_HORZSHEARONE
: pResId
= SIP_SA_HORZSHEARONE
;break;
546 case SDRATTR_VERTSHEARONE
: pResId
= SIP_SA_VERTSHEARONE
;break;
547 case SDRATTR_RESIZEXALL
: pResId
= SIP_SA_RESIZEXALL
;break;
548 case SDRATTR_RESIZEYALL
: pResId
= SIP_SA_RESIZEYALL
;break;
549 case SDRATTR_ROTATEALL
: pResId
= SIP_SA_ROTATEALL
;break;
550 case SDRATTR_HORZSHEARALL
: pResId
= SIP_SA_HORZSHEARALL
;break;
551 case SDRATTR_VERTSHEARALL
: pResId
= SIP_SA_VERTSHEARALL
;break;
552 case SDRATTR_TRANSFORMREF1X
: pResId
= SIP_SA_TRANSFORMREF1X
;break;
553 case SDRATTR_TRANSFORMREF1Y
: pResId
= SIP_SA_TRANSFORMREF1Y
;break;
554 case SDRATTR_TRANSFORMREF2X
: pResId
= SIP_SA_TRANSFORMREF2X
;break;
555 case SDRATTR_TRANSFORMREF2Y
: pResId
= SIP_SA_TRANSFORMREF2Y
;break;
557 case SDRATTR_GRAFRED
: pResId
= SIP_SA_GRAFRED
;break;
558 case SDRATTR_GRAFGREEN
: pResId
= SIP_SA_GRAFGREEN
;break;
559 case SDRATTR_GRAFBLUE
: pResId
= SIP_SA_GRAFBLUE
;break;
560 case SDRATTR_GRAFLUMINANCE
: pResId
= SIP_SA_GRAFLUMINANCE
;break;
561 case SDRATTR_GRAFCONTRAST
: pResId
= SIP_SA_GRAFCONTRAST
;break;
562 case SDRATTR_GRAFGAMMA
: pResId
= SIP_SA_GRAFGAMMA
;break;
563 case SDRATTR_GRAFTRANSPARENCE
: pResId
= SIP_SA_GRAFTRANSPARENCE
;break;
564 case SDRATTR_GRAFINVERT
: pResId
= SIP_SA_GRAFINVERT
;break;
565 case SDRATTR_GRAFMODE
: pResId
= SIP_SA_GRAFMODE
;break;
566 case SDRATTR_GRAFCROP
: pResId
= SIP_SA_GRAFCROP
;break;
568 case EE_PARA_HYPHENATE
: pResId
= SIP_EE_PARA_HYPHENATE
;break;
569 case EE_PARA_BULLETSTATE
: pResId
= SIP_EE_PARA_BULLETSTATE
;break;
570 case EE_PARA_OUTLLRSPACE
: pResId
= SIP_EE_PARA_OUTLLRSPACE
;break;
571 case EE_PARA_OUTLLEVEL
: pResId
= SIP_EE_PARA_OUTLLEVEL
;break;
572 case EE_PARA_BULLET
: pResId
= SIP_EE_PARA_BULLET
;break;
573 case EE_PARA_LRSPACE
: pResId
= SIP_EE_PARA_LRSPACE
;break;
574 case EE_PARA_ULSPACE
: pResId
= SIP_EE_PARA_ULSPACE
;break;
575 case EE_PARA_SBL
: pResId
= SIP_EE_PARA_SBL
;break;
576 case EE_PARA_JUST
: pResId
= SIP_EE_PARA_JUST
;break;
577 case EE_PARA_TABS
: pResId
= SIP_EE_PARA_TABS
;break;
579 case EE_CHAR_COLOR
: pResId
= SIP_EE_CHAR_COLOR
;break;
580 case EE_CHAR_FONTINFO
: pResId
= SIP_EE_CHAR_FONTINFO
;break;
581 case EE_CHAR_FONTHEIGHT
: pResId
= SIP_EE_CHAR_FONTHEIGHT
;break;
582 case EE_CHAR_FONTWIDTH
: pResId
= SIP_EE_CHAR_FONTWIDTH
;break;
583 case EE_CHAR_WEIGHT
: pResId
= SIP_EE_CHAR_WEIGHT
;break;
584 case EE_CHAR_UNDERLINE
: pResId
= SIP_EE_CHAR_UNDERLINE
;break;
585 case EE_CHAR_OVERLINE
: pResId
= SIP_EE_CHAR_OVERLINE
;break;
586 case EE_CHAR_STRIKEOUT
: pResId
= SIP_EE_CHAR_STRIKEOUT
;break;
587 case EE_CHAR_ITALIC
: pResId
= SIP_EE_CHAR_ITALIC
;break;
588 case EE_CHAR_OUTLINE
: pResId
= SIP_EE_CHAR_OUTLINE
;break;
589 case EE_CHAR_SHADOW
: pResId
= SIP_EE_CHAR_SHADOW
;break;
590 case EE_CHAR_ESCAPEMENT
: pResId
= SIP_EE_CHAR_ESCAPEMENT
;break;
591 case EE_CHAR_PAIRKERNING
: pResId
= SIP_EE_CHAR_PAIRKERNING
;break;
592 case EE_CHAR_KERNING
: pResId
= SIP_EE_CHAR_KERNING
;break;
593 case EE_CHAR_WLM
: pResId
= SIP_EE_CHAR_WLM
;break;
594 case EE_FEATURE_TAB
: pResId
= SIP_EE_FEATURE_TAB
;break;
595 case EE_FEATURE_LINEBR
: pResId
= SIP_EE_FEATURE_LINEBR
;break;
596 case EE_FEATURE_NOTCONV
: pResId
= SIP_EE_FEATURE_NOTCONV
;break;
597 case EE_FEATURE_FIELD
: pResId
= SIP_EE_FEATURE_FIELD
;break;
600 rItemName
= SvxResId(pResId
);
607 bool SdrFractionItem::operator==(const SfxPoolItem
& rCmp
) const
609 return SfxPoolItem::operator==(rCmp
) &&
610 static_cast<const SdrFractionItem
&>(rCmp
).GetValue()==nValue
;
613 bool SdrFractionItem::GetPresentation(
614 SfxItemPresentation ePresentation
, MapUnit
/*eCoreMetric*/,
615 MapUnit
/*ePresentationMetric*/, OUString
&rText
, const IntlWrapper
&) const
619 sal_Int32 nDiv
= nValue
.GetDenominator();
620 rText
= OUString::number(nValue
.GetNumerator());
624 rText
= rText
+ "/" + OUString::number(nDiv
);
632 if(ePresentation
== SfxItemPresentation::Complete
)
636 SdrItemPool::TakeItemName(Which(), aStr
);
637 rText
= aStr
+ " " + rText
;
640 else if(ePresentation
== SfxItemPresentation::Nameless
)
646 SfxPoolItem
* SdrFractionItem::Clone(SfxItemPool
* /*pPool*/) const
648 return new SdrFractionItem(Which(),GetValue());
655 bool SdrScaleItem::GetPresentation(
656 SfxItemPresentation ePresentation
, MapUnit
/*eCoreMetric*/,
657 MapUnit
/*ePresentationMetric*/, OUString
&rText
, const IntlWrapper
&) const
659 if(GetValue().IsValid())
661 sal_Int32 nDiv
= GetValue().GetDenominator();
663 rText
= OUString::number(GetValue().GetNumerator()) + ":" + OUString::number(nDiv
);
670 if(ePresentation
== SfxItemPresentation::Complete
)
674 SdrItemPool::TakeItemName(Which(), aStr
);
675 rText
= aStr
+ " " + rText
;
681 SfxPoolItem
* SdrScaleItem::Clone(SfxItemPool
* /*pPool*/) const
683 return new SdrScaleItem(Which(),GetValue());
690 SfxPoolItem
* SdrOnOffItem::Clone(SfxItemPool
* /*pPool*/) const
692 return new SdrOnOffItem(Which(),GetValue());
695 OUString
SdrOnOffItem::GetValueTextByVal(bool bVal
) const
698 return ImpGetResStr(STR_ItemValON
);
699 return ImpGetResStr(STR_ItemValOFF
);
702 bool SdrOnOffItem::GetPresentation(SfxItemPresentation ePres
,
703 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
705 rText
=GetValueTextByVal(GetValue());
706 if (ePres
==SfxItemPresentation::Complete
) {
709 SdrItemPool::TakeItemName(Which(), aStr
);
710 rText
= aStr
+ " " + rText
;
716 SfxPoolItem
* SdrYesNoItem::Clone(SfxItemPool
* /*pPool*/) const
718 return new SdrYesNoItem(Which(),GetValue());
721 OUString
SdrYesNoItem::GetValueTextByVal(bool bVal
) const
724 return ImpGetResStr(STR_ItemValYES
);
725 return ImpGetResStr(STR_ItemValNO
);
728 bool SdrYesNoItem::GetPresentation(SfxItemPresentation ePres
,
729 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
731 rText
=GetValueTextByVal(GetValue());
732 if (ePres
==SfxItemPresentation::Complete
) {
735 SdrItemPool::TakeItemName(Which(), aStr
);
736 rText
= aStr
+ " " + rText
;
742 // class SdrPercentItem
745 SfxPoolItem
* SdrPercentItem::Clone(SfxItemPool
* /*pPool*/) const
747 return new SdrPercentItem(Which(),GetValue());
750 bool SdrPercentItem::GetPresentation(
751 SfxItemPresentation ePres
, MapUnit
/*eCoreMetric*/,
752 MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
754 rText
= unicode::formatPercent(GetValue(),
755 Application::GetSettings().GetUILanguageTag());
757 if(ePres
== SfxItemPresentation::Complete
)
761 SdrItemPool::TakeItemName(Which(), aStr
);
762 rText
= aStr
+ " " + rText
;
769 // class SdrAngleItem
772 SfxPoolItem
* SdrAngleItem::Clone(SfxItemPool
* /*pPool*/) const
774 return new SdrAngleItem(Which(),GetValue());
777 bool SdrAngleItem::GetPresentation(
778 SfxItemPresentation ePres
, MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/,
779 OUString
& rText
, const IntlWrapper
& rIntlWrapper
) const
781 sal_Int32
nValue(GetValue());
782 bool bNeg(nValue
< 0);
787 OUStringBuffer aText
= OUString::number(nValue
);
791 sal_Unicode
aUnicodeNull('0');
794 if(LocaleDataWrapper::isNumLeadingZero())
797 while(aText
.getLength() < nCount
)
798 aText
.insert(0, aUnicodeNull
);
800 sal_Int32 nLen
= aText
.getLength();
801 bool bNull1(aText
[nLen
-1] == aUnicodeNull
);
802 bool bNull2(bNull1
&& aText
[nLen
-2] == aUnicodeNull
);
806 // no decimal place(s)
807 sal_Int32 idx
= nLen
-2;
808 aText
.remove(idx
, aText
.getLength()-idx
);
813 rIntlWrapper
.getLocaleData()->getNumDecimalSep()[0];
814 aText
.insert(nLen
-2, cDec
);
817 aText
.remove(nLen
, aText
.getLength()-nLen
);
821 aText
.insert(0, '-');
824 aText
.insert(aText
.getLength(), sal_Unicode(DEGREE_CHAR
));
826 if(ePres
== SfxItemPresentation::Complete
)
830 SdrItemPool::TakeItemName(Which(), aStr
);
831 aText
.insert(0, ' ');
832 aText
.insert(0, aStr
);
835 rText
= aText
.makeStringAndClear();
840 // class SdrMetricItem
843 SfxPoolItem
* SdrMetricItem::Clone(SfxItemPool
* /*pPool*/) const
845 return new SdrMetricItem(Which(),GetValue());
848 bool SdrMetricItem::HasMetrics() const
853 void SdrMetricItem::ScaleMetrics(long nMul
, long nDiv
)
856 BigInt
aVal(GetValue());
858 aVal
+=nDiv
/2; // to round accurately
860 SetValue(long(aVal
));
864 bool SdrMetricItem::GetPresentation(SfxItemPresentation ePres
,
865 MapUnit eCoreMetric
, MapUnit ePresMetric
, OUString
& rText
, const IntlWrapper
&) const
867 long nValue
=GetValue();
868 SdrFormatter
aFmt(eCoreMetric
,ePresMetric
);
869 aFmt
.TakeStr(nValue
,rText
);
871 SdrFormatter::TakeUnitStr(ePresMetric
,aStr
);
873 if (ePres
==SfxItemPresentation::Complete
) {
876 SdrItemPool::TakeItemName(Which(), aStr2
);
877 rText
= aStr2
+ " " + rText
;
883 // items of the legend object
886 SfxPoolItem
* SdrCaptionTypeItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrCaptionTypeItem(*this); }
888 sal_uInt16
SdrCaptionTypeItem::GetValueCount() const { return 4; }
890 OUString
SdrCaptionTypeItem::GetValueTextByPos(sal_uInt16 nPos
) const
892 return ImpGetResStr(STR_ItemValCAPTIONTYPE1
+nPos
);
895 bool SdrCaptionTypeItem::GetPresentation(SfxItemPresentation ePres
,
896 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
898 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
899 if (ePres
==SfxItemPresentation::Complete
) {
902 SdrItemPool::TakeItemName(Which(), aStr
);
903 rText
= aStr
+ " " + rText
;
909 SfxPoolItem
* SdrCaptionEscDirItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrCaptionEscDirItem(*this); }
911 sal_uInt16
SdrCaptionEscDirItem::GetValueCount() const { return 3; }
913 OUString
SdrCaptionEscDirItem::GetValueTextByPos(sal_uInt16 nPos
) const
915 return ImpGetResStr(STR_ItemValCAPTIONESCHORI
+nPos
);
918 bool SdrCaptionEscDirItem::GetPresentation(SfxItemPresentation ePres
,
919 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
921 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
922 if (ePres
==SfxItemPresentation::Complete
) {
925 SdrItemPool::TakeItemName(Which(), aStr
);
926 rText
= aStr
+ " " + rText
;
937 SfxPoolItem
* SdrTextFitToSizeTypeItem::CreateDefault() { return new SdrTextFitToSizeTypeItem
; }
939 SfxPoolItem
* SdrTextFitToSizeTypeItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrTextFitToSizeTypeItem(*this); }
941 sal_uInt16
SdrTextFitToSizeTypeItem::GetValueCount() const { return 4; }
943 OUString
SdrTextFitToSizeTypeItem::GetValueTextByPos(sal_uInt16 nPos
) const
945 return ImpGetResStr(STR_ItemValFITTOSIZENONE
+nPos
);
948 bool SdrTextFitToSizeTypeItem::GetPresentation(SfxItemPresentation ePres
,
949 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
951 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
952 if (ePres
==SfxItemPresentation::Complete
) {
955 SdrItemPool::TakeItemName(Which(), aStr
);
956 rText
= aStr
+ " " + rText
;
961 bool SdrTextFitToSizeTypeItem::HasBoolValue() const { return true; }
963 bool SdrTextFitToSizeTypeItem::GetBoolValue() const { return GetValue() != drawing::TextFitToSizeType_NONE
; }
965 void SdrTextFitToSizeTypeItem::SetBoolValue(bool bVal
)
967 SetValue(bVal
? drawing::TextFitToSizeType_PROPORTIONAL
: drawing::TextFitToSizeType_NONE
);
970 bool SdrTextFitToSizeTypeItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
972 drawing::TextFitToSizeType eFS
= (drawing::TextFitToSizeType
)GetValue();
978 bool SdrTextFitToSizeTypeItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
980 drawing::TextFitToSizeType eFS
;
984 if(!(rVal
>>= nEnum
))
987 eFS
= (drawing::TextFitToSizeType
) nEnum
;
996 SfxPoolItem
* SdrTextVertAdjustItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrTextVertAdjustItem(*this); }
998 sal_uInt16
SdrTextVertAdjustItem::GetValueCount() const { return 5; }
1000 OUString
SdrTextVertAdjustItem::GetValueTextByPos(sal_uInt16 nPos
) const
1002 return ImpGetResStr(STR_ItemValTEXTVADJTOP
+nPos
);
1005 bool SdrTextVertAdjustItem::GetPresentation(SfxItemPresentation ePres
,
1006 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
1008 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
1009 if (ePres
==SfxItemPresentation::Complete
) {
1012 SdrItemPool::TakeItemName(Which(), aStr
);
1013 rText
= aStr
+ " " + rText
;
1018 bool SdrTextVertAdjustItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1020 rVal
<<= (drawing::TextVerticalAdjust
)GetValue();
1024 bool SdrTextVertAdjustItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1026 drawing::TextVerticalAdjust eAdj
;
1027 if(!(rVal
>>= eAdj
))
1029 sal_Int32 nEnum
= 0;
1030 if(!(rVal
>>= nEnum
))
1033 eAdj
= (drawing::TextVerticalAdjust
)nEnum
;
1036 SetValue( (SdrTextVertAdjust
)eAdj
);
1041 void SdrTextVertAdjustItem::dumpAsXml(struct _xmlTextWriter
* pWriter
) const
1043 xmlTextWriterStartElement(pWriter
, BAD_CAST("SdrTextVertAdjustItem"));
1044 xmlTextWriterWriteAttribute(pWriter
, BAD_CAST("whichId"), BAD_CAST(OString::number(Which()).getStr()));
1045 xmlTextWriterWriteAttribute(pWriter
, BAD_CAST("value"), BAD_CAST(OString::number(GetValue()).getStr()));
1046 xmlTextWriterEndElement(pWriter
);
1049 SfxPoolItem
* SdrTextHorzAdjustItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrTextHorzAdjustItem(*this); }
1051 sal_uInt16
SdrTextHorzAdjustItem::GetValueCount() const { return 5; }
1053 OUString
SdrTextHorzAdjustItem::GetValueTextByPos(sal_uInt16 nPos
) const
1055 return ImpGetResStr(STR_ItemValTEXTHADJLEFT
+nPos
);
1058 bool SdrTextHorzAdjustItem::GetPresentation(SfxItemPresentation ePres
,
1059 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
1061 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
1062 if (ePres
==SfxItemPresentation::Complete
) {
1065 SdrItemPool::TakeItemName(Which(), aStr
);
1066 rText
= aStr
+ " " + rText
;
1071 bool SdrTextHorzAdjustItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1073 rVal
<<= (drawing::TextHorizontalAdjust
)GetValue();
1077 bool SdrTextHorzAdjustItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1079 drawing::TextHorizontalAdjust eAdj
;
1080 if(!(rVal
>>= eAdj
))
1082 sal_Int32 nEnum
= 0;
1083 if(!(rVal
>>= nEnum
))
1086 eAdj
= (drawing::TextHorizontalAdjust
)nEnum
;
1089 SetValue( (SdrTextHorzAdjust
)eAdj
);
1095 SfxPoolItem
* SdrTextAniKindItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrTextAniKindItem(*this); }
1097 sal_uInt16
SdrTextAniKindItem::GetValueCount() const { return 5; }
1099 OUString
SdrTextAniKindItem::GetValueTextByPos(sal_uInt16 nPos
) const
1101 return ImpGetResStr(STR_ItemValTEXTANI_NONE
+nPos
);
1104 bool SdrTextAniKindItem::GetPresentation(SfxItemPresentation ePres
,
1105 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
1107 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
1108 if (ePres
==SfxItemPresentation::Complete
) {
1111 SdrItemPool::TakeItemName(Which(), aStr
);
1112 rText
= aStr
+ " " + rText
;
1117 bool SdrTextAniKindItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1119 rVal
<<= (drawing::TextAnimationKind
)GetValue();
1123 bool SdrTextAniKindItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1125 drawing::TextAnimationKind eKind
;
1126 if(!(rVal
>>= eKind
))
1128 sal_Int32 nEnum
= 0;
1129 if(!(rVal
>>= nEnum
))
1131 eKind
= (drawing::TextAnimationKind
)nEnum
;
1134 SetValue( (SdrTextAniKind
)eKind
);
1140 SfxPoolItem
* SdrTextAniDirectionItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrTextAniDirectionItem(*this); }
1142 sal_uInt16
SdrTextAniDirectionItem::GetValueCount() const { return 4; }
1144 OUString
SdrTextAniDirectionItem::GetValueTextByPos(sal_uInt16 nPos
) const
1146 return ImpGetResStr(STR_ItemValTEXTANI_LEFT
+nPos
);
1149 bool SdrTextAniDirectionItem::GetPresentation(SfxItemPresentation ePres
,
1150 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
1152 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
1153 if (ePres
==SfxItemPresentation::Complete
) {
1156 SdrItemPool::TakeItemName(Which(), aStr
);
1157 rText
= aStr
+ " " + rText
;
1162 bool SdrTextAniDirectionItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1164 rVal
<<= (drawing::TextAnimationDirection
)GetValue();
1168 bool SdrTextAniDirectionItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1170 drawing::TextAnimationDirection eDir
;
1171 if(!(rVal
>>= eDir
))
1173 sal_Int32 nEnum
= 0;
1174 if(!(rVal
>>= nEnum
))
1177 eDir
= (drawing::TextAnimationDirection
)nEnum
;
1180 SetValue( (SdrTextAniDirection
)eDir
);
1186 SfxPoolItem
* SdrTextAniDelayItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrTextAniDelayItem(*this); }
1188 bool SdrTextAniDelayItem::GetPresentation(
1189 SfxItemPresentation ePres
, MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/,
1190 OUString
& rText
, const IntlWrapper
&) const
1192 rText
= OUString::number(GetValue()) + "ms";
1194 if(ePres
== SfxItemPresentation::Complete
)
1198 SdrItemPool::TakeItemName(Which(), aStr
);
1199 rText
= aStr
+ " " + rText
;
1206 SfxPoolItem
* SdrTextAniAmountItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrTextAniAmountItem(*this); }
1208 bool SdrTextAniAmountItem::HasMetrics() const
1210 return GetValue()>0;
1213 void SdrTextAniAmountItem::ScaleMetrics(long nMul
, long nDiv
)
1216 BigInt
aVal(GetValue());
1218 aVal
+=nDiv
/2; // to round accurately
1220 SetValue(short(aVal
));
1224 bool SdrTextAniAmountItem::GetPresentation(
1225 SfxItemPresentation ePres
, MapUnit eCoreMetric
, MapUnit ePresMetric
,
1226 OUString
& rText
, const IntlWrapper
&) const
1228 sal_Int32
nValue(GetValue());
1235 rText
= OUString::number(-nValue
) + "pixel";
1239 SdrFormatter
aFmt(eCoreMetric
, ePresMetric
);
1242 aFmt
.TakeStr(nValue
, rText
);
1243 SdrFormatter::TakeUnitStr(ePresMetric
, aStr
);
1247 if(ePres
== SfxItemPresentation::Complete
)
1251 SdrItemPool::TakeItemName(Which(), aStr
);
1252 rText
= aStr
+ " " + rText
;
1259 SdrTextFixedCellHeightItem::SdrTextFixedCellHeightItem( bool bUseFixedCellHeight
)
1260 : SfxBoolItem( SDRATTR_TEXT_USEFIXEDCELLHEIGHT
, bUseFixedCellHeight
)
1263 bool SdrTextFixedCellHeightItem::GetPresentation( SfxItemPresentation ePres
,
1264 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresentationMetric*/,
1265 OUString
&rText
, const IntlWrapper
& ) const
1267 rText
= GetValueTextByVal( GetValue() );
1268 if (ePres
==SfxItemPresentation::Complete
)
1271 SdrItemPool::TakeItemName(Which(), aStr
);
1272 rText
= aStr
+ " " + rText
;
1276 SfxPoolItem
* SdrTextFixedCellHeightItem::Clone( SfxItemPool
* /*pPool*/) const
1278 return new SdrTextFixedCellHeightItem( GetValue() );
1280 sal_uInt16
SdrTextFixedCellHeightItem::GetVersion( sal_uInt16
/*nFileFormatVersion*/) const
1284 bool SdrTextFixedCellHeightItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1286 bool bValue
= GetValue();
1290 bool SdrTextFixedCellHeightItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1293 if( !( rVal
>>= bValue
) )
1301 SfxPoolItem
* SdrEdgeKindItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrEdgeKindItem(*this); }
1303 sal_uInt16
SdrEdgeKindItem::GetValueCount() const { return 4; }
1305 OUString
SdrEdgeKindItem::GetValueTextByPos(sal_uInt16 nPos
) const
1307 return ImpGetResStr(STR_ItemValEDGE_ORTHOLINES
+nPos
);
1310 bool SdrEdgeKindItem::GetPresentation(SfxItemPresentation ePres
,
1311 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
1313 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
1314 if (ePres
==SfxItemPresentation::Complete
) {
1317 SdrItemPool::TakeItemName(Which(), aStr
);
1318 rText
= aStr
+ " " + rText
;
1323 bool SdrEdgeKindItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1325 drawing::ConnectorType eCT
= drawing::ConnectorType_STANDARD
;
1327 switch( GetValue() )
1329 case SdrEdgeKind::OrthoLines
: eCT
= drawing::ConnectorType_STANDARD
; break;
1330 case SdrEdgeKind::ThreeLines
: eCT
= drawing::ConnectorType_LINES
; break;
1331 case SdrEdgeKind::OneLine
: eCT
= drawing::ConnectorType_LINE
; break;
1332 case SdrEdgeKind::Bezier
: eCT
= drawing::ConnectorType_CURVE
; break;
1333 case SdrEdgeKind::Arc
: eCT
= drawing::ConnectorType_CURVE
; break;
1335 OSL_FAIL( "SdrEdgeKindItem::QueryValue : unknown enum" );
1343 bool SdrEdgeKindItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1345 drawing::ConnectorType eCT
;
1348 sal_Int32 nEnum
= 0;
1349 if(!(rVal
>>= nEnum
))
1352 eCT
= (drawing::ConnectorType
)nEnum
;
1355 SdrEdgeKind eEK
= SdrEdgeKind::OrthoLines
;
1358 case drawing::ConnectorType_STANDARD
: eEK
= SdrEdgeKind::OrthoLines
; break;
1359 case drawing::ConnectorType_CURVE
: eEK
= SdrEdgeKind::Bezier
; break;
1360 case drawing::ConnectorType_LINE
: eEK
= SdrEdgeKind::OneLine
; break;
1361 case drawing::ConnectorType_LINES
: eEK
= SdrEdgeKind::ThreeLines
; break;
1363 OSL_FAIL( "SdrEdgeKindItem::PuValue : unknown enum" );
1370 bool SdrEdgeNode1HorzDistItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1372 rVal
<<= GetValue();
1376 bool SdrEdgeNode1HorzDistItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1378 sal_Int32 nValue
= 0;
1379 if(!(rVal
>>= nValue
))
1386 SfxPoolItem
* SdrEdgeNode1HorzDistItem::Clone(SfxItemPool
* /*pPool*/) const
1388 return new SdrEdgeNode1HorzDistItem(*this);
1391 bool SdrEdgeNode1VertDistItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1393 rVal
<<= GetValue();
1397 bool SdrEdgeNode1VertDistItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1399 sal_Int32 nValue
= 0;
1400 if(!(rVal
>>= nValue
))
1407 SfxPoolItem
* SdrEdgeNode1VertDistItem::Clone(SfxItemPool
* /*pPool*/) const
1409 return new SdrEdgeNode1VertDistItem(*this);
1412 bool SdrEdgeNode2HorzDistItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1414 rVal
<<= GetValue();
1418 bool SdrEdgeNode2HorzDistItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1420 sal_Int32 nValue
= 0;
1421 if(!(rVal
>>= nValue
))
1428 SfxPoolItem
* SdrEdgeNode2HorzDistItem::Clone(SfxItemPool
* /*pPool*/) const
1430 return new SdrEdgeNode2HorzDistItem(*this);
1433 bool SdrEdgeNode2VertDistItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1435 rVal
<<= GetValue();
1439 bool SdrEdgeNode2VertDistItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1441 sal_Int32 nValue
= 0;
1442 if(!(rVal
>>= nValue
))
1449 SfxPoolItem
* SdrEdgeNode2VertDistItem::Clone(SfxItemPool
* /*pPool*/) const
1451 return new SdrEdgeNode2VertDistItem(*this);
1454 SfxPoolItem
* SdrEdgeNode1GlueDistItem::Clone(SfxItemPool
* /*pPool*/) const
1456 return new SdrEdgeNode1GlueDistItem(*this);
1459 SfxPoolItem
* SdrEdgeNode2GlueDistItem::Clone(SfxItemPool
* /*pPool*/) const
1461 return new SdrEdgeNode2GlueDistItem(*this);
1464 SfxPoolItem
* SdrMeasureKindItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrMeasureKindItem(*this); }
1466 sal_uInt16
SdrMeasureKindItem::GetValueCount() const { return 2; }
1468 OUString
SdrMeasureKindItem::GetValueTextByPos(sal_uInt16 nPos
) const
1470 return ImpGetResStr(STR_ItemValMEASURE_STD
+nPos
);
1473 bool SdrMeasureKindItem::GetPresentation(SfxItemPresentation ePres
,
1474 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
1476 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
1477 if (ePres
==SfxItemPresentation::Complete
) {
1480 SdrItemPool::TakeItemName(Which(), aStr
);
1481 rText
= aStr
+ " " + rText
;
1486 bool SdrMeasureKindItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1488 rVal
<<= (drawing::MeasureKind
)GetValue();
1492 bool SdrMeasureKindItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1494 drawing::MeasureKind eKind
;
1495 if(!(rVal
>>= eKind
))
1497 sal_Int32 nEnum
= 0;
1498 if(!(rVal
>>= nEnum
))
1501 eKind
= (drawing::MeasureKind
)nEnum
;
1504 SetValue( (SdrMeasureKind
)eKind
);
1509 SfxPoolItem
* SdrMeasureTextHPosItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrMeasureTextHPosItem(*this); }
1511 sal_uInt16
SdrMeasureTextHPosItem::GetValueCount() const { return 4; }
1513 OUString
SdrMeasureTextHPosItem::GetValueTextByPos(sal_uInt16 nPos
) const
1515 return ImpGetResStr(STR_ItemValMEASURE_TEXTHAUTO
+nPos
);
1518 bool SdrMeasureTextHPosItem::GetPresentation(SfxItemPresentation ePres
,
1519 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
1521 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
1522 if (ePres
==SfxItemPresentation::Complete
) {
1525 SdrItemPool::TakeItemName(Which(), aStr
);
1526 rText
= aStr
+ " " + rText
;
1531 bool SdrMeasureTextHPosItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1533 rVal
<<= (drawing::MeasureTextHorzPos
)GetValue();
1537 bool SdrMeasureTextHPosItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1539 drawing::MeasureTextHorzPos ePos
;
1540 if(!(rVal
>>= ePos
))
1542 sal_Int32 nEnum
= 0;
1543 if(!(rVal
>>= nEnum
))
1546 ePos
= (drawing::MeasureTextHorzPos
)nEnum
;
1554 SfxPoolItem
* SdrMeasureTextVPosItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrMeasureTextVPosItem(*this); }
1556 sal_uInt16
SdrMeasureTextVPosItem::GetValueCount() const { return 5; }
1558 OUString
SdrMeasureTextVPosItem::GetValueTextByPos(sal_uInt16 nPos
) const
1560 return ImpGetResStr(STR_ItemValMEASURE_TEXTVAUTO
+nPos
);
1563 bool SdrMeasureTextVPosItem::GetPresentation(SfxItemPresentation ePres
,
1564 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
1566 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
1567 if (ePres
==SfxItemPresentation::Complete
) {
1570 SdrItemPool::TakeItemName(Which(), aStr
);
1571 rText
= aStr
+ " " + rText
;
1576 bool SdrMeasureTextVPosItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1578 rVal
<<= (drawing::MeasureTextVertPos
)GetValue();
1582 bool SdrMeasureTextVPosItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1584 drawing::MeasureTextVertPos ePos
;
1585 if(!(rVal
>>= ePos
))
1587 sal_Int32 nEnum
= 0;
1588 if(!(rVal
>>= nEnum
))
1591 ePos
= (drawing::MeasureTextVertPos
)nEnum
;
1598 SfxPoolItem
* SdrMeasureUnitItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrMeasureUnitItem(*this); }
1600 sal_uInt16
SdrMeasureUnitItem::GetValueCount() const { return 14; }
1602 OUString
SdrMeasureUnitItem::GetValueTextByPos(sal_uInt16 nPos
) const
1606 if((FieldUnit
)nPos
== FUNIT_NONE
)
1607 aRetval
= "default";
1609 SdrFormatter::TakeUnitStr((FieldUnit
)nPos
, aRetval
);
1614 bool SdrMeasureUnitItem::GetPresentation(SfxItemPresentation ePres
,
1615 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
1617 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
1618 if (ePres
==SfxItemPresentation::Complete
) {
1621 SdrItemPool::TakeItemName(Which(), aStr
);
1622 rText
= aStr
+ " " + rText
;
1627 bool SdrMeasureUnitItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1629 rVal
<<= (sal_Int32
)GetValue();
1633 bool SdrMeasureUnitItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1635 sal_Int32 nMeasure
= 0;
1636 if(!(rVal
>>= nMeasure
))
1639 SetValue( (FieldUnit
)nMeasure
);
1644 SfxPoolItem
* SdrCircKindItem::Clone(SfxItemPool
* /*pPool*/) const { return new SdrCircKindItem(*this); }
1646 sal_uInt16
SdrCircKindItem::GetValueCount() const { return 4; }
1648 OUString
SdrCircKindItem::GetValueTextByPos(sal_uInt16 nPos
) const
1650 return ImpGetResStr(STR_ItemValCIRC_FULL
+nPos
);
1653 bool SdrCircKindItem::GetPresentation(SfxItemPresentation ePres
,
1654 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/, OUString
& rText
, const IntlWrapper
&) const
1656 rText
=GetValueTextByPos(sal::static_int_cast
< sal_uInt16
>(GetValue()));
1657 if (ePres
==SfxItemPresentation::Complete
) {
1660 SdrItemPool::TakeItemName(Which(), aStr
);
1661 rText
= aStr
+ " " + rText
;
1666 bool SdrCircKindItem::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1668 rVal
<<= (drawing::CircleKind
)GetValue();
1672 bool SdrCircKindItem::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1674 drawing::CircleKind eKind
;
1675 if(!(rVal
>>= eKind
))
1677 sal_Int32 nEnum
= 0;
1678 if(!(rVal
>>= nEnum
))
1681 eKind
= (drawing::CircleKind
)nEnum
;
1684 SetValue( (SdrCircKind
)eKind
);
1689 // class SdrSignedPercentItem
1692 SfxPoolItem
* SdrSignedPercentItem::Clone(SfxItemPool
* /*pPool*/) const
1694 return new SdrSignedPercentItem( Which(), GetValue() );
1697 bool SdrSignedPercentItem::GetPresentation(
1698 SfxItemPresentation ePres
, MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/,
1699 OUString
& rText
, const IntlWrapper
&) const
1701 rText
= unicode::formatPercent(GetValue(),
1702 Application::GetSettings().GetUILanguageTag());
1704 if(ePres
== SfxItemPresentation::Complete
)
1708 SdrItemPool::TakeItemName(Which(), aStr
);
1709 rText
= aStr
+ " " + rText
;
1716 SfxPoolItem
* SdrGrafRedItem::Clone( SfxItemPool
* /*pPool*/) const
1718 return new SdrGrafRedItem( *this );
1722 SfxPoolItem
* SdrGrafGreenItem::Clone( SfxItemPool
* /*pPool*/) const
1724 return new SdrGrafGreenItem( *this );
1728 SfxPoolItem
* SdrGrafBlueItem::Clone( SfxItemPool
* /*pPool*/) const
1730 return new SdrGrafBlueItem( *this );
1734 SfxPoolItem
* SdrGrafLuminanceItem::Clone( SfxItemPool
* /*pPool*/) const
1736 return new SdrGrafLuminanceItem( *this );
1740 SfxPoolItem
* SdrGrafContrastItem::Clone( SfxItemPool
* /*pPool*/) const
1742 return new SdrGrafContrastItem( *this );
1746 SfxPoolItem
* SdrGrafGamma100Item::Clone( SfxItemPool
* /*pPool */) const
1748 return new SdrGrafGamma100Item( *this );
1751 bool SdrGrafGamma100Item::QueryValue( uno::Any
& rVal
, sal_uInt8
/*nMemberId*/) const
1753 rVal
<<= ((double)GetValue()) / 100.0;
1757 bool SdrGrafGamma100Item::PutValue( const uno::Any
& rVal
, sal_uInt8
/*nMemberId*/)
1760 if(!(rVal
>>= nGamma
))
1763 SetValue( (sal_uInt32
)(nGamma
* 100.0 ) );
1768 SfxPoolItem
* SdrGrafInvertItem::Clone( SfxItemPool
* /*pPool*/) const
1770 return new SdrGrafInvertItem( *this );
1774 SfxPoolItem
* SdrGrafTransparenceItem::Clone( SfxItemPool
* /*pPool*/) const
1776 return new SdrGrafTransparenceItem( *this );
1780 SfxPoolItem
* SdrGrafModeItem::Clone(SfxItemPool
* /*pPool*/) const
1782 return new SdrGrafModeItem( *this );
1785 sal_uInt16
SdrGrafModeItem::GetValueCount() const
1790 OUString
SdrGrafModeItem::GetValueTextByPos(sal_uInt16 nPos
) const
1803 aStr
= "Black/White";
1821 bool SdrGrafModeItem::GetPresentation( SfxItemPresentation ePres
,
1822 MapUnit
/*eCoreMetric*/, MapUnit
/*ePresMetric*/,
1823 OUString
& rText
, const IntlWrapper
&) const
1825 rText
= GetValueTextByPos( sal::static_int_cast
< sal_uInt16
>( GetValue() ) );
1827 if( ePres
== SfxItemPresentation::Complete
)
1831 SdrItemPool::TakeItemName( Which(), aStr
);
1832 rText
= aStr
+ " " + rText
;
1839 SfxPoolItem
* SdrGrafCropItem::Clone( SfxItemPool
* /*pPool*/) const
1841 return new SdrGrafCropItem( *this );
1844 sal_uInt16
SdrGrafCropItem::GetVersion( sal_uInt16
/*nFileVersion*/) const
1846 // GRFCROP_VERSION_MOVETOSVX is 1
1847 return GRFCROP_VERSION_MOVETOSVX
;
1849 SdrTextAniStartInsideItem::~SdrTextAniStartInsideItem()
1852 SfxPoolItem
* SdrTextAniStartInsideItem::Clone(SfxItemPool
* ) const
1854 return new SdrTextAniStartInsideItem(*this);
1856 SdrTextAniStopInsideItem::~SdrTextAniStopInsideItem()
1859 SfxPoolItem
* SdrTextAniStopInsideItem::Clone(SfxItemPool
* ) const
1861 return new SdrTextAniStopInsideItem(*this);
1863 SdrCaptionEscIsRelItem::~SdrCaptionEscIsRelItem()
1866 SfxPoolItem
* SdrCaptionEscIsRelItem::Clone(SfxItemPool
* ) const
1868 return new SdrCaptionEscIsRelItem(*this);
1870 SdrCaptionEscRelItem::~SdrCaptionEscRelItem()
1873 SfxPoolItem
* SdrCaptionEscRelItem::Clone(SfxItemPool
*) const
1875 return new SdrCaptionEscRelItem(*this);
1877 SdrCaptionFitLineLenItem::~SdrCaptionFitLineLenItem()
1880 SfxPoolItem
* SdrCaptionFitLineLenItem::Clone(SfxItemPool
* ) const
1882 return new SdrCaptionFitLineLenItem(*this);
1884 SdrCaptionLineLenItem::~SdrCaptionLineLenItem()
1887 SfxPoolItem
* SdrCaptionLineLenItem::Clone(SfxItemPool
*) const
1889 return new SdrCaptionLineLenItem(*this);
1891 SdrMeasureBelowRefEdgeItem::~SdrMeasureBelowRefEdgeItem()
1894 SfxPoolItem
* SdrMeasureBelowRefEdgeItem::Clone(SfxItemPool
* ) const
1896 return new SdrMeasureBelowRefEdgeItem(*this);
1898 SdrMeasureTextIsFixedAngleItem::~SdrMeasureTextIsFixedAngleItem()
1901 SfxPoolItem
* SdrMeasureTextIsFixedAngleItem::Clone(SfxItemPool
* ) const
1903 return new SdrMeasureTextIsFixedAngleItem(*this);
1905 SdrMeasureTextFixedAngleItem::~SdrMeasureTextFixedAngleItem()
1908 SfxPoolItem
* SdrMeasureTextFixedAngleItem::Clone(SfxItemPool
* ) const
1910 return new SdrMeasureTextFixedAngleItem(*this);
1912 SdrMeasureDecimalPlacesItem::~SdrMeasureDecimalPlacesItem()
1915 SfxPoolItem
* SdrMeasureDecimalPlacesItem::Clone(SfxItemPool
* ) const
1917 return new SdrMeasureDecimalPlacesItem(*this);
1919 SdrMeasureTextRota90Item::~SdrMeasureTextRota90Item()
1922 SfxPoolItem
* SdrMeasureTextRota90Item::Clone(SfxItemPool
* ) const
1924 return new SdrMeasureTextRota90Item(*this);
1926 SdrMeasureTextUpsideDownItem::~SdrMeasureTextUpsideDownItem()
1929 SfxPoolItem
* SdrMeasureTextUpsideDownItem::Clone(SfxItemPool
* ) const
1931 return new SdrMeasureTextUpsideDownItem(*this);
1934 SfxPoolItem
* SdrLayerIdItem::Clone(SfxItemPool
* /*pPool*/) const
1936 return new SdrLayerIdItem(*this);
1939 SfxPoolItem
* SdrLayerNameItem::Clone(SfxItemPool
* /*pPool*/) const
1941 return new SdrLayerNameItem(*this);
1944 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */