xref: /AOO41X/main/sw/inc/swatrset.hxx (revision cdf0e10c4e3984b49a9502b011690b615761d4a3)
1*cdf0e10cSrcweir /*************************************************************************
2*cdf0e10cSrcweir  *
3*cdf0e10cSrcweir  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*cdf0e10cSrcweir  *
5*cdf0e10cSrcweir  * Copyright 2000, 2010 Oracle and/or its affiliates.
6*cdf0e10cSrcweir  *
7*cdf0e10cSrcweir  * OpenOffice.org - a multi-platform office productivity suite
8*cdf0e10cSrcweir  *
9*cdf0e10cSrcweir  * This file is part of OpenOffice.org.
10*cdf0e10cSrcweir  *
11*cdf0e10cSrcweir  * OpenOffice.org is free software: you can redistribute it and/or modify
12*cdf0e10cSrcweir  * it under the terms of the GNU Lesser General Public License version 3
13*cdf0e10cSrcweir  * only, as published by the Free Software Foundation.
14*cdf0e10cSrcweir  *
15*cdf0e10cSrcweir  * OpenOffice.org is distributed in the hope that it will be useful,
16*cdf0e10cSrcweir  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17*cdf0e10cSrcweir  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18*cdf0e10cSrcweir  * GNU Lesser General Public License version 3 for more details
19*cdf0e10cSrcweir  * (a copy is included in the LICENSE file that accompanied this code).
20*cdf0e10cSrcweir  *
21*cdf0e10cSrcweir  * You should have received a copy of the GNU Lesser General Public License
22*cdf0e10cSrcweir  * version 3 along with OpenOffice.org.  If not, see
23*cdf0e10cSrcweir  * <http://www.openoffice.org/license.html>
24*cdf0e10cSrcweir  * for a copy of the LGPLv3 License.
25*cdf0e10cSrcweir  *
26*cdf0e10cSrcweir  ************************************************************************/
27*cdf0e10cSrcweir #ifndef _SWATRSET_HXX
28*cdf0e10cSrcweir #define _SWATRSET_HXX
29*cdf0e10cSrcweir #include <tools/solar.h>
30*cdf0e10cSrcweir #include <tools/mempool.hxx>
31*cdf0e10cSrcweir #include <svl/itemset.hxx>
32*cdf0e10cSrcweir #include <svl/itempool.hxx>
33*cdf0e10cSrcweir #include <swdllapi.h>
34*cdf0e10cSrcweir 
35*cdf0e10cSrcweir class SwModify;
36*cdf0e10cSrcweir class SwDoc;
37*cdf0e10cSrcweir class OutputDevice;
38*cdf0e10cSrcweir class IDocumentSettingAccess;
39*cdf0e10cSrcweir class SfxBoolItem;
40*cdf0e10cSrcweir class SvxPostureItem;
41*cdf0e10cSrcweir class SvxWeightItem;
42*cdf0e10cSrcweir class SvxShadowedItem;
43*cdf0e10cSrcweir class SvxAutoKernItem;
44*cdf0e10cSrcweir class SvxWordLineModeItem;
45*cdf0e10cSrcweir class SvxContourItem;
46*cdf0e10cSrcweir class SvxKerningItem;
47*cdf0e10cSrcweir class SvxUnderlineItem;
48*cdf0e10cSrcweir class SvxOverlineItem;
49*cdf0e10cSrcweir class SvxCrossedOutItem;
50*cdf0e10cSrcweir class SvxFontHeightItem;
51*cdf0e10cSrcweir class SvxPropSizeItem;
52*cdf0e10cSrcweir class SvxFontItem;
53*cdf0e10cSrcweir class SvxColorItem;
54*cdf0e10cSrcweir class SvxCharSetColorItem;
55*cdf0e10cSrcweir class SvxLanguageItem;
56*cdf0e10cSrcweir class SvxEscapementItem;
57*cdf0e10cSrcweir class SvxCaseMapItem;
58*cdf0e10cSrcweir class SvxNoHyphenItem;
59*cdf0e10cSrcweir class SvxBlinkItem;
60*cdf0e10cSrcweir class SvxEmphasisMarkItem;
61*cdf0e10cSrcweir class SvxTwoLinesItem;
62*cdf0e10cSrcweir class SvxCharScaleWidthItem;
63*cdf0e10cSrcweir class SvxCharRotateItem;
64*cdf0e10cSrcweir class SvxCharReliefItem;
65*cdf0e10cSrcweir class SvxCharHiddenItem;
66*cdf0e10cSrcweir 
67*cdf0e10cSrcweir // Frame-Attribute
68*cdf0e10cSrcweir class SwFmtFillOrder;
69*cdf0e10cSrcweir class SwFmtFrmSize;
70*cdf0e10cSrcweir class SvxPaperBinItem;
71*cdf0e10cSrcweir class SvxLRSpaceItem;
72*cdf0e10cSrcweir class SvxULSpaceItem;
73*cdf0e10cSrcweir class SwFmtCntnt;
74*cdf0e10cSrcweir class SwFmtHeader;
75*cdf0e10cSrcweir class SwFmtFooter;
76*cdf0e10cSrcweir class SvxPrintItem;
77*cdf0e10cSrcweir class SvxOpaqueItem;
78*cdf0e10cSrcweir class SvxProtectItem;
79*cdf0e10cSrcweir class SwFmtSurround;
80*cdf0e10cSrcweir class SwFmtVertOrient;
81*cdf0e10cSrcweir class SwFmtHoriOrient;
82*cdf0e10cSrcweir class SwFmtAnchor;
83*cdf0e10cSrcweir class SvxBoxItem;
84*cdf0e10cSrcweir class SvxBrushItem;
85*cdf0e10cSrcweir class SvxShadowItem;
86*cdf0e10cSrcweir class SwFmtPageDesc;
87*cdf0e10cSrcweir class SvxFmtBreakItem;
88*cdf0e10cSrcweir class SwFmtCol;
89*cdf0e10cSrcweir class SvxMacroItem;
90*cdf0e10cSrcweir class SvxFmtKeepItem;
91*cdf0e10cSrcweir class SwFmtURL;
92*cdf0e10cSrcweir class SwFmtLineNumber;
93*cdf0e10cSrcweir class SwFmtEditInReadonly;
94*cdf0e10cSrcweir class SwFmtLayoutSplit;
95*cdf0e10cSrcweir class SwFmtRowSplit;
96*cdf0e10cSrcweir class SwFmtChain;
97*cdf0e10cSrcweir class SwFmtFtnAtTxtEnd;
98*cdf0e10cSrcweir class SwFmtEndAtTxtEnd;
99*cdf0e10cSrcweir class SwFmtNoBalancedColumns;
100*cdf0e10cSrcweir class SvxFrameDirectionItem;
101*cdf0e10cSrcweir class SwTextGridItem;
102*cdf0e10cSrcweir class SwHeaderAndFooterEatSpacingItem;
103*cdf0e10cSrcweir // OD 18.09.2003 #i18732#
104*cdf0e10cSrcweir class SwFmtFollowTextFlow;
105*cdf0e10cSrcweir // OD 2004-05-05 #i28701#
106*cdf0e10cSrcweir class SwFmtWrapInfluenceOnObjPos;
107*cdf0e10cSrcweir 
108*cdf0e10cSrcweir // Grafik-Attribute
109*cdf0e10cSrcweir class SwMirrorGrf;
110*cdf0e10cSrcweir class SwCropGrf;
111*cdf0e10cSrcweir class SwRotationGrf;
112*cdf0e10cSrcweir class SwLuminanceGrf;
113*cdf0e10cSrcweir class SwContrastGrf;
114*cdf0e10cSrcweir class SwChannelRGrf;
115*cdf0e10cSrcweir class SwChannelGGrf;
116*cdf0e10cSrcweir class SwChannelBGrf;
117*cdf0e10cSrcweir class SwGammaGrf;
118*cdf0e10cSrcweir class SwInvertGrf;
119*cdf0e10cSrcweir class SwTransparencyGrf;
120*cdf0e10cSrcweir class SwDrawModeGrf;
121*cdf0e10cSrcweir 
122*cdf0e10cSrcweir // Paragraph-Attribute
123*cdf0e10cSrcweir class SvxLineSpacingItem;
124*cdf0e10cSrcweir class SvxAdjustItem;
125*cdf0e10cSrcweir class SvxFmtSplitItem;
126*cdf0e10cSrcweir class SwRegisterItem;
127*cdf0e10cSrcweir class SwNumRuleItem;
128*cdf0e10cSrcweir class SvxWidowsItem;
129*cdf0e10cSrcweir class SvxOrphansItem;
130*cdf0e10cSrcweir class SvxTabStopItem;
131*cdf0e10cSrcweir class SvxHyphenZoneItem;
132*cdf0e10cSrcweir class SwFmtDrop;
133*cdf0e10cSrcweir class SvxScriptSpaceItem;
134*cdf0e10cSrcweir class SvxHangingPunctuationItem;
135*cdf0e10cSrcweir class SvxForbiddenRuleItem;
136*cdf0e10cSrcweir class SvxParaVertAlignItem;
137*cdf0e10cSrcweir class SvxParaGridItem;
138*cdf0e10cSrcweir class SwParaConnectBorderItem;
139*cdf0e10cSrcweir 
140*cdf0e10cSrcweir // TabellenBox-Attribute
141*cdf0e10cSrcweir class SwTblBoxNumFormat;
142*cdf0e10cSrcweir class SwTblBoxFormula;
143*cdf0e10cSrcweir class SwTblBoxValue;
144*cdf0e10cSrcweir 
145*cdf0e10cSrcweir class SwAttrPool : public SfxItemPool
146*cdf0e10cSrcweir {
147*cdf0e10cSrcweir 	friend void _InitCore();			// fuers anlegen/zerstoeren der
148*cdf0e10cSrcweir 	friend void _FinitCore();           // Versionsmaps
149*cdf0e10cSrcweir 	static sal_uInt16* pVersionMap1;
150*cdf0e10cSrcweir 	static sal_uInt16* pVersionMap2;
151*cdf0e10cSrcweir 	static sal_uInt16* pVersionMap3;
152*cdf0e10cSrcweir 	static sal_uInt16* pVersionMap4;
153*cdf0e10cSrcweir     // OD 2004-01-21 #i18732# - due to extension of attribute set a new version
154*cdf0e10cSrcweir     // map for binary filter is necessary (version map 5).
155*cdf0e10cSrcweir     static sal_uInt16* pVersionMap5;
156*cdf0e10cSrcweir     static sal_uInt16* pVersionMap6;
157*cdf0e10cSrcweir 
158*cdf0e10cSrcweir 	SwDoc* pDoc;
159*cdf0e10cSrcweir 
160*cdf0e10cSrcweir public:
161*cdf0e10cSrcweir 	SwAttrPool( SwDoc* pDoc );
162*cdf0e10cSrcweir protected:
163*cdf0e10cSrcweir 	virtual ~SwAttrPool();
164*cdf0e10cSrcweir public:
165*cdf0e10cSrcweir 
166*cdf0e10cSrcweir 		  SwDoc* GetDoc() 			{ return pDoc; }
167*cdf0e10cSrcweir 	const SwDoc* GetDoc() const		{ return pDoc; }
168*cdf0e10cSrcweir 
169*cdf0e10cSrcweir     static sal_uInt16* GetVersionMap1() { return pVersionMap1; }
170*cdf0e10cSrcweir     static sal_uInt16* GetVersionMap2() { return pVersionMap2; }
171*cdf0e10cSrcweir     static sal_uInt16* GetVersionMap3() { return pVersionMap3; }
172*cdf0e10cSrcweir     static sal_uInt16* GetVersionMap6() { return pVersionMap4; }
173*cdf0e10cSrcweir };
174*cdf0e10cSrcweir 
175*cdf0e10cSrcweir 
176*cdf0e10cSrcweir class SW_DLLPUBLIC SwAttrSet : public SfxItemSet
177*cdf0e10cSrcweir {
178*cdf0e10cSrcweir 	// Pointer fuers Modify-System
179*cdf0e10cSrcweir 	SwAttrSet *pOldSet, *pNewSet;
180*cdf0e10cSrcweir 
181*cdf0e10cSrcweir 	// Notification-Callback
182*cdf0e10cSrcweir 	virtual void Changed( const SfxPoolItem& rOld, const SfxPoolItem& rNew );
183*cdf0e10cSrcweir 
184*cdf0e10cSrcweir 	void PutChgd( const SfxPoolItem& rI ) { SfxItemSet::PutDirect( rI ); }
185*cdf0e10cSrcweir public:
186*cdf0e10cSrcweir 	SwAttrSet( SwAttrPool&, sal_uInt16 nWhich1, sal_uInt16 nWhich2 );
187*cdf0e10cSrcweir 	SwAttrSet( SwAttrPool&, const sal_uInt16* nWhichPairTable );
188*cdf0e10cSrcweir 	SwAttrSet( const SwAttrSet& );
189*cdf0e10cSrcweir 
190*cdf0e10cSrcweir     virtual SfxItemSet* Clone(sal_Bool bItems = sal_True, SfxItemPool *pToPool = 0) const;
191*cdf0e10cSrcweir 
192*cdf0e10cSrcweir 	int Put_BC( const SfxPoolItem& rAttr, SwAttrSet* pOld, SwAttrSet* pNew );
193*cdf0e10cSrcweir 	int Put_BC( const SfxItemSet& rSet, SwAttrSet* pOld, SwAttrSet* pNew );
194*cdf0e10cSrcweir 
195*cdf0e10cSrcweir 	// ein Item oder einen Bereich loeschen
196*cdf0e10cSrcweir 	sal_uInt16 ClearItem_BC( sal_uInt16 nWhich, SwAttrSet* pOld, SwAttrSet* pNew );
197*cdf0e10cSrcweir 	sal_uInt16 ClearItem_BC( sal_uInt16 nWhich1, sal_uInt16 nWhich2,
198*cdf0e10cSrcweir 						SwAttrSet* pOld = 0, SwAttrSet* pNew = 0 );
199*cdf0e10cSrcweir 
200*cdf0e10cSrcweir 	int Intersect_BC( const SfxItemSet& rSet, SwAttrSet* pOld, SwAttrSet* pNew );
201*cdf0e10cSrcweir 
202*cdf0e10cSrcweir 	void GetPresentation( SfxItemPresentation ePres,
203*cdf0e10cSrcweir 		SfxMapUnit eCoreMetric,	SfxMapUnit ePresMetric,	String &rText ) const;
204*cdf0e10cSrcweir 
205*cdf0e10cSrcweir 	SwAttrPool*	GetPool() const { return (SwAttrPool*)SfxItemSet::GetPool(); }
206*cdf0e10cSrcweir 
207*cdf0e10cSrcweir 	// kopiere die Attribute ggfs. ueber Dokumentgrenzen
208*cdf0e10cSrcweir 	void CopyToModify( SwModify& rMod ) const;
209*cdf0e10cSrcweir 
210*cdf0e10cSrcweir 	// ----------------------------------------------------------------
211*cdf0e10cSrcweir 	// Sonderbehandlung fuer einige Attribute
212*cdf0e10cSrcweir 	// Setze den Modify-Pointer (alten pDefinedIn) bei folgenden Attributen:
213*cdf0e10cSrcweir 	//	- SwFmtDropCaps
214*cdf0e10cSrcweir 	//	- SwFmtPageDesc
215*cdf0e10cSrcweir 	// (Wird beim Einfuegen in Formate/Nodes gerufen)
216*cdf0e10cSrcweir     // Second version is for the SwAttrSet handles of SwCntntNode.
217*cdf0e10cSrcweir     bool SetModifyAtAttr( const SwModify* pModify );
218*cdf0e10cSrcweir 
219*cdf0e10cSrcweir 	// Das Doc wird jetzt am SwAttrPool gesetzt. Dadurch hat man es immer
220*cdf0e10cSrcweir 	// im Zugriff.
221*cdf0e10cSrcweir 	const SwDoc *GetDoc() const { return GetPool()->GetDoc(); }
222*cdf0e10cSrcweir 		  SwDoc *GetDoc() 		{ return GetPool()->GetDoc(); }
223*cdf0e10cSrcweir 
224*cdf0e10cSrcweir     // GetMethoden: das Bool gibt an, ob nur im Set (sal_False) oder auch in
225*cdf0e10cSrcweir 	//				den Parents gesucht werden soll. Wird nichts gefunden,
226*cdf0e10cSrcweir 	//				wird das deflt. Attribut returnt.
227*cdf0e10cSrcweir 	// Charakter-Attribute	- impl. steht im charatr.hxx
228*cdf0e10cSrcweir 	// AMA 12.10.94: Umstellung von SwFmt... auf Svx...
229*cdf0e10cSrcweir     inline const SvxPostureItem           &GetPosture( sal_Bool = sal_True ) const;
230*cdf0e10cSrcweir     inline const SvxWeightItem          &GetWeight( sal_Bool = sal_True ) const;
231*cdf0e10cSrcweir     inline const SvxShadowedItem        &GetShadowed( sal_Bool = sal_True ) const;
232*cdf0e10cSrcweir     inline const SvxAutoKernItem        &GetAutoKern( sal_Bool = sal_True ) const;
233*cdf0e10cSrcweir     inline const SvxWordLineModeItem    &GetWordLineMode( sal_Bool = sal_True ) const;
234*cdf0e10cSrcweir     inline const SvxContourItem         &GetContour( sal_Bool = sal_True ) const;
235*cdf0e10cSrcweir     inline const SvxKerningItem         &GetKerning( sal_Bool = sal_True ) const;
236*cdf0e10cSrcweir     inline const SvxUnderlineItem       &GetUnderline( sal_Bool = sal_True ) const;
237*cdf0e10cSrcweir     inline const SvxOverlineItem        &GetOverline( sal_Bool = sal_True ) const;
238*cdf0e10cSrcweir     inline const SvxCrossedOutItem      &GetCrossedOut( sal_Bool = sal_True ) const;
239*cdf0e10cSrcweir     inline const SvxFontHeightItem        &GetSize( sal_Bool = sal_True ) const;
240*cdf0e10cSrcweir     inline const SvxPropSizeItem        &GetPropSize( sal_Bool = sal_True ) const;
241*cdf0e10cSrcweir     inline const SvxFontItem            &GetFont( sal_Bool = sal_True ) const;
242*cdf0e10cSrcweir     inline const SvxColorItem           &GetColor( sal_Bool = sal_True ) const;
243*cdf0e10cSrcweir     inline const SvxCharSetColorItem    &GetCharSetColor( sal_Bool = sal_True ) const;
244*cdf0e10cSrcweir     inline const SvxLanguageItem        &GetLanguage( sal_Bool = sal_True ) const;
245*cdf0e10cSrcweir     inline const SvxEscapementItem      &GetEscapement( sal_Bool = sal_True ) const;
246*cdf0e10cSrcweir     inline const SvxCaseMapItem         &GetCaseMap( sal_Bool = sal_True ) const;
247*cdf0e10cSrcweir     inline const SvxNoHyphenItem      &GetNoHyphenHere( sal_Bool = sal_True ) const;
248*cdf0e10cSrcweir     inline const SvxBlinkItem         &GetBlink( sal_Bool = sal_True ) const;
249*cdf0e10cSrcweir     inline const SvxBrushItem         &GetChrBackground( sal_Bool = sal_True ) const;
250*cdf0e10cSrcweir     inline const SvxFontItem          &GetCJKFont( sal_Bool = sal_True ) const;
251*cdf0e10cSrcweir     inline const SvxFontHeightItem    &GetCJKSize( sal_Bool = sal_True ) const;
252*cdf0e10cSrcweir     inline const SvxLanguageItem      &GetCJKLanguage( sal_Bool = sal_True ) const;
253*cdf0e10cSrcweir     inline const SvxPostureItem       &GetCJKPosture( sal_Bool = sal_True ) const;
254*cdf0e10cSrcweir     inline const SvxWeightItem        &GetCJKWeight( sal_Bool = sal_True ) const;
255*cdf0e10cSrcweir     inline const SvxFontItem          &GetCTLFont( sal_Bool = sal_True ) const;
256*cdf0e10cSrcweir     inline const SvxFontHeightItem    &GetCTLSize( sal_Bool = sal_True ) const;
257*cdf0e10cSrcweir     inline const SvxLanguageItem      &GetCTLLanguage( sal_Bool = sal_True ) const;
258*cdf0e10cSrcweir     inline const SvxPostureItem       &GetCTLPosture( sal_Bool = sal_True ) const;
259*cdf0e10cSrcweir     inline const SvxWeightItem        &GetCTLWeight( sal_Bool = sal_True ) const;
260*cdf0e10cSrcweir     inline const SfxBoolItem              &GetWritingDirection( sal_Bool = sal_True ) const;
261*cdf0e10cSrcweir     inline const SvxEmphasisMarkItem  &GetEmphasisMark( sal_Bool = sal_True ) const;
262*cdf0e10cSrcweir     inline const SvxTwoLinesItem      &Get2Lines( sal_Bool = sal_True ) const;
263*cdf0e10cSrcweir     inline const SvxCharScaleWidthItem    &GetCharScaleW( sal_Bool = sal_True ) const;
264*cdf0e10cSrcweir     inline const SvxCharRotateItem        &GetCharRotate( sal_Bool = sal_True ) const;
265*cdf0e10cSrcweir     inline const SvxCharReliefItem        &GetCharRelief( sal_Bool = sal_True ) const;
266*cdf0e10cSrcweir     inline const SvxCharHiddenItem      &GetCharHidden( sal_Bool = sal_True ) const;
267*cdf0e10cSrcweir 
268*cdf0e10cSrcweir 	// Frame-Attribute	- impl. steht im frmatr.hxx
269*cdf0e10cSrcweir     inline const SwFmtFillOrder       &GetFillOrder( sal_Bool = sal_True ) const;
270*cdf0e10cSrcweir     inline const SwFmtFrmSize             &GetFrmSize( sal_Bool = sal_True ) const;
271*cdf0e10cSrcweir     inline const SvxPaperBinItem      &GetPaperBin( sal_Bool = sal_True ) const;
272*cdf0e10cSrcweir     inline const SvxLRSpaceItem           &GetLRSpace( sal_Bool = sal_True ) const;
273*cdf0e10cSrcweir     inline const SvxULSpaceItem           &GetULSpace( sal_Bool = sal_True ) const;
274*cdf0e10cSrcweir     inline const SwFmtCntnt           &GetCntnt( sal_Bool = sal_True ) const;
275*cdf0e10cSrcweir     inline const SwFmtHeader          &GetHeader( sal_Bool = sal_True ) const;
276*cdf0e10cSrcweir     inline const SwFmtFooter          &GetFooter( sal_Bool = sal_True ) const;
277*cdf0e10cSrcweir     inline const SvxPrintItem             &GetPrint( sal_Bool = sal_True ) const;
278*cdf0e10cSrcweir     inline const SvxOpaqueItem            &GetOpaque( sal_Bool = sal_True ) const;
279*cdf0e10cSrcweir     inline const SvxProtectItem           &GetProtect( sal_Bool = sal_True ) const;
280*cdf0e10cSrcweir     inline const SwFmtSurround            &GetSurround( sal_Bool = sal_True ) const;
281*cdf0e10cSrcweir     inline const SwFmtVertOrient      &GetVertOrient( sal_Bool = sal_True ) const;
282*cdf0e10cSrcweir     inline const SwFmtHoriOrient      &GetHoriOrient( sal_Bool = sal_True ) const;
283*cdf0e10cSrcweir     inline const SwFmtAnchor          &GetAnchor( sal_Bool = sal_True ) const;
284*cdf0e10cSrcweir     inline const SvxBoxItem               &GetBox( sal_Bool = sal_True ) const;
285*cdf0e10cSrcweir     inline const SvxFmtKeepItem         &GetKeep( sal_Bool = sal_True ) const;
286*cdf0e10cSrcweir     inline const SvxBrushItem           &GetBackground( sal_Bool = sal_True ) const;
287*cdf0e10cSrcweir     inline const SvxShadowItem            &GetShadow( sal_Bool = sal_True ) const;
288*cdf0e10cSrcweir     inline const SwFmtPageDesc            &GetPageDesc( sal_Bool = sal_True ) const;
289*cdf0e10cSrcweir     inline const SvxFmtBreakItem      &GetBreak( sal_Bool = sal_True ) const;
290*cdf0e10cSrcweir     inline const SwFmtCol                 &GetCol( sal_Bool = sal_True ) const;
291*cdf0e10cSrcweir     inline const SvxMacroItem             &GetMacro( sal_Bool = sal_True ) const;
292*cdf0e10cSrcweir     inline const SwFmtURL             &GetURL( sal_Bool = sal_True ) const;
293*cdf0e10cSrcweir     inline const SwFmtEditInReadonly  &GetEditInReadonly( sal_Bool = sal_True ) const;
294*cdf0e10cSrcweir     inline const SwFmtLayoutSplit     &GetLayoutSplit( sal_Bool = sal_True ) const;
295*cdf0e10cSrcweir     inline const SwFmtRowSplit          &GetRowSplit( sal_Bool = sal_True ) const;
296*cdf0e10cSrcweir     inline const SwFmtChain             &GetChain( sal_Bool = sal_True ) const;
297*cdf0e10cSrcweir     inline const SwFmtLineNumber      &GetLineNumber( sal_Bool = sal_True ) const;
298*cdf0e10cSrcweir     inline const SwFmtFtnAtTxtEnd     &GetFtnAtTxtEnd( sal_Bool = sal_True ) const;
299*cdf0e10cSrcweir     inline const SwFmtEndAtTxtEnd     &GetEndAtTxtEnd( sal_Bool = sal_True ) const;
300*cdf0e10cSrcweir     inline const SwFmtNoBalancedColumns &GetBalancedColumns( sal_Bool = sal_True ) const;
301*cdf0e10cSrcweir     inline const SvxFrameDirectionItem    &GetFrmDir( sal_Bool = sal_True ) const;
302*cdf0e10cSrcweir     inline const SwTextGridItem         &GetTextGrid( sal_Bool = sal_True ) const;
303*cdf0e10cSrcweir     inline const SwHeaderAndFooterEatSpacingItem &GetHeaderAndFooterEatSpacing( sal_Bool = sal_True ) const;
304*cdf0e10cSrcweir     // OD 18.09.2003 #i18732#
305*cdf0e10cSrcweir     inline const SwFmtFollowTextFlow    &GetFollowTextFlow(sal_Bool = sal_True) const;
306*cdf0e10cSrcweir     // OD 2004-05-05 #i28701#
307*cdf0e10cSrcweir     inline const SwFmtWrapInfluenceOnObjPos& GetWrapInfluenceOnObjPos(sal_Bool = sal_True) const;
308*cdf0e10cSrcweir 
309*cdf0e10cSrcweir 	// Grafik-Attribute	- impl. steht im grfatr.hxx
310*cdf0e10cSrcweir     inline const SwMirrorGrf            &GetMirrorGrf( sal_Bool = sal_True ) const;
311*cdf0e10cSrcweir     inline const SwCropGrf            &GetCropGrf( sal_Bool = sal_True ) const;
312*cdf0e10cSrcweir     inline const SwRotationGrf            &GetRotationGrf(sal_Bool = sal_True ) const;
313*cdf0e10cSrcweir     inline const SwLuminanceGrf       &GetLuminanceGrf(sal_Bool = sal_True ) const;
314*cdf0e10cSrcweir     inline const SwContrastGrf            &GetContrastGrf(sal_Bool = sal_True ) const;
315*cdf0e10cSrcweir     inline const SwChannelRGrf            &GetChannelRGrf(sal_Bool = sal_True ) const;
316*cdf0e10cSrcweir     inline const SwChannelGGrf            &GetChannelGGrf(sal_Bool = sal_True ) const;
317*cdf0e10cSrcweir     inline const SwChannelBGrf            &GetChannelBGrf(sal_Bool = sal_True ) const;
318*cdf0e10cSrcweir     inline const SwGammaGrf           &GetGammaGrf(sal_Bool = sal_True ) const;
319*cdf0e10cSrcweir     inline const SwInvertGrf          &GetInvertGrf(sal_Bool = sal_True ) const;
320*cdf0e10cSrcweir     inline const SwTransparencyGrf        &GetTransparencyGrf(sal_Bool = sal_True ) const;
321*cdf0e10cSrcweir     inline const SwDrawModeGrf            &GetDrawModeGrf(sal_Bool = sal_True ) const;
322*cdf0e10cSrcweir 
323*cdf0e10cSrcweir 	// Paragraph-Attribute	- impl. steht im paratr.hxx
324*cdf0e10cSrcweir     inline const SvxLineSpacingItem       &GetLineSpacing( sal_Bool = sal_True ) const;
325*cdf0e10cSrcweir     inline const SvxAdjustItem            &GetAdjust( sal_Bool = sal_True ) const;
326*cdf0e10cSrcweir     inline const SvxFmtSplitItem      &GetSplit( sal_Bool = sal_True ) const;
327*cdf0e10cSrcweir     inline const SwRegisterItem           &GetRegister( sal_Bool = sal_True ) const;
328*cdf0e10cSrcweir     inline const SwNumRuleItem            &GetNumRule( sal_Bool = sal_True ) const;
329*cdf0e10cSrcweir     inline const SvxWidowsItem            &GetWidows( sal_Bool = sal_True ) const;
330*cdf0e10cSrcweir     inline const SvxOrphansItem           &GetOrphans( sal_Bool = sal_True ) const;
331*cdf0e10cSrcweir     inline const SvxTabStopItem           &GetTabStops( sal_Bool = sal_True ) const;
332*cdf0e10cSrcweir     inline const SvxHyphenZoneItem        &GetHyphenZone( sal_Bool = sal_True ) const;
333*cdf0e10cSrcweir     inline const SwFmtDrop                &GetDrop( sal_Bool = sal_True ) const;
334*cdf0e10cSrcweir     inline const SvxScriptSpaceItem       &GetScriptSpace(sal_Bool = sal_True) const;
335*cdf0e10cSrcweir     inline const SvxHangingPunctuationItem &GetHangingPunctuation(sal_Bool = sal_True) const;
336*cdf0e10cSrcweir     inline const SvxForbiddenRuleItem     &GetForbiddenRule(sal_Bool = sal_True) const;
337*cdf0e10cSrcweir     inline const SvxParaVertAlignItem &GetParaVertAlign(sal_Bool = sal_True) const;
338*cdf0e10cSrcweir     inline const SvxParaGridItem        &GetParaGrid(sal_Bool = sal_True) const;
339*cdf0e10cSrcweir     inline const SwParaConnectBorderItem &GetParaConnectBorder(sal_Bool = sal_True ) const;
340*cdf0e10cSrcweir 
341*cdf0e10cSrcweir 	// TabellenBox-Attribute	- impl. steht im cellatr.hxx
342*cdf0e10cSrcweir     inline  const SwTblBoxNumFormat       &GetTblBoxNumFmt( sal_Bool = sal_True ) const;
343*cdf0e10cSrcweir     inline  const SwTblBoxFormula     &GetTblBoxFormula( sal_Bool = sal_True ) const;
344*cdf0e10cSrcweir     inline  const SwTblBoxValue           &GetTblBoxValue( sal_Bool = sal_True ) const;
345*cdf0e10cSrcweir 
346*cdf0e10cSrcweir 	DECL_FIXEDMEMPOOL_NEWDEL(SwAttrSet)
347*cdf0e10cSrcweir };
348*cdf0e10cSrcweir 
349*cdf0e10cSrcweir //Helper for filters to find true lineheight of a font
350*cdf0e10cSrcweir SW_DLLPUBLIC long AttrSetToLineHeight( const IDocumentSettingAccess& rIDocumentSettingAccess,
351*cdf0e10cSrcweir                           const SwAttrSet &rSet,
352*cdf0e10cSrcweir                           const OutputDevice &rOut, sal_Int16 nScript);
353*cdf0e10cSrcweir #endif
354