1efeef26fSAndrew Rist /**************************************************************
2a585680aSDennis E. Hamilton *
3efeef26fSAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4efeef26fSAndrew Rist * or more contributor license agreements. See the NOTICE file
5efeef26fSAndrew Rist * distributed with this work for additional information
6efeef26fSAndrew Rist * regarding copyright ownership. The ASF licenses this file
7efeef26fSAndrew Rist * to you under the Apache License, Version 2.0 (the
8efeef26fSAndrew Rist * "License"); you may not use this file except in compliance
9efeef26fSAndrew Rist * with the License. You may obtain a copy of the License at
10a585680aSDennis E. Hamilton *
11efeef26fSAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0
12a585680aSDennis E. Hamilton *
13efeef26fSAndrew Rist * Unless required by applicable law or agreed to in writing,
14efeef26fSAndrew Rist * software distributed under the License is distributed on an
15efeef26fSAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16efeef26fSAndrew Rist * KIND, either express or implied. See the License for the
17efeef26fSAndrew Rist * specific language governing permissions and limitations
18efeef26fSAndrew Rist * under the License.
19a585680aSDennis E. Hamilton *
20efeef26fSAndrew Rist *************************************************************/
21efeef26fSAndrew Rist
22efeef26fSAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweir // MARKER(update_precomp.py): autogen include statement, do not remove
25cdf0e10cSrcweir #include "precompiled_sw.hxx"
26cdf0e10cSrcweir
27cdf0e10cSrcweir #include <hintids.hxx>
28cdf0e10cSrcweir #include <i18npool/mslangid.hxx>
29cdf0e10cSrcweir #include <unotools/localedatawrapper.hxx>
303f09c2ceSJürgen Schmidt #include <svx/xdef.hxx>
31cdf0e10cSrcweir #include <editeng/paperinf.hxx>
32cdf0e10cSrcweir #include <editeng/wghtitem.hxx>
33cdf0e10cSrcweir #include <editeng/fontitem.hxx>
34cdf0e10cSrcweir #include <editeng/fhgtitem.hxx>
35cdf0e10cSrcweir #include <editeng/tstpitem.hxx>
36cdf0e10cSrcweir #include <editeng/lrspitem.hxx>
37cdf0e10cSrcweir #include <editeng/ulspitem.hxx>
38cdf0e10cSrcweir #include <editeng/adjitem.hxx>
39cdf0e10cSrcweir #include <editeng/postitem.hxx>
40cdf0e10cSrcweir #include <editeng/keepitem.hxx>
41cdf0e10cSrcweir #include <editeng/opaqitem.hxx>
42cdf0e10cSrcweir #include <editeng/boxitem.hxx>
43cdf0e10cSrcweir #include <editeng/cmapitem.hxx>
44cdf0e10cSrcweir #include <editeng/udlnitem.hxx>
45cdf0e10cSrcweir #include <editeng/colritem.hxx>
46cdf0e10cSrcweir #include <editeng/protitem.hxx>
47cdf0e10cSrcweir #include <editeng/escpitem.hxx>
48cdf0e10cSrcweir #include <editeng/langitem.hxx>
49cdf0e10cSrcweir #include <editeng/charrotateitem.hxx>
50cdf0e10cSrcweir #include <editeng/frmdiritem.hxx>
51cdf0e10cSrcweir #include <editeng/emphitem.hxx>
52cdf0e10cSrcweir #include <editeng/scriptspaceitem.hxx>
53cdf0e10cSrcweir #include <viewopt.hxx>
54cdf0e10cSrcweir #include <doc.hxx>
55cdf0e10cSrcweir #include <IDocumentUndoRedo.hxx>
56cdf0e10cSrcweir #include <fmtanchr.hxx>
57cdf0e10cSrcweir #include <fmtornt.hxx>
58cdf0e10cSrcweir #include <fmtsrnd.hxx>
59cdf0e10cSrcweir #include <fmtfsize.hxx>
60cdf0e10cSrcweir #include <poolfmt.hxx>
61cdf0e10cSrcweir #include <paratr.hxx>
62cdf0e10cSrcweir #include <pagedesc.hxx>
63cdf0e10cSrcweir #include <frmtool.hxx>
64cdf0e10cSrcweir #include <charfmt.hxx>
65cdf0e10cSrcweir #include <docary.hxx>
66cdf0e10cSrcweir #include <fmtcol.hxx>
67cdf0e10cSrcweir #include <ndtxt.hxx>
68cdf0e10cSrcweir #include <fmtline.hxx>
69cdf0e10cSrcweir #include <poolfmt.hrc>
70cdf0e10cSrcweir #include <GetMetricVal.hxx>
71cdf0e10cSrcweir #include <numrule.hxx>
72cdf0e10cSrcweir
7356b35d86SArmin Le Grand //UUUU
7456b35d86SArmin Le Grand #include <svx/xfillit0.hxx>
75cdf0e10cSrcweir
76cdf0e10cSrcweir using namespace ::com::sun::star;
77cdf0e10cSrcweir
78cdf0e10cSrcweir const sal_uInt16 PT_3 = 3 * 20; // 3 pt
79cdf0e10cSrcweir const sal_uInt16 PT_6 = 6 * 20; // 6 pt
80cdf0e10cSrcweir const sal_uInt16 PT_7 = 7 * 20; // 6 pt
81cdf0e10cSrcweir const sal_uInt16 PT_8 = 8 * 20; // 8 pt
82cdf0e10cSrcweir const sal_uInt16 PT_9 = 9 * 20; // 9 pt
83cdf0e10cSrcweir const sal_uInt16 PT_10 = 10 * 20; // 10 pt
84cdf0e10cSrcweir const sal_uInt16 PT_11 = 11 * 20; // 11 pt
85cdf0e10cSrcweir const sal_uInt16 PT_12 = 12 * 20; // 12 pt
86cdf0e10cSrcweir const sal_uInt16 PT_14 = 14 * 20; // 14 pt
87cdf0e10cSrcweir const sal_uInt16 PT_16 = 16 * 20; // 16 pt
88cdf0e10cSrcweir const sal_uInt16 PT_18 = 18 * 20; // 18 pt
89cdf0e10cSrcweir const sal_uInt16 PT_22 = 22 * 20; // 22 pt
90cdf0e10cSrcweir const sal_uInt16 PT_24 = 24 * 20; // 22 pt
91cdf0e10cSrcweir
92cdf0e10cSrcweir
93cdf0e10cSrcweir //const sal_uInt16 HTML_PARSPACE = ((CM_05 * 7) / 10);
94cdf0e10cSrcweir #define HTML_PARSPACE GetMetricVal( CM_05 )
95cdf0e10cSrcweir
96cdf0e10cSrcweir static const sal_Char __FAR_DATA sKomma[] = ", ";
97cdf0e10cSrcweir
98cdf0e10cSrcweir static const sal_uInt16 aHeadlineSizes[ 2 * MAXLEVEL ] = {
99cdf0e10cSrcweir // PT_16, PT_14, PT_14, PT_12, PT_12, // normal
100cdf0e10cSrcweir //JP 10.12.96: jetzt soll alles prozentual sein:
101a585680aSDennis E. Hamilton 115, 100, 100, 85, 85,
102a585680aSDennis E. Hamilton 75, 75, 75, 75, 75, // normal
103cdf0e10cSrcweir // PT_22, PT_16, PT_12, PT_11, PT_9 // HTML-Mode
104a585680aSDennis E. Hamilton PT_24, PT_18, PT_14, PT_12, PT_10,
105a585680aSDennis E. Hamilton PT_7, PT_7, PT_7, PT_7, PT_7 // HTML-Mode
106cdf0e10cSrcweir };
107cdf0e10cSrcweir
lcl_GetRightMargin(SwDoc & rDoc)108cdf0e10cSrcweir long lcl_GetRightMargin( SwDoc& rDoc )
109cdf0e10cSrcweir {
110a585680aSDennis E. Hamilton // sorge dafuer, dass die Druckereinstellungen in die Standard-
111a585680aSDennis E. Hamilton // Seitenvorlage uebernommen wurden.
112cdf0e10cSrcweir const SwFrmFmt& rPgDscFmt =
113cdf0e10cSrcweir const_cast<const SwDoc *>(&rDoc)->GetPageDesc( 0 ).GetMaster();
114cdf0e10cSrcweir const SvxLRSpaceItem& rLR = rPgDscFmt.GetLRSpace();
115cdf0e10cSrcweir const long nLeft = rLR.GetLeft();
116cdf0e10cSrcweir const long nRight = rLR.GetRight();
117cdf0e10cSrcweir const long nWidth = rPgDscFmt.GetFrmSize().GetWidth();
118cdf0e10cSrcweir return nWidth - nLeft - nRight;
119cdf0e10cSrcweir }
120cdf0e10cSrcweir
SetAllScriptItem(SfxItemSet & rSet,const SfxPoolItem & rItem)121cdf0e10cSrcweir void SetAllScriptItem( SfxItemSet& rSet, const SfxPoolItem& rItem )
122cdf0e10cSrcweir {
123a585680aSDennis E. Hamilton rSet.Put( rItem );
124a585680aSDennis E. Hamilton sal_uInt16 nWhCJK = 0, nWhCTL = 0;
125a585680aSDennis E. Hamilton switch( rItem.Which() )
126a585680aSDennis E. Hamilton {
127a585680aSDennis E. Hamilton case RES_CHRATR_FONTSIZE:
128a585680aSDennis E. Hamilton nWhCJK = RES_CHRATR_CJK_FONTSIZE, nWhCTL = RES_CHRATR_CTL_FONTSIZE;
129a585680aSDennis E. Hamilton break;
130a585680aSDennis E. Hamilton case RES_CHRATR_FONT:
131a585680aSDennis E. Hamilton nWhCJK = RES_CHRATR_CJK_FONT, nWhCTL = RES_CHRATR_CTL_FONT;
132a585680aSDennis E. Hamilton break;
133a585680aSDennis E. Hamilton case RES_CHRATR_LANGUAGE:
134a585680aSDennis E. Hamilton nWhCJK = RES_CHRATR_CJK_LANGUAGE, nWhCTL = RES_CHRATR_CTL_LANGUAGE;
135a585680aSDennis E. Hamilton break;
136a585680aSDennis E. Hamilton case RES_CHRATR_POSTURE:
137a585680aSDennis E. Hamilton nWhCJK = RES_CHRATR_CJK_POSTURE, nWhCTL = RES_CHRATR_CTL_POSTURE;
138a585680aSDennis E. Hamilton break;
139a585680aSDennis E. Hamilton case RES_CHRATR_WEIGHT:
140a585680aSDennis E. Hamilton nWhCJK = RES_CHRATR_CJK_WEIGHT, nWhCTL = RES_CHRATR_CTL_WEIGHT;
141a585680aSDennis E. Hamilton break;
142a585680aSDennis E. Hamilton }
143a585680aSDennis E. Hamilton
144a585680aSDennis E. Hamilton if( nWhCJK )
145a585680aSDennis E. Hamilton rSet.Put( rItem, nWhCJK );
146a585680aSDennis E. Hamilton if( nWhCTL )
147a585680aSDennis E. Hamilton rSet.Put( rItem, nWhCTL );
148cdf0e10cSrcweir }
149cdf0e10cSrcweir
lcl_SetDfltFont(sal_uInt16 nFntType,SfxItemSet & rSet)150cdf0e10cSrcweir void lcl_SetDfltFont( sal_uInt16 nFntType, SfxItemSet& rSet )
151cdf0e10cSrcweir {
152a585680aSDennis E. Hamilton static struct {
153a585680aSDennis E. Hamilton sal_uInt16 nResLngId;
154a585680aSDennis E. Hamilton sal_uInt16 nResFntId;
155a585680aSDennis E. Hamilton } aArr[ 3 ] = {
156a585680aSDennis E. Hamilton { RES_CHRATR_LANGUAGE, RES_CHRATR_FONT },
157a585680aSDennis E. Hamilton { RES_CHRATR_CJK_LANGUAGE, RES_CHRATR_CJK_FONT },
158a585680aSDennis E. Hamilton { RES_CHRATR_CTL_LANGUAGE, RES_CHRATR_CTL_FONT }
159a585680aSDennis E. Hamilton };
160a585680aSDennis E. Hamilton for( sal_uInt16 n = 0; n < 3; ++n )
161a585680aSDennis E. Hamilton {
162a585680aSDennis E. Hamilton sal_uInt16 nLng = ((SvxLanguageItem&)rSet.GetPool()->GetDefaultItem(
163a585680aSDennis E. Hamilton aArr[n].nResLngId )).GetLanguage();
164a585680aSDennis E. Hamilton Font aFnt( OutputDevice::GetDefaultFont( nFntType,
165a585680aSDennis E. Hamilton nLng, DEFAULTFONT_FLAGS_ONLYONE ) );
166a585680aSDennis E. Hamilton
167a585680aSDennis E. Hamilton rSet.Put( SvxFontItem( aFnt.GetFamily(), aFnt.GetName(),
168a585680aSDennis E. Hamilton aEmptyStr, aFnt.GetPitch(),
169a585680aSDennis E. Hamilton aFnt.GetCharSet(), aArr[n].nResFntId ));
170a585680aSDennis E. Hamilton }
171cdf0e10cSrcweir }
172cdf0e10cSrcweir
lcl_SetDfltFont(sal_uInt16 nLatinFntType,sal_uInt16 nCJKFntType,sal_uInt16 nCTLFntType,SfxItemSet & rSet)173cdf0e10cSrcweir void lcl_SetDfltFont( sal_uInt16 nLatinFntType, sal_uInt16 nCJKFntType,
174a585680aSDennis E. Hamilton sal_uInt16 nCTLFntType, SfxItemSet& rSet )
175cdf0e10cSrcweir {
176a585680aSDennis E. Hamilton static struct {
177a585680aSDennis E. Hamilton sal_uInt16 nResLngId;
178a585680aSDennis E. Hamilton sal_uInt16 nResFntId;
179a585680aSDennis E. Hamilton sal_uInt16 nFntType;
180a585680aSDennis E. Hamilton } aArr[ 3 ] = {
181a585680aSDennis E. Hamilton { RES_CHRATR_LANGUAGE, RES_CHRATR_FONT, 0 },
182a585680aSDennis E. Hamilton { RES_CHRATR_CJK_LANGUAGE, RES_CHRATR_CJK_FONT, 0 },
183a585680aSDennis E. Hamilton { RES_CHRATR_CTL_LANGUAGE, RES_CHRATR_CTL_FONT, 0 }
184a585680aSDennis E. Hamilton };
185a585680aSDennis E. Hamilton aArr[0].nFntType = nLatinFntType;
186a585680aSDennis E. Hamilton aArr[1].nFntType = nCJKFntType;
187a585680aSDennis E. Hamilton aArr[2].nFntType = nCTLFntType;
188a585680aSDennis E. Hamilton
189a585680aSDennis E. Hamilton for( sal_uInt16 n = 0; n < 3; ++n )
190a585680aSDennis E. Hamilton {
191a585680aSDennis E. Hamilton sal_uInt16 nLng = ((SvxLanguageItem&)rSet.GetPool()->GetDefaultItem(
192a585680aSDennis E. Hamilton aArr[n].nResLngId )).GetLanguage();
193a585680aSDennis E. Hamilton Font aFnt( OutputDevice::GetDefaultFont( aArr[n].nFntType,
194a585680aSDennis E. Hamilton nLng, DEFAULTFONT_FLAGS_ONLYONE ) );
195a585680aSDennis E. Hamilton
196a585680aSDennis E. Hamilton rSet.Put( SvxFontItem( aFnt.GetFamily(), aFnt.GetName(),
197a585680aSDennis E. Hamilton aEmptyStr, aFnt.GetPitch(),
198a585680aSDennis E. Hamilton aFnt.GetCharSet(), aArr[n].nResFntId ));
199a585680aSDennis E. Hamilton }
200cdf0e10cSrcweir }
201cdf0e10cSrcweir
lcl_SetHeadline(SwDoc * pDoc,SwTxtFmtColl * pColl,SfxItemSet & rSet,sal_uInt16 nOutLvlBits,sal_uInt8 nLevel,sal_Bool bItalic)202cdf0e10cSrcweir void lcl_SetHeadline( SwDoc* pDoc, SwTxtFmtColl* pColl,
203a585680aSDennis E. Hamilton SfxItemSet& rSet,
204a585680aSDennis E. Hamilton sal_uInt16 nOutLvlBits, sal_uInt8 nLevel, sal_Bool bItalic )
205cdf0e10cSrcweir {
206cdf0e10cSrcweir SetAllScriptItem( rSet, SvxWeightItem( WEIGHT_BOLD, RES_CHRATR_WEIGHT ) );
207cdf0e10cSrcweir SvxFontHeightItem aHItem(240, 100, RES_CHRATR_FONTSIZE);
208cdf0e10cSrcweir const bool bHTMLMode = pDoc->get(IDocumentSettingAccess::HTML_MODE);
209cdf0e10cSrcweir if( bHTMLMode )
210a585680aSDennis E. Hamilton aHItem.SetHeight( aHeadlineSizes[ MAXLEVEL + nLevel ] );
211a585680aSDennis E. Hamilton else
212a585680aSDennis E. Hamilton aHItem.SetHeight( PT_14, aHeadlineSizes[ nLevel ] );
213a585680aSDennis E. Hamilton SetAllScriptItem( rSet, aHItem );
214cdf0e10cSrcweir
215cdf0e10cSrcweir if( bItalic && !bHTMLMode )
216cdf0e10cSrcweir SetAllScriptItem( rSet, SvxPostureItem( ITALIC_NORMAL, RES_CHRATR_POSTURE ) );
217cdf0e10cSrcweir
218cdf0e10cSrcweir if( bHTMLMode )
219a585680aSDennis E. Hamilton {
220a585680aSDennis E. Hamilton ::lcl_SetDfltFont( DEFAULTFONT_LATIN_TEXT, DEFAULTFONT_CJK_TEXT,
221a585680aSDennis E. Hamilton DEFAULTFONT_CTL_TEXT, rSet );
222a585680aSDennis E. Hamilton }
223a585680aSDennis E. Hamilton
224a585680aSDennis E. Hamilton if( pColl )
225a585680aSDennis E. Hamilton {
226a585680aSDennis E. Hamilton if( !( nOutLvlBits & ( 1 << nLevel )) )
227a585680aSDennis E. Hamilton {
228a585680aSDennis E. Hamilton //pColl->SetOutlineLevel( nLevel ); //#outline level zhaojianwei
229a585680aSDennis E. Hamilton pColl->AssignToListLevelOfOutlineStyle(nLevel);//<-end,zhaojianwei
230cdf0e10cSrcweir if( !bHTMLMode )
231a585680aSDennis E. Hamilton {
232cdf0e10cSrcweir SwNumRule * pOutlineRule = pDoc->GetOutlineNumRule();
233a585680aSDennis E. Hamilton const SwNumFmt& rNFmt = pOutlineRule->Get( nLevel );
234cdf0e10cSrcweir // --> OD 2008-02-01 #newlistlevelattrs#
235cdf0e10cSrcweir if ( rNFmt.GetPositionAndSpaceMode() ==
236cdf0e10cSrcweir SvxNumberFormat::LABEL_WIDTH_AND_POSITION &&
237cdf0e10cSrcweir ( rNFmt.GetAbsLSpace() || rNFmt.GetFirstLineOffset() ) )
238cdf0e10cSrcweir // <--
239a585680aSDennis E. Hamilton {
240cdf0e10cSrcweir SvxLRSpaceItem aLR( (SvxLRSpaceItem&)pColl->GetFmtAttr( RES_LR_SPACE ) );
241a585680aSDennis E. Hamilton aLR.SetTxtFirstLineOfstValue( rNFmt.GetFirstLineOffset() );
242a585680aSDennis E. Hamilton aLR.SetTxtLeft( rNFmt.GetAbsLSpace() );
243cdf0e10cSrcweir pColl->SetFmtAttr( aLR );
244a585680aSDennis E. Hamilton }
245cdf0e10cSrcweir
246cdf0e10cSrcweir // --> OD 2006-11-20 #i71764#
247cdf0e10cSrcweir // Check on document setting OUTLINE_LEVEL_YIELDS_OUTLINE_RULE no longer needed.
248cdf0e10cSrcweir // All paragraph styles, which are assigned to a level of the
249cdf0e10cSrcweir // outline style has to have the outline style set as its list style.
250cdf0e10cSrcweir {
251cdf0e10cSrcweir SwNumRuleItem aItem(pOutlineRule->GetName());
252cdf0e10cSrcweir
253cdf0e10cSrcweir pColl->SetFmtAttr(aItem);
254cdf0e10cSrcweir }
255cdf0e10cSrcweir // <--
256a585680aSDennis E. Hamilton }
257a585680aSDennis E. Hamilton }
258a585680aSDennis E. Hamilton pColl->SetNextTxtFmtColl( *pDoc->GetTxtCollFromPool(
259a585680aSDennis E. Hamilton RES_POOLCOLL_TEXT ));
260a585680aSDennis E. Hamilton }
261cdf0e10cSrcweir }
262cdf0e10cSrcweir
263cdf0e10cSrcweir
264cdf0e10cSrcweir
lcl_SetRegister(SwDoc * pDoc,SfxItemSet & rSet,sal_uInt16 nFact,sal_Bool bHeader,sal_Bool bTab)265cdf0e10cSrcweir void lcl_SetRegister( SwDoc* pDoc, SfxItemSet& rSet, sal_uInt16 nFact,
266a585680aSDennis E. Hamilton sal_Bool bHeader, sal_Bool bTab )
267cdf0e10cSrcweir {
268cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
269a585680aSDennis E. Hamilton sal_uInt16 nLeft = nFact ? GetMetricVal( CM_05 ) * nFact : 0;
270a585680aSDennis E. Hamilton aLR.SetTxtLeft( nLeft );
271cdf0e10cSrcweir
272a585680aSDennis E. Hamilton rSet.Put( aLR );
273a585680aSDennis E. Hamilton if( bHeader )
274a585680aSDennis E. Hamilton {
275cdf0e10cSrcweir SetAllScriptItem( rSet, SvxWeightItem( WEIGHT_BOLD, RES_CHRATR_WEIGHT ) );
276cdf0e10cSrcweir SetAllScriptItem( rSet, SvxFontHeightItem( PT_16, 100, RES_CHRATR_FONTSIZE ) );
277a585680aSDennis E. Hamilton }
278a585680aSDennis E. Hamilton if( bTab )
279a585680aSDennis E. Hamilton {
280a585680aSDennis E. Hamilton long nRightMargin = lcl_GetRightMargin( *pDoc );
281cdf0e10cSrcweir SvxTabStopItem aTStops( 0, 0, SVX_TAB_ADJUST_DEFAULT, RES_PARATR_TABSTOP );
282a585680aSDennis E. Hamilton aTStops.Insert( SvxTabStop( nRightMargin - nLeft,
283a585680aSDennis E. Hamilton SVX_TAB_ADJUST_RIGHT,
284a585680aSDennis E. Hamilton cDfltDecimalChar, '.' ));
285a585680aSDennis E. Hamilton rSet.Put( aTStops );
286a585680aSDennis E. Hamilton }
287cdf0e10cSrcweir }
288cdf0e10cSrcweir
289cdf0e10cSrcweir
290cdf0e10cSrcweir
lcl_SetNumBul(SwDoc * pDoc,SwTxtFmtColl * pColl,SfxItemSet & rSet,sal_uInt16 nNxt,SwTwips nEZ,SwTwips nLeft,SwTwips nUpper,SwTwips nLower)291cdf0e10cSrcweir void lcl_SetNumBul( SwDoc* pDoc, SwTxtFmtColl* pColl,
292a585680aSDennis E. Hamilton SfxItemSet& rSet,
293a585680aSDennis E. Hamilton sal_uInt16 nNxt, SwTwips nEZ, SwTwips nLeft,
294a585680aSDennis E. Hamilton SwTwips nUpper, SwTwips nLower )
295cdf0e10cSrcweir {
296cdf0e10cSrcweir
297cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE ); SvxULSpaceItem aUL( RES_UL_SPACE );
298a585680aSDennis E. Hamilton aLR.SetTxtFirstLineOfst( sal_uInt16(nEZ) ); aLR.SetTxtLeft( sal_uInt16(nLeft) );
299a585680aSDennis E. Hamilton aUL.SetUpper( sal_uInt16(nUpper) ); aUL.SetLower( sal_uInt16(nLower) );
300a585680aSDennis E. Hamilton rSet.Put( aLR );
301a585680aSDennis E. Hamilton rSet.Put( aUL );
302cdf0e10cSrcweir
303e79d5b37SKay Schenk pColl->SetNextTxtFmtColl( *pDoc->GetTxtCollFromPool( nNxt ));
304cdf0e10cSrcweir }
305cdf0e10cSrcweir
306cdf0e10cSrcweir
307cdf0e10cSrcweir
308cdf0e10cSrcweir // Gebe die "Auto-Collection" mit der Id zurueck. Existiert
309cdf0e10cSrcweir // sie noch nicht, dann erzeuge sie
310cdf0e10cSrcweir // Ist der String-Pointer definiert, dann erfrage nur die
311cdf0e10cSrcweir // Beschreibung der Attribute, !! es legt keine Vorlage an !!
312cdf0e10cSrcweir
GetDefaultFrameDirection(sal_uLong nLanguage)313cdf0e10cSrcweir SvxFrameDirection GetDefaultFrameDirection(sal_uLong nLanguage)
314cdf0e10cSrcweir {
315cdf0e10cSrcweir SvxFrameDirection eResult = (MsLangId::isRightToLeft( static_cast<LanguageType>(nLanguage)) ?
316cdf0e10cSrcweir FRMDIR_HORI_RIGHT_TOP : FRMDIR_HORI_LEFT_TOP);
317cdf0e10cSrcweir return eResult;
318cdf0e10cSrcweir }
319cdf0e10cSrcweir
GetTxtCollFromPool(sal_uInt16 nId,bool bRegardLanguage)320cdf0e10cSrcweir SwTxtFmtColl* SwDoc::GetTxtCollFromPool( sal_uInt16 nId, bool bRegardLanguage )
321cdf0e10cSrcweir {
322a585680aSDennis E. Hamilton ASSERT(
323a585680aSDennis E. Hamilton (RES_POOLCOLL_TEXT_BEGIN <= nId && nId < RES_POOLCOLL_TEXT_END) ||
324a585680aSDennis E. Hamilton (RES_POOLCOLL_LISTS_BEGIN <= nId && nId < RES_POOLCOLL_LISTS_END) ||
325a585680aSDennis E. Hamilton (RES_POOLCOLL_EXTRA_BEGIN <= nId && nId < RES_POOLCOLL_EXTRA_END) ||
326a585680aSDennis E. Hamilton (RES_POOLCOLL_REGISTER_BEGIN <= nId && nId < RES_POOLCOLL_REGISTER_END) ||
327a585680aSDennis E. Hamilton (RES_POOLCOLL_DOC_BEGIN <= nId && nId < RES_POOLCOLL_DOC_END) ||
328a585680aSDennis E. Hamilton (RES_POOLCOLL_HTML_BEGIN <= nId && nId < RES_POOLCOLL_HTML_END),
329a585680aSDennis E. Hamilton "Falsche AutoFormat-Id" );
330cdf0e10cSrcweir
331cdf0e10cSrcweir SwTxtFmtColl* pNewColl;
332a585680aSDennis E. Hamilton sal_uInt16 nOutLvlBits = 0;
333a585680aSDennis E. Hamilton for( sal_uInt16 n = 0; n < pTxtFmtCollTbl->Count(); ++n )
334a585680aSDennis E. Hamilton {
335a585680aSDennis E. Hamilton if( nId == ( pNewColl = (*pTxtFmtCollTbl)[ n ] )->GetPoolFmtId() )
336a585680aSDennis E. Hamilton {
337cdf0e10cSrcweir return pNewColl;
338a585680aSDennis E. Hamilton }
339cdf0e10cSrcweir //if( pNewColl->GetOutlineLevel() < MAXLEVEL ) //#outline level,zhaojianwei
340a585680aSDennis E. Hamilton //nOutLvlBits |= ( 1 << pNewColl->GetOutlineLevel() );
341a585680aSDennis E. Hamilton if( pNewColl->IsAssignedToListLevelOfOutlineStyle())
342a585680aSDennis E. Hamilton nOutLvlBits |= ( 1 << pNewColl->GetAssignedOutlineStyleLevel() );//<-end,zhaojianwei
343a585680aSDennis E. Hamilton }
344a585680aSDennis E. Hamilton
345a585680aSDennis E. Hamilton // bis hierher nicht gefunden -> neu anlegen
346a585680aSDennis E. Hamilton sal_uInt16 nResId = 0;
347a585680aSDennis E. Hamilton if( RES_POOLCOLL_TEXT_BEGIN <= nId && nId < RES_POOLCOLL_TEXT_END )
348a585680aSDennis E. Hamilton nResId = RC_POOLCOLL_TEXT_BEGIN - RES_POOLCOLL_TEXT_BEGIN;
349a585680aSDennis E. Hamilton else if (RES_POOLCOLL_LISTS_BEGIN <= nId && nId < RES_POOLCOLL_LISTS_END)
350a585680aSDennis E. Hamilton nResId = RC_POOLCOLL_LISTS_BEGIN - RES_POOLCOLL_LISTS_BEGIN;
351a585680aSDennis E. Hamilton else if (RES_POOLCOLL_EXTRA_BEGIN <= nId && nId < RES_POOLCOLL_EXTRA_END)
352a585680aSDennis E. Hamilton nResId = RC_POOLCOLL_EXTRA_BEGIN - RES_POOLCOLL_EXTRA_BEGIN;
353a585680aSDennis E. Hamilton else if (RES_POOLCOLL_REGISTER_BEGIN <= nId && nId < RES_POOLCOLL_REGISTER_END)
354a585680aSDennis E. Hamilton nResId = RC_POOLCOLL_REGISTER_BEGIN - RES_POOLCOLL_REGISTER_BEGIN;
355a585680aSDennis E. Hamilton else if (RES_POOLCOLL_DOC_BEGIN <= nId && nId < RES_POOLCOLL_DOC_END)
356a585680aSDennis E. Hamilton nResId = RC_POOLCOLL_DOC_BEGIN - RES_POOLCOLL_DOC_BEGIN;
357a585680aSDennis E. Hamilton else if (RES_POOLCOLL_HTML_BEGIN <= nId && nId < RES_POOLCOLL_HTML_END)
358a585680aSDennis E. Hamilton nResId = RC_POOLCOLL_HTML_BEGIN - RES_POOLCOLL_HTML_BEGIN;
359a585680aSDennis E. Hamilton
360a585680aSDennis E. Hamilton ASSERT( nResId, "Ungueltige Pool-ID" );
361a585680aSDennis E. Hamilton if( !nResId )
362cdf0e10cSrcweir return GetTxtCollFromPool( RES_POOLCOLL_STANDARD );
363cdf0e10cSrcweir
364a585680aSDennis E. Hamilton ResId aResId( nResId + nId, *pSwResMgr );
365a585680aSDennis E. Hamilton String aNm( aResId );
366cdf0e10cSrcweir
367a585680aSDennis E. Hamilton // ein Set fuer alle zusetzenden Attribute
368a585680aSDennis E. Hamilton SwAttrSet aSet( GetAttrPool(), aTxtFmtCollSetRange );
369a585680aSDennis E. Hamilton sal_uInt16 nParent = GetPoolParent( nId );
370cdf0e10cSrcweir
371cdf0e10cSrcweir {
372cdf0e10cSrcweir
373cdf0e10cSrcweir //FEATURE::CONDCOLL
374a585680aSDennis E. Hamilton if(::IsConditionalByPoolId( nId ))
375a585680aSDennis E. Hamilton pNewColl = new SwConditionTxtFmtColl( GetAttrPool(), aNm, !nParent
376a585680aSDennis E. Hamilton ? pDfltTxtFmtColl
377a585680aSDennis E. Hamilton : GetTxtCollFromPool( nParent ));
378a585680aSDennis E. Hamilton else
379cdf0e10cSrcweir //FEATURE::CONDCOLL
380a585680aSDennis E. Hamilton pNewColl = new SwTxtFmtColl( GetAttrPool(), aNm, !nParent
381a585680aSDennis E. Hamilton ? pDfltTxtFmtColl
382a585680aSDennis E. Hamilton : GetTxtCollFromPool( nParent ));
383a585680aSDennis E. Hamilton pNewColl->SetPoolFmtId( nId );
384a585680aSDennis E. Hamilton pTxtFmtCollTbl->Insert( pNewColl, pTxtFmtCollTbl->Count() );
385a585680aSDennis E. Hamilton }
386a585680aSDennis E. Hamilton
387a585680aSDennis E. Hamilton switch( nId )
388a585680aSDennis E. Hamilton {
389a585680aSDennis E. Hamilton // allgemeine Inhaltsformen
390a585680aSDennis E. Hamilton case RES_POOLCOLL_STANDARD:
391cdf0e10cSrcweir /* #111214# koreans do not like SvxScriptItem(sal_True) */
392cdf0e10cSrcweir if (bRegardLanguage)
393cdf0e10cSrcweir {
394cdf0e10cSrcweir sal_uLong nAppLanguage = GetAppLanguage();
395cdf0e10cSrcweir if (GetDefaultFrameDirection(nAppLanguage) ==
396cdf0e10cSrcweir FRMDIR_HORI_RIGHT_TOP)
397cdf0e10cSrcweir {
398cdf0e10cSrcweir SvxAdjustItem aAdjust(SVX_ADJUST_RIGHT, RES_PARATR_ADJUST );
399cdf0e10cSrcweir aSet.Put(aAdjust);
400cdf0e10cSrcweir }
401cdf0e10cSrcweir if (nAppLanguage == LANGUAGE_KOREAN)
402cdf0e10cSrcweir {
403cdf0e10cSrcweir SvxScriptSpaceItem aScriptSpace(sal_False, RES_PARATR_SCRIPTSPACE);
404cdf0e10cSrcweir aSet.Put(aScriptSpace);
405cdf0e10cSrcweir }
406cdf0e10cSrcweir }
40756b35d86SArmin Le Grand
408a585680aSDennis E. Hamilton break;
409cdf0e10cSrcweir
410a585680aSDennis E. Hamilton case RES_POOLCOLL_TEXT: // Textkoerper
411a585680aSDennis E. Hamilton {
412cdf0e10cSrcweir SvxULSpaceItem aUL( 0, PT_6, RES_UL_SPACE );
413a585680aSDennis E. Hamilton if( get(IDocumentSettingAccess::HTML_MODE) ) aUL.SetLower( HTML_PARSPACE );
414a585680aSDennis E. Hamilton aSet.Put( aUL );
415a585680aSDennis E. Hamilton }
416a585680aSDennis E. Hamilton break;
417a585680aSDennis E. Hamilton case RES_POOLCOLL_TEXT_IDENT: // Textkoerper Einzug
418a585680aSDennis E. Hamilton {
419cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
420a585680aSDennis E. Hamilton aLR.SetTxtFirstLineOfst( GetMetricVal( CM_05 ));
421a585680aSDennis E. Hamilton aSet.Put( aLR );
422a585680aSDennis E. Hamilton }
423a585680aSDennis E. Hamilton break;
424a585680aSDennis E. Hamilton case RES_POOLCOLL_TEXT_NEGIDENT: // Textkoerper neg. Einzug
425a585680aSDennis E. Hamilton {
426cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
427a585680aSDennis E. Hamilton aLR.SetTxtFirstLineOfst( -(short)GetMetricVal( CM_05 ));
428a585680aSDennis E. Hamilton aLR.SetTxtLeft( GetMetricVal( CM_1 ));
429cdf0e10cSrcweir SvxTabStopItem aTStops(RES_PARATR_TABSTOP); aTStops.Insert( SvxTabStop( 0 ));
430cdf0e10cSrcweir
431a585680aSDennis E. Hamilton aSet.Put( aLR );
432a585680aSDennis E. Hamilton aSet.Put( aTStops );
433a585680aSDennis E. Hamilton }
434a585680aSDennis E. Hamilton break;
435a585680aSDennis E. Hamilton case RES_POOLCOLL_TEXT_MOVE: // Textkoerper Einrueckung
436a585680aSDennis E. Hamilton {
437cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
438a585680aSDennis E. Hamilton aLR.SetTxtLeft( GetMetricVal( CM_05 ));
439a585680aSDennis E. Hamilton aSet.Put( aLR );
440a585680aSDennis E. Hamilton }
441a585680aSDennis E. Hamilton break;
442cdf0e10cSrcweir
443a585680aSDennis E. Hamilton case RES_POOLCOLL_CONFRONTATION: // Textkoerper Gegenueberstellung
444a585680aSDennis E. Hamilton {
445cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
446a585680aSDennis E. Hamilton aLR.SetTxtFirstLineOfst( - short( GetMetricVal( CM_1 ) * 4 +
447a585680aSDennis E. Hamilton GetMetricVal( CM_05)) );
448a585680aSDennis E. Hamilton aLR.SetTxtLeft( GetMetricVal( CM_1 ) * 5 );
449cdf0e10cSrcweir SvxTabStopItem aTStops( RES_PARATR_TABSTOP ); aTStops.Insert( SvxTabStop( 0 ));
450cdf0e10cSrcweir
451a585680aSDennis E. Hamilton aSet.Put( aLR );
452a585680aSDennis E. Hamilton aSet.Put( aTStops );
453a585680aSDennis E. Hamilton }
454a585680aSDennis E. Hamilton break;
455a585680aSDennis E. Hamilton case RES_POOLCOLL_MARGINAL: // Textkoerper maginalie
456a585680aSDennis E. Hamilton {
457cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
458a585680aSDennis E. Hamilton aLR.SetTxtLeft( GetMetricVal( CM_1 ) * 4 );
459a585680aSDennis E. Hamilton aSet.Put( aLR );
460a585680aSDennis E. Hamilton }
461a585680aSDennis E. Hamilton break;
462a585680aSDennis E. Hamilton
463a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE_BASE: // Basis Ueberschrift
464a585680aSDennis E. Hamilton {
465a585680aSDennis E. Hamilton static const sal_uInt16 aFntInit[] = {
466a585680aSDennis E. Hamilton DEFAULTFONT_LATIN_HEADING, RES_CHRATR_FONT,
467a585680aSDennis E. Hamilton RES_CHRATR_LANGUAGE, LANGUAGE_ENGLISH_US,
468a585680aSDennis E. Hamilton DEFAULTFONT_CJK_HEADING, RES_CHRATR_CJK_FONT,
469a585680aSDennis E. Hamilton RES_CHRATR_CJK_LANGUAGE, LANGUAGE_ENGLISH_US,
470a585680aSDennis E. Hamilton DEFAULTFONT_CTL_HEADING, RES_CHRATR_CTL_FONT,
471a585680aSDennis E. Hamilton RES_CHRATR_CTL_LANGUAGE, LANGUAGE_ARABIC_SAUDI_ARABIA,
472a585680aSDennis E. Hamilton 0
473a585680aSDennis E. Hamilton };
474a585680aSDennis E. Hamilton
475a585680aSDennis E. Hamilton for( const sal_uInt16* pArr = aFntInit; *pArr; pArr += 4 )
476a585680aSDennis E. Hamilton {
477a585680aSDennis E. Hamilton sal_uInt16 nLng = ((SvxLanguageItem&)GetDefault( *(pArr+2) )).GetLanguage();
478a585680aSDennis E. Hamilton if( LANGUAGE_DONTKNOW == nLng )
479a585680aSDennis E. Hamilton nLng = *(pArr+3);
480a585680aSDennis E. Hamilton
481a585680aSDennis E. Hamilton Font aFnt( OutputDevice::GetDefaultFont( *pArr,
482a585680aSDennis E. Hamilton nLng, DEFAULTFONT_FLAGS_ONLYONE ) );
483a585680aSDennis E. Hamilton
484a585680aSDennis E. Hamilton aSet.Put( SvxFontItem( aFnt.GetFamily(), aFnt.GetName(),
485a585680aSDennis E. Hamilton aEmptyStr, aFnt.GetPitch(),
486cdf0e10cSrcweir aFnt.GetCharSet(), *(pArr+1) ));
487a585680aSDennis E. Hamilton }
488cdf0e10cSrcweir
489cdf0e10cSrcweir SvxFontHeightItem aFntSize( PT_14, 100, RES_CHRATR_FONTSIZE );
490cdf0e10cSrcweir SvxULSpaceItem aUL( PT_12, PT_6, RES_UL_SPACE );
491a585680aSDennis E. Hamilton if( get(IDocumentSettingAccess::HTML_MODE) )
492a585680aSDennis E. Hamilton aUL.SetLower( HTML_PARSPACE );
493cdf0e10cSrcweir aSet.Put( SvxFmtKeepItem( sal_True, RES_KEEP ));
494cdf0e10cSrcweir
495cdf0e10cSrcweir pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool( RES_POOLCOLL_TEXT ));
496cdf0e10cSrcweir
497a585680aSDennis E. Hamilton aSet.Put( aUL );
498a585680aSDennis E. Hamilton SetAllScriptItem( aSet, aFntSize );
499a585680aSDennis E. Hamilton }
500a585680aSDennis E. Hamilton break;
501a585680aSDennis E. Hamilton
502a585680aSDennis E. Hamilton case RES_POOLCOLL_NUMBUL_BASE: // Basis Numerierung/Aufzaehlung
503a585680aSDennis E. Hamilton break;
504a585680aSDennis E. Hamilton
505a585680aSDennis E. Hamilton case RES_POOLCOLL_GREETING: // Grussformel
506a585680aSDennis E. Hamilton case RES_POOLCOLL_REGISTER_BASE: // Basis Verzeichnisse
507a585680aSDennis E. Hamilton case RES_POOLCOLL_SIGNATURE: // Unterschrift
508a585680aSDennis E. Hamilton case RES_POOLCOLL_TABLE: // Tabelle-Inhalt
509a585680aSDennis E. Hamilton {
510a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
511a585680aSDennis E. Hamilton aSet.Put( aLN );
512a585680aSDennis E. Hamilton }
513a585680aSDennis E. Hamilton break;
514a585680aSDennis E. Hamilton
515a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE1: // Ueberschrift 1
516a585680aSDennis E. Hamilton lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 0, sal_False );
517a585680aSDennis E. Hamilton break;
518a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE2: // Ueberschrift 2
519a585680aSDennis E. Hamilton lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 1, sal_True );
520a585680aSDennis E. Hamilton break;
521a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE3: // Ueberschrift 3
522a585680aSDennis E. Hamilton lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 2, sal_False );
523a585680aSDennis E. Hamilton break;
524a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE4: // Ueberschrift 4
525a585680aSDennis E. Hamilton lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 3, sal_True );
526a585680aSDennis E. Hamilton break;
527a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE5: // Ueberschrift 5
528a585680aSDennis E. Hamilton lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 4, sal_False );
529a585680aSDennis E. Hamilton break;
530a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE6: // Ueberschrift 6
531a585680aSDennis E. Hamilton lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 5, sal_False );
532a585680aSDennis E. Hamilton break;
533a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE7: // Ueberschrift 7
534a585680aSDennis E. Hamilton lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 6, sal_False );
535a585680aSDennis E. Hamilton break;
536a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE8: // Ueberschrift 8
537a585680aSDennis E. Hamilton lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 7, sal_False );
538a585680aSDennis E. Hamilton break;
539a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE9: // Ueberschrift 9
540a585680aSDennis E. Hamilton lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 8, sal_False );
541a585680aSDennis E. Hamilton break;
542a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE10: // Ueberschrift 10
543a585680aSDennis E. Hamilton lcl_SetHeadline( this, pNewColl, aSet, nOutLvlBits, 9, sal_False );
544a585680aSDennis E. Hamilton break;
545a585680aSDennis E. Hamilton
546a585680aSDennis E. Hamilton
547a585680aSDennis E. Hamilton // Sonderbereiche:
548a585680aSDennis E. Hamilton // Kopfzeilen
549a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADER:
550a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADERL:
551a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADERR:
552a585680aSDennis E. Hamilton // Fusszeilen
553a585680aSDennis E. Hamilton case RES_POOLCOLL_FOOTER:
554a585680aSDennis E. Hamilton case RES_POOLCOLL_FOOTERL:
555a585680aSDennis E. Hamilton case RES_POOLCOLL_FOOTERR:
556a585680aSDennis E. Hamilton {
557a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
558a585680aSDennis E. Hamilton aSet.Put( aLN );
559a585680aSDennis E. Hamilton
560a585680aSDennis E. Hamilton long nRightMargin = lcl_GetRightMargin( *this );
561cdf0e10cSrcweir
562cdf0e10cSrcweir SvxTabStopItem aTStops( 0, 0, SVX_TAB_ADJUST_DEFAULT, RES_PARATR_TABSTOP );
563a585680aSDennis E. Hamilton aTStops.Insert( SvxTabStop( nRightMargin / 2, SVX_TAB_ADJUST_CENTER ) );
564a585680aSDennis E. Hamilton aTStops.Insert( SvxTabStop( nRightMargin, SVX_TAB_ADJUST_RIGHT ) );
565cdf0e10cSrcweir
566a585680aSDennis E. Hamilton aSet.Put( aTStops );
567a585680aSDennis E. Hamilton }
568a585680aSDennis E. Hamilton break;
569cdf0e10cSrcweir
570a585680aSDennis E. Hamilton case RES_POOLCOLL_TABLE_HDLN:
571a585680aSDennis E. Hamilton {
572cdf0e10cSrcweir SetAllScriptItem( aSet, SvxWeightItem( WEIGHT_BOLD, RES_CHRATR_WEIGHT ) );
573cdf0e10cSrcweir aSet.Put( SvxAdjustItem( SVX_ADJUST_CENTER, RES_PARATR_ADJUST ) );
574cdf0e10cSrcweir SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
575a585680aSDennis E. Hamilton aSet.Put( aLN );
576a585680aSDennis E. Hamilton }
577a585680aSDennis E. Hamilton break;
578cdf0e10cSrcweir
579a585680aSDennis E. Hamilton case RES_POOLCOLL_FOOTNOTE: // Fussnote
580a585680aSDennis E. Hamilton case RES_POOLCOLL_ENDNOTE:
581a585680aSDennis E. Hamilton {
582cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
583a585680aSDennis E. Hamilton aLR.SetTxtFirstLineOfst( -(short)GetMetricVal( CM_05 ));
584a585680aSDennis E. Hamilton aLR.SetTxtLeft( GetMetricVal( CM_05 ));
585cdf0e10cSrcweir SetAllScriptItem( aSet, SvxFontHeightItem( PT_10, 100, RES_CHRATR_FONTSIZE ) );
586a585680aSDennis E. Hamilton aSet.Put( aLR );
587a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
588a585680aSDennis E. Hamilton aSet.Put( aLN );
589a585680aSDennis E. Hamilton }
590a585680aSDennis E. Hamilton break;
591a585680aSDennis E. Hamilton
592a585680aSDennis E. Hamilton case RES_POOLCOLL_LABEL: // Beschriftung-Basis
593a585680aSDennis E. Hamilton {
594cdf0e10cSrcweir SvxULSpaceItem aUL( RES_UL_SPACE ); aUL.SetUpper( PT_6 ); aUL.SetLower( PT_6 );
595a585680aSDennis E. Hamilton aSet.Put( aUL );
596cdf0e10cSrcweir SetAllScriptItem( aSet, SvxPostureItem( ITALIC_NORMAL, RES_CHRATR_POSTURE ) );
597cdf0e10cSrcweir SetAllScriptItem( aSet, SvxFontHeightItem( PT_10, 100, RES_CHRATR_FONTSIZE ) );
598a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
599a585680aSDennis E. Hamilton aSet.Put( aLN );
600a585680aSDennis E. Hamilton }
601a585680aSDennis E. Hamilton break;
602a585680aSDennis E. Hamilton
603a585680aSDennis E. Hamilton case RES_POOLCOLL_FRAME: // Rahmen Inhalt
604a585680aSDennis E. Hamilton case RES_POOLCOLL_LABEL_ABB: // Beschriftung-Abbildung
605a585680aSDennis E. Hamilton case RES_POOLCOLL_LABEL_TABLE: // Beschriftung-Tabelle
606a585680aSDennis E. Hamilton case RES_POOLCOLL_LABEL_FRAME: // Beschriftung-Rahmen
607a585680aSDennis E. Hamilton case RES_POOLCOLL_LABEL_DRAWING: // Beschriftung-Zeichnung
608a585680aSDennis E. Hamilton break;
609a585680aSDennis E. Hamilton
610a585680aSDennis E. Hamilton case RES_POOLCOLL_JAKETADRESS: // UmschlagAdresse
611a585680aSDennis E. Hamilton {
612cdf0e10cSrcweir SvxULSpaceItem aUL( RES_UL_SPACE ); aUL.SetLower( PT_3 );
613a585680aSDennis E. Hamilton aSet.Put( aUL );
614a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
615a585680aSDennis E. Hamilton aSet.Put( aLN );
616a585680aSDennis E. Hamilton }
617a585680aSDennis E. Hamilton break;
618a585680aSDennis E. Hamilton
619a585680aSDennis E. Hamilton case RES_POOLCOLL_SENDADRESS: // AbsenderAdresse
620a585680aSDennis E. Hamilton {
621a585680aSDennis E. Hamilton if( get(IDocumentSettingAccess::HTML_MODE) )
622cdf0e10cSrcweir SetAllScriptItem( aSet, SvxPostureItem(ITALIC_NORMAL, RES_CHRATR_POSTURE) );
623a585680aSDennis E. Hamilton else
624a585680aSDennis E. Hamilton {
625cdf0e10cSrcweir SvxULSpaceItem aUL( RES_UL_SPACE ); aUL.SetLower( PT_3 );
626a585680aSDennis E. Hamilton aSet.Put( aUL );
627a585680aSDennis E. Hamilton }
628a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
629a585680aSDennis E. Hamilton aSet.Put( aLN );
630a585680aSDennis E. Hamilton }
631a585680aSDennis E. Hamilton break;
632a585680aSDennis E. Hamilton
633a585680aSDennis E. Hamilton // Benutzer-Verzeichnisse:
634a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USERH: // Header
635a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
636a585680aSDennis E. Hamilton {
637a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
638a585680aSDennis E. Hamilton aSet.Put( aLN );
639a585680aSDennis E. Hamilton }
640a585680aSDennis E. Hamilton break;
641a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USER1: // 1. Ebene
642a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 0, sal_False, sal_True );
643a585680aSDennis E. Hamilton break;
644a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USER2: // 2. Ebene
645a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 1, sal_False, sal_True );
646a585680aSDennis E. Hamilton break;
647a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USER3: // 3. Ebene
648a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 2, sal_False, sal_True );
649a585680aSDennis E. Hamilton break;
650a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USER4: // 4. Ebene
651a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 3, sal_False, sal_True );
652a585680aSDennis E. Hamilton break;
653a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USER5: // 5. Ebene
654a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 4, sal_False, sal_True );
655a585680aSDennis E. Hamilton break;
656a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USER6: // 6. Ebene
657a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 5, sal_False, sal_True );
658a585680aSDennis E. Hamilton break;
659a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USER7: // 7. Ebene
660a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 6, sal_False, sal_True );
661a585680aSDennis E. Hamilton break;
662a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USER8: // 8. Ebene
663a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 7, sal_False, sal_True );
664a585680aSDennis E. Hamilton break;
665a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USER9: // 9. Ebene
666a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 8, sal_False, sal_True );
667a585680aSDennis E. Hamilton break;
668a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USER10: // 10. Ebene
669a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 9, sal_False, sal_True );
670a585680aSDennis E. Hamilton break;
671a585680aSDennis E. Hamilton
672a585680aSDennis E. Hamilton // Index-Verzeichnisse
673a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_IDXH: // Header
674a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
675a585680aSDennis E. Hamilton {
676a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
677a585680aSDennis E. Hamilton aSet.Put( aLN );
678a585680aSDennis E. Hamilton }
679a585680aSDennis E. Hamilton break;
680a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_IDX1: // 1. Ebene
681a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 0, sal_False, sal_False );
682a585680aSDennis E. Hamilton break;
683a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_IDX2: // 2. Ebene
684a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 1, sal_False, sal_False );
685a585680aSDennis E. Hamilton break;
686a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_IDX3: // 3. Ebene
687a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 2, sal_False, sal_False );
688a585680aSDennis E. Hamilton break;
689a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_IDXBREAK: // Trenner
690a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 0, sal_False, sal_False );
691a585680aSDennis E. Hamilton break;
692a585680aSDennis E. Hamilton
693a585680aSDennis E. Hamilton // Inhalts-Verzeichnisse
694a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNTH: // Header
695a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
696a585680aSDennis E. Hamilton {
697a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
698a585680aSDennis E. Hamilton aSet.Put( aLN );
699a585680aSDennis E. Hamilton }
700a585680aSDennis E. Hamilton break;
701a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNT1: // 1. Ebene
702a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 0, sal_False, sal_True );
703a585680aSDennis E. Hamilton break;
704a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNT2: // 2. Ebene
705a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 1, sal_False, sal_True );
706a585680aSDennis E. Hamilton break;
707a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNT3: // 3. Ebene
708a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 2, sal_False, sal_True );
709a585680aSDennis E. Hamilton break;
710a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNT4: // 4. Ebene
711a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 3, sal_False, sal_True );
712a585680aSDennis E. Hamilton break;
713a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNT5: // 5. Ebene
714a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 4, sal_False, sal_True );
715a585680aSDennis E. Hamilton break;
716a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNT6: // 6. Ebene
717a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 5, sal_False, sal_True );
718a585680aSDennis E. Hamilton break;
719a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNT7: // 7. Ebene
720a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 6, sal_False, sal_True );
721a585680aSDennis E. Hamilton break;
722a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNT8: // 8. Ebene
723a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 7, sal_False, sal_True );
724a585680aSDennis E. Hamilton break;
725a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNT9: // 9. Ebene
726a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 8, sal_False, sal_True );
727a585680aSDennis E. Hamilton break;
728a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNT10: // 10. Ebene
729a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 9, sal_False, sal_True );
730a585680aSDennis E. Hamilton break;
731a585680aSDennis E. Hamilton
732a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_ILLUSH:
733a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_OBJECTH:
734a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_TABLESH:
735a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_AUTHORITIESH:
736a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 0, sal_True, sal_False );
737a585680aSDennis E. Hamilton {
738a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
739a585680aSDennis E. Hamilton aSet.Put( aLN );
740a585680aSDennis E. Hamilton }
741a585680aSDennis E. Hamilton break;
742a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_ILLUS1:
743a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_OBJECT1:
744a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_TABLES1:
745a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_AUTHORITIES1:
746a585680aSDennis E. Hamilton lcl_SetRegister( this, aSet, 0, sal_False, sal_True );
747a585680aSDennis E. Hamilton break;
748a585680aSDennis E. Hamilton
749a585680aSDennis E. Hamilton
750a585680aSDennis E. Hamilton
751a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL1S:
752a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL1,
753a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 0 ),
754a585680aSDennis E. Hamilton PT_12, PT_6 );
755a585680aSDennis E. Hamilton break;
756a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL1:
757a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL1,
758a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 0 ),
759a585680aSDennis E. Hamilton 0, PT_6 );
760a585680aSDennis E. Hamilton break;
761a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL1E:
762a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL1,
763a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 0 ),
764a585680aSDennis E. Hamilton 0, PT_12 );
765a585680aSDennis E. Hamilton break;
766a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_NONUM1:
767a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM1,
768a585680aSDennis E. Hamilton 0, SwNumRule::GetNumIndent( 0 ), 0, PT_6 );
769a585680aSDennis E. Hamilton break;
770a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL2S:
771a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL2,
772a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 1 ),
773a585680aSDennis E. Hamilton PT_12, PT_6 );
774a585680aSDennis E. Hamilton break;
775a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL2:
776a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL2,
777a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 1 ),
778a585680aSDennis E. Hamilton 0, PT_6 );
779a585680aSDennis E. Hamilton break;
780a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL2E:
781a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL2,
782a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 1 ),
783a585680aSDennis E. Hamilton 0, PT_12 );
784a585680aSDennis E. Hamilton break;
785a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_NONUM2:
786a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM2,
787a585680aSDennis E. Hamilton 0, SwNumRule::GetNumIndent( 1 ), 0, PT_6 );
788a585680aSDennis E. Hamilton break;
789a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL3S:
790a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL3,
791a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 2 ),
792a585680aSDennis E. Hamilton PT_12, PT_6 );
793a585680aSDennis E. Hamilton break;
794a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL3:
795a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL3,
796a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 2 ),
797a585680aSDennis E. Hamilton 0, PT_6 );
798a585680aSDennis E. Hamilton break;
799a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL3E:
800a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL3,
801a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 2 ),
802a585680aSDennis E. Hamilton 0, PT_12 );
803a585680aSDennis E. Hamilton break;
804a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_NONUM3:
805a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM3,
806a585680aSDennis E. Hamilton 0, SwNumRule::GetNumIndent( 2 ), 0, PT_6 );
807a585680aSDennis E. Hamilton break;
808a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL4S:
809a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL4,
810a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 3 ),
811a585680aSDennis E. Hamilton PT_12, PT_6 );
812a585680aSDennis E. Hamilton break;
813a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL4:
814a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL4,
815a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 3 ),
816a585680aSDennis E. Hamilton 0, PT_6 );
817a585680aSDennis E. Hamilton break;
818a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL4E:
819a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL4,
820a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 3 ),
821a585680aSDennis E. Hamilton 0, PT_12 );
822a585680aSDennis E. Hamilton break;
823a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_NONUM4:
824a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM4,
825a585680aSDennis E. Hamilton 0, SwNumRule::GetNumIndent( 3 ), 0, PT_6 );
826a585680aSDennis E. Hamilton break;
827a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL5S:
828a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL5,
829a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 4 ),
830a585680aSDennis E. Hamilton PT_12, PT_6 );
831a585680aSDennis E. Hamilton break;
832a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL5:
833a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL5,
834a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 4 ),
835a585680aSDennis E. Hamilton 0, PT_6 );
836a585680aSDennis E. Hamilton break;
837a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_LEVEL5E:
838a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_LEVEL5,
839a585680aSDennis E. Hamilton lNumFirstLineOffset, SwNumRule::GetNumIndent( 4 ),
840a585680aSDennis E. Hamilton 0, PT_12 );
841a585680aSDennis E. Hamilton break;
842a585680aSDennis E. Hamilton case RES_POOLCOLL_NUM_NONUM5:
843a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_NUM_NONUM5,
844a585680aSDennis E. Hamilton 0, SwNumRule::GetNumIndent( 4 ), 0, PT_6 );
845a585680aSDennis E. Hamilton break;
846a585680aSDennis E. Hamilton
847a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL1S:
848a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL1,
849a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 0 ),
850a585680aSDennis E. Hamilton PT_12, PT_6 );
851a585680aSDennis E. Hamilton break;
852a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL1:
853a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL1,
854a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 0 ),
855a585680aSDennis E. Hamilton 0, PT_6 );
856a585680aSDennis E. Hamilton break;
857a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL1E:
858a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL1,
859a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 0 ),
860a585680aSDennis E. Hamilton 0, PT_12 );
861a585680aSDennis E. Hamilton break;
862a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_NONUM1:
863a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM1,
864a585680aSDennis E. Hamilton 0, SwNumRule::GetBullIndent( 0 ), 0, PT_6 );
865a585680aSDennis E. Hamilton break;
866a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL2S:
867a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL2,
868a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 1 ),
869a585680aSDennis E. Hamilton PT_12, PT_6 );
870a585680aSDennis E. Hamilton break;
871a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL2:
872a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL2,
873a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 1 ),
874a585680aSDennis E. Hamilton 0, PT_6 );
875a585680aSDennis E. Hamilton break;
876a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL2E:
877a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL2,
878a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 1 ),
879a585680aSDennis E. Hamilton 0, PT_12 );
880a585680aSDennis E. Hamilton break;
881a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_NONUM2:
882a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM2,
883a585680aSDennis E. Hamilton 0, SwNumRule::GetBullIndent( 1 ), 0, PT_6 );
884a585680aSDennis E. Hamilton break;
885a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL3S:
886a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL3,
887a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 2 ),
888a585680aSDennis E. Hamilton PT_12, PT_6 );
889a585680aSDennis E. Hamilton break;
890a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL3:
891a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL3,
892a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 2 ),
893a585680aSDennis E. Hamilton 0, PT_6 );
894a585680aSDennis E. Hamilton break;
895a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL3E:
896a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL3,
897a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 2 ),
898a585680aSDennis E. Hamilton 0, PT_12 );
899a585680aSDennis E. Hamilton break;
900a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_NONUM3:
901a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM3,
902a585680aSDennis E. Hamilton 0, SwNumRule::GetBullIndent( 2 ), 0, PT_6 );
903a585680aSDennis E. Hamilton break;
904a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL4S:
905a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL4,
906a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 3 ),
907a585680aSDennis E. Hamilton PT_12, PT_6 );
908a585680aSDennis E. Hamilton break;
909a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL4:
910a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL4,
911a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 3 ),
912a585680aSDennis E. Hamilton 0, PT_6 );
913a585680aSDennis E. Hamilton break;
914a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL4E:
915a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL4,
916a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 3 ),
917a585680aSDennis E. Hamilton 0, PT_12 );
918a585680aSDennis E. Hamilton break;
919a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_NONUM4:
920a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM4,
921a585680aSDennis E. Hamilton 0, SwNumRule::GetBullIndent( 3 ), 0, PT_6 );
922a585680aSDennis E. Hamilton break;
923a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL5S:
924a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL5,
925a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 4 ),
926a585680aSDennis E. Hamilton PT_12, PT_6 );
927a585680aSDennis E. Hamilton break;
928a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL5:
929a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL5,
930a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 4 ),
931a585680aSDennis E. Hamilton 0, PT_6 );
932a585680aSDennis E. Hamilton break;
933a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_LEVEL5E:
934a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_LEVEL5,
935a585680aSDennis E. Hamilton lBullFirstLineOffset, SwNumRule::GetBullIndent( 4 ),
936a585680aSDennis E. Hamilton 0, PT_12 );
937a585680aSDennis E. Hamilton break;
938a585680aSDennis E. Hamilton case RES_POOLCOLL_BUL_NONUM5:
939a585680aSDennis E. Hamilton lcl_SetNumBul( this, pNewColl, aSet, RES_POOLCOLL_BUL_NONUM5,
940a585680aSDennis E. Hamilton 0, SwNumRule::GetBullIndent( 4 ), 0, PT_6 );
941a585680aSDennis E. Hamilton break;
942a585680aSDennis E. Hamilton
943a585680aSDennis E. Hamilton case RES_POOLCOLL_DOC_TITEL: // Doc. Titel
944a585680aSDennis E. Hamilton {
945cdf0e10cSrcweir SetAllScriptItem( aSet, SvxWeightItem( WEIGHT_BOLD, RES_CHRATR_WEIGHT ) );
946cdf0e10cSrcweir SetAllScriptItem( aSet, SvxFontHeightItem( PT_18, 100, RES_CHRATR_FONTSIZE ) );
947cdf0e10cSrcweir
948cdf0e10cSrcweir aSet.Put( SvxAdjustItem( SVX_ADJUST_CENTER, RES_PARATR_ADJUST ) );
949cdf0e10cSrcweir
950cdf0e10cSrcweir pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
951a585680aSDennis E. Hamilton RES_POOLCOLL_DOC_SUBTITEL ));
952a585680aSDennis E. Hamilton }
953a585680aSDennis E. Hamilton break;
954cdf0e10cSrcweir
955a585680aSDennis E. Hamilton case RES_POOLCOLL_DOC_SUBTITEL: // Doc. UnterTitel
956a585680aSDennis E. Hamilton {
957cdf0e10cSrcweir SetAllScriptItem( aSet, SvxPostureItem( ITALIC_NORMAL, RES_CHRATR_POSTURE ));
958cdf0e10cSrcweir SetAllScriptItem( aSet, SvxFontHeightItem( PT_14, 100, RES_CHRATR_FONTSIZE ));
959cdf0e10cSrcweir
960cdf0e10cSrcweir aSet.Put( SvxAdjustItem( SVX_ADJUST_CENTER, RES_PARATR_ADJUST ));
961cdf0e10cSrcweir
962cdf0e10cSrcweir pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
963a585680aSDennis E. Hamilton RES_POOLCOLL_TEXT ));
964a585680aSDennis E. Hamilton }
965a585680aSDennis E. Hamilton break;
966cdf0e10cSrcweir
967a585680aSDennis E. Hamilton case RES_POOLCOLL_HTML_BLOCKQUOTE:
968a585680aSDennis E. Hamilton {
969cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
970a585680aSDennis E. Hamilton aLR.SetLeft( GetMetricVal( CM_1 ));
971a585680aSDennis E. Hamilton aLR.SetRight( GetMetricVal( CM_1 ));
972a585680aSDennis E. Hamilton aSet.Put( aLR );
973cdf0e10cSrcweir // aSet.Put( SvxAdjustItem( SVX_ADJUST_BLOCK, RES_PARATR_ADJUST ) );
974cdf0e10cSrcweir SvxULSpaceItem aUL( RES_UL_SPACE );
975cdf0e10cSrcweir aUL = pNewColl->GetULSpace();
976a585680aSDennis E. Hamilton aUL.SetLower( HTML_PARSPACE );
977a585680aSDennis E. Hamilton aSet.Put( aUL);
978a585680aSDennis E. Hamilton }
979a585680aSDennis E. Hamilton break;
980cdf0e10cSrcweir
981a585680aSDennis E. Hamilton case RES_POOLCOLL_HTML_PRE:
982a585680aSDennis E. Hamilton {
983a585680aSDennis E. Hamilton ::lcl_SetDfltFont( DEFAULTFONT_FIXED, aSet );
984cdf0e10cSrcweir
985cdf0e10cSrcweir // WORKAROUND: PRE auf 10pt setzten
986cdf0e10cSrcweir SetAllScriptItem( aSet, SvxFontHeightItem(PT_10, 100, RES_CHRATR_FONTSIZE) );
987cdf0e10cSrcweir // WORKAROUND: PRE auf 10pt setzten
988cdf0e10cSrcweir
989a585680aSDennis E. Hamilton // der untere Absatz-Abstand wird explizit gesetzt (macht
990a585680aSDennis E. Hamilton // die harte Attributierung einfacher)
991cdf0e10cSrcweir SvxULSpaceItem aULSpaceItem( RES_UL_SPACE );
992cdf0e10cSrcweir aULSpaceItem = pNewColl->GetULSpace();
993a585680aSDennis E. Hamilton aULSpaceItem.SetLower( 0 );
994a585680aSDennis E. Hamilton aSet.Put( aULSpaceItem );
995a585680aSDennis E. Hamilton }
996a585680aSDennis E. Hamilton break;
997cdf0e10cSrcweir
998a585680aSDennis E. Hamilton case RES_POOLCOLL_HTML_HR:
999a585680aSDennis E. Hamilton {
1000cdf0e10cSrcweir SvxBoxItem aBox( RES_BOX );
1001a585680aSDennis E. Hamilton Color aColor( COL_GRAY );
1002a585680aSDennis E. Hamilton SvxBorderLine aNew( &aColor, DEF_DOUBLE_LINE0_OUT,
1003a585680aSDennis E. Hamilton DEF_DOUBLE_LINE0_IN,
1004a585680aSDennis E. Hamilton DEF_DOUBLE_LINE0_DIST );
1005a585680aSDennis E. Hamilton aBox.SetLine( &aNew, BOX_LINE_BOTTOM );
1006cdf0e10cSrcweir
1007a585680aSDennis E. Hamilton aSet.Put( aBox );
1008cdf0e10cSrcweir aSet.Put( SwParaConnectBorderItem( sal_False ) );
1009cdf0e10cSrcweir SetAllScriptItem( aSet, SvxFontHeightItem(120, 100, RES_CHRATR_FONTSIZE) );
1010cdf0e10cSrcweir
1011cdf0e10cSrcweir SvxULSpaceItem aUL( RES_UL_SPACE );
1012cdf0e10cSrcweir {
1013a585680aSDennis E. Hamilton pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
1014a585680aSDennis E. Hamilton RES_POOLCOLL_TEXT ));
1015a585680aSDennis E. Hamilton aUL = pNewColl->GetULSpace();
1016a585680aSDennis E. Hamilton }
1017a585680aSDennis E. Hamilton aUL.SetLower( HTML_PARSPACE );
1018a585680aSDennis E. Hamilton aSet.Put( aUL);
1019a585680aSDennis E. Hamilton SwFmtLineNumber aLN; aLN.SetCountLines( sal_False );
1020a585680aSDennis E. Hamilton aSet.Put( aLN );
1021a585680aSDennis E. Hamilton }
1022a585680aSDennis E. Hamilton break;
1023a585680aSDennis E. Hamilton
1024a585680aSDennis E. Hamilton case RES_POOLCOLL_HTML_DD:
1025a585680aSDennis E. Hamilton {
1026cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
1027cdf0e10cSrcweir aLR = pNewColl->GetLRSpace();
1028a585680aSDennis E. Hamilton // es wird um 1cm eingerueckt. Die IDs liegen immer 2 auseinander!
1029a585680aSDennis E. Hamilton aLR.SetLeft( GetMetricVal( CM_1 ));
1030a585680aSDennis E. Hamilton aSet.Put( aLR );
1031a585680aSDennis E. Hamilton }
1032a585680aSDennis E. Hamilton break;
1033a585680aSDennis E. Hamilton case RES_POOLCOLL_HTML_DT:
1034a585680aSDennis E. Hamilton {
1035cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
1036cdf0e10cSrcweir {
1037a585680aSDennis E. Hamilton pNewColl->SetNextTxtFmtColl( *GetTxtCollFromPool(
1038a585680aSDennis E. Hamilton RES_POOLCOLL_HTML_DD ));
1039a585680aSDennis E. Hamilton aLR = pNewColl->GetLRSpace();
1040a585680aSDennis E. Hamilton }
1041a585680aSDennis E. Hamilton // es wird um 0cm eingerueckt. Die IDs liegen immer 2 auseinander!
1042a585680aSDennis E. Hamilton aLR.SetLeft( 0 );
1043a585680aSDennis E. Hamilton aSet.Put( aLR );
1044a585680aSDennis E. Hamilton }
1045a585680aSDennis E. Hamilton break;
1046a585680aSDennis E. Hamilton }
1047a585680aSDennis E. Hamilton
1048a585680aSDennis E. Hamilton if( aSet.Count() )
1049a585680aSDennis E. Hamilton {
1050cdf0e10cSrcweir {
1051cdf0e10cSrcweir pNewColl->SetFmtAttr( aSet );
1052a585680aSDennis E. Hamilton // JP 31.08.95: erzeugen einer PoolVorlage ist keine Modifikation
1053a585680aSDennis E. Hamilton // (Bug: 18545)
1054a585680aSDennis E. Hamilton // SetModified();
1055a585680aSDennis E. Hamilton }
1056a585680aSDennis E. Hamilton }
1057a585680aSDennis E. Hamilton return pNewColl;
1058cdf0e10cSrcweir }
1059cdf0e10cSrcweir
1060cdf0e10cSrcweir
1061cdf0e10cSrcweir
1062a585680aSDennis E. Hamilton // pruefe, ob diese "Auto-Collection" in Dokument schon/noch
1063a585680aSDennis E. Hamilton // benutzt wird
IsPoolTxtCollUsed(sal_uInt16 nId) const1064cdf0e10cSrcweir bool SwDoc::IsPoolTxtCollUsed( sal_uInt16 nId ) const
1065cdf0e10cSrcweir {
1066a585680aSDennis E. Hamilton ASSERT(
1067a585680aSDennis E. Hamilton (RES_POOLCOLL_TEXT_BEGIN <= nId && nId < RES_POOLCOLL_TEXT_END) ||
1068a585680aSDennis E. Hamilton (RES_POOLCOLL_LISTS_BEGIN <= nId && nId < RES_POOLCOLL_LISTS_END) ||
1069a585680aSDennis E. Hamilton (RES_POOLCOLL_EXTRA_BEGIN <= nId && nId < RES_POOLCOLL_EXTRA_END) ||
1070a585680aSDennis E. Hamilton (RES_POOLCOLL_REGISTER_BEGIN <= nId && nId < RES_POOLCOLL_REGISTER_END) ||
1071a585680aSDennis E. Hamilton (RES_POOLCOLL_DOC_BEGIN <= nId && nId < RES_POOLCOLL_DOC_END) ||
1072a585680aSDennis E. Hamilton (RES_POOLCOLL_HTML_BEGIN <= nId && nId < RES_POOLCOLL_HTML_END),
1073a585680aSDennis E. Hamilton "Falsche AutoFormat-Id" );
1074a585680aSDennis E. Hamilton
1075a585680aSDennis E. Hamilton SwTxtFmtColl* pNewColl = 0;
1076a585680aSDennis E. Hamilton sal_Bool bFnd = sal_False;
1077a585680aSDennis E. Hamilton for( sal_uInt16 n = 0; !bFnd && n < pTxtFmtCollTbl->Count(); ++n )
1078cdf0e10cSrcweir {
1079cdf0e10cSrcweir pNewColl = (*pTxtFmtCollTbl)[ n ];
1080a585680aSDennis E. Hamilton if( nId == pNewColl->GetPoolFmtId() )
1081a585680aSDennis E. Hamilton bFnd = sal_True;
1082cdf0e10cSrcweir }
1083cdf0e10cSrcweir
1084a585680aSDennis E. Hamilton if( !bFnd || !pNewColl->GetDepends() )
1085a585680aSDennis E. Hamilton return sal_False;
1086cdf0e10cSrcweir
1087cdf0e10cSrcweir SwAutoFmtGetDocNode aGetHt( &GetNodes() );
1088a585680aSDennis E. Hamilton return !pNewColl->GetInfo( aGetHt );
1089cdf0e10cSrcweir }
1090cdf0e10cSrcweir
1091a585680aSDennis E. Hamilton // Gebe das "Auto[matische]-Format" mit der Id zurueck. Existiert
1092a585680aSDennis E. Hamilton // es noch nicht, dann erzeuge es
1093cdf0e10cSrcweir
GetFmtFromPool(sal_uInt16 nId)1094cdf0e10cSrcweir SwFmt* SwDoc::GetFmtFromPool( sal_uInt16 nId )
1095cdf0e10cSrcweir {
1096cdf0e10cSrcweir SwFmt *pNewFmt = 0;
1097cdf0e10cSrcweir SwFmt *pDeriveFmt = 0;
1098cdf0e10cSrcweir
1099cdf0e10cSrcweir SvPtrarr* pArray[ 2 ];
1100a585680aSDennis E. Hamilton sal_uInt16 nArrCnt = 1, nRCId = 0;
1101a585680aSDennis E. Hamilton sal_uInt16* pWhichRange = 0;
1102a585680aSDennis E. Hamilton
1103a585680aSDennis E. Hamilton switch( nId & (COLL_GET_RANGE_BITS + POOLGRP_NOCOLLID) )
1104a585680aSDennis E. Hamilton {
1105a585680aSDennis E. Hamilton case POOLGRP_CHARFMT:
1106a585680aSDennis E. Hamilton {
1107a585680aSDennis E. Hamilton pArray[0] = pCharFmtTbl;
1108a585680aSDennis E. Hamilton pDeriveFmt = pDfltCharFmt;
1109a585680aSDennis E. Hamilton
1110a585680aSDennis E. Hamilton if( nId > RES_POOLCHR_NORMAL_END )
1111a585680aSDennis E. Hamilton nRCId = RC_POOLCHRFMT_HTML_BEGIN - RES_POOLCHR_HTML_BEGIN;
1112a585680aSDennis E. Hamilton else
1113a585680aSDennis E. Hamilton nRCId = RC_POOLCHRFMT_BEGIN - RES_POOLCHR_BEGIN;
1114a585680aSDennis E. Hamilton pWhichRange = aCharFmtSetRange;
1115a585680aSDennis E. Hamilton
1116a585680aSDennis E. Hamilton // Fehlerfall: unbekanntes Format, aber CharFormat
1117a585680aSDennis E. Hamilton // -> returne das erste
1118a585680aSDennis E. Hamilton if( RES_POOLCHR_BEGIN > nId || nId >= RES_POOLCHR_END )
1119a585680aSDennis E. Hamilton {
1120*870262e3SDon Lewis ASSERT( sal_False, "<SwDoc::GetFmtFromPool(..)> - unknown page pool ID" );
1121a585680aSDennis E. Hamilton nId = RES_POOLCHR_BEGIN;
1122a585680aSDennis E. Hamilton }
1123a585680aSDennis E. Hamilton }
1124a585680aSDennis E. Hamilton break;
1125a585680aSDennis E. Hamilton case POOLGRP_FRAMEFMT:
1126a585680aSDennis E. Hamilton {
1127a585680aSDennis E. Hamilton pArray[0] = pFrmFmtTbl;
1128a585680aSDennis E. Hamilton pArray[1] = pSpzFrmFmtTbl;
1129a585680aSDennis E. Hamilton pDeriveFmt = pDfltFrmFmt;
1130a585680aSDennis E. Hamilton nArrCnt = 2;
1131a585680aSDennis E. Hamilton nRCId = RC_POOLFRMFMT_BEGIN - RES_POOLFRM_BEGIN;
1132a585680aSDennis E. Hamilton pWhichRange = aFrmFmtSetRange;
1133a585680aSDennis E. Hamilton
1134a585680aSDennis E. Hamilton // Fehlerfall: unbekanntes Format, aber FrameFormat
1135a585680aSDennis E. Hamilton // -> returne das erste
1136a585680aSDennis E. Hamilton if( RES_POOLFRM_BEGIN > nId || nId >= RES_POOLFRM_END )
1137a585680aSDennis E. Hamilton {
1138*870262e3SDon Lewis ASSERT( sal_False, "<SwDoc::GetFmtFromPool(..)> - unknown page pool ID" );
1139a585680aSDennis E. Hamilton nId = RES_POOLFRM_BEGIN;
1140a585680aSDennis E. Hamilton }
1141a585680aSDennis E. Hamilton }
1142a585680aSDennis E. Hamilton break;
1143a585680aSDennis E. Hamilton
1144a585680aSDennis E. Hamilton default:
1145a585680aSDennis E. Hamilton // Fehlerfall, unbekanntes Format
1146a585680aSDennis E. Hamilton ASSERT( nId, "ungueltige Id" );
1147a585680aSDennis E. Hamilton return 0;
1148a585680aSDennis E. Hamilton }
1149a585680aSDennis E. Hamilton ASSERT( nRCId, "ungueltige Id" );
1150a585680aSDennis E. Hamilton
1151a585680aSDennis E. Hamilton while( nArrCnt-- )
1152a585680aSDennis E. Hamilton for( sal_uInt16 n = 0; n < (*pArray[nArrCnt]).Count(); ++n )
1153a585680aSDennis E. Hamilton if( nId == ( pNewFmt = (SwFmt*)(*pArray[ nArrCnt ] )[ n ] )->
1154a585680aSDennis E. Hamilton GetPoolFmtId() )
1155a585680aSDennis E. Hamilton {
1156cdf0e10cSrcweir return pNewFmt;
1157a585680aSDennis E. Hamilton }
1158cdf0e10cSrcweir
1159a585680aSDennis E. Hamilton ResId aResId( nRCId + nId, *pSwResMgr );
1160a585680aSDennis E. Hamilton String aNm( aResId );
1161a585680aSDennis E. Hamilton SwAttrSet aSet( GetAttrPool(), pWhichRange );
1162cdf0e10cSrcweir
1163cdf0e10cSrcweir {
1164a585680aSDennis E. Hamilton sal_Bool bIsModified = IsModified();
1165cdf0e10cSrcweir
1166cdf0e10cSrcweir {
1167cdf0e10cSrcweir ::sw::UndoGuard const undoGuard(GetIDocumentUndoRedo());
1168cdf0e10cSrcweir switch (nId & (COLL_GET_RANGE_BITS + POOLGRP_NOCOLLID) )
1169cdf0e10cSrcweir {
1170cdf0e10cSrcweir case POOLGRP_CHARFMT:
1171cdf0e10cSrcweir pNewFmt = _MakeCharFmt(aNm, pDeriveFmt, sal_False, sal_True);
1172cdf0e10cSrcweir break;
1173cdf0e10cSrcweir case POOLGRP_FRAMEFMT:
1174cdf0e10cSrcweir pNewFmt = _MakeFrmFmt(aNm, pDeriveFmt, sal_False, sal_True);
1175cdf0e10cSrcweir break;
1176cdf0e10cSrcweir default:
1177cdf0e10cSrcweir break;
1178cdf0e10cSrcweir }
1179cdf0e10cSrcweir }
1180cdf0e10cSrcweir
1181a585680aSDennis E. Hamilton if( !bIsModified )
1182a585680aSDennis E. Hamilton ResetModified();
1183a585680aSDennis E. Hamilton pNewFmt->SetPoolFmtId( nId );
1184a585680aSDennis E. Hamilton pNewFmt->SetAuto( sal_False ); // kein Auto-Format
1185a585680aSDennis E. Hamilton }
1186a585680aSDennis E. Hamilton
1187a585680aSDennis E. Hamilton switch( nId )
1188a585680aSDennis E. Hamilton {
1189a585680aSDennis E. Hamilton case RES_POOLCHR_FOOTNOTE: // Fussnote
1190a585680aSDennis E. Hamilton case RES_POOLCHR_PAGENO: // Seiten/Feld
1191a585680aSDennis E. Hamilton case RES_POOLCHR_LABEL: // Beschriftung
1192a585680aSDennis E. Hamilton case RES_POOLCHR_DROPCAPS: // Initialien
1193a585680aSDennis E. Hamilton case RES_POOLCHR_NUM_LEVEL: // Aufzaehlungszeichen
1194a585680aSDennis E. Hamilton case RES_POOLCHR_TOXJUMP: // Verzeichnissprung
1195a585680aSDennis E. Hamilton case RES_POOLCHR_ENDNOTE: // Endnote
1196a585680aSDennis E. Hamilton case RES_POOLCHR_LINENUM: // Zeilennummerierung
1197a585680aSDennis E. Hamilton break;
1198a585680aSDennis E. Hamilton
1199a585680aSDennis E. Hamilton case RES_POOLCHR_ENDNOTE_ANCHOR: // Endnotenanker
1200a585680aSDennis E. Hamilton case RES_POOLCHR_FOOTNOTE_ANCHOR: // Fussnotenanker
1201a585680aSDennis E. Hamilton {
1202cdf0e10cSrcweir aSet.Put( SvxEscapementItem( DFLT_ESC_AUTO_SUPER, 58, RES_CHRATR_ESCAPEMENT ) );
1203a585680aSDennis E. Hamilton }
1204a585680aSDennis E. Hamilton break;
1205cdf0e10cSrcweir
1206cdf0e10cSrcweir
1207a585680aSDennis E. Hamilton case RES_POOLCHR_BUL_LEVEL: // Aufzaehlungszeichen
1208a585680aSDennis E. Hamilton {
1209cdf0e10cSrcweir const Font& rBulletFont = numfunc::GetDefBulletFont();
1210cdf0e10cSrcweir SetAllScriptItem( aSet, SvxFontItem( rBulletFont.GetFamily(),
1211cdf0e10cSrcweir rBulletFont.GetName(), rBulletFont.GetStyleName(),
1212cdf0e10cSrcweir rBulletFont.GetPitch(), rBulletFont.GetCharSet(), RES_CHRATR_FONT ));
1213cdf0e10cSrcweir // --> OD 2008-06-02 #i63395#
1214cdf0e10cSrcweir // no font and no font size any more
1215cdf0e10cSrcweir // SetAllScriptItem( aSet, SvxFontHeightItem( PT_9, 100, RES_CHRATR_FONTSIZE ));
1216cdf0e10cSrcweir // <--
1217a585680aSDennis E. Hamilton }
1218a585680aSDennis E. Hamilton break;
1219cdf0e10cSrcweir
1220a585680aSDennis E. Hamilton case RES_POOLCHR_INET_NORMAL:
1221a585680aSDennis E. Hamilton {
1222cdf0e10cSrcweir Color aCol( COL_BLUE );
1223cdf0e10cSrcweir aSet.Put( SvxColorItem( aCol, RES_CHRATR_COLOR ) );
1224cdf0e10cSrcweir aSet.Put( SvxUnderlineItem( UNDERLINE_SINGLE, RES_CHRATR_UNDERLINE ) );
1225cdf0e10cSrcweir // i40133: patch submitted by rail: set language to 'none' to prevent spell checking:
1226cdf0e10cSrcweir aSet.Put( SvxLanguageItem( LANGUAGE_NONE, RES_CHRATR_LANGUAGE ) );
1227cdf0e10cSrcweir aSet.Put( SvxLanguageItem( LANGUAGE_NONE, RES_CHRATR_CJK_LANGUAGE ) );
1228cdf0e10cSrcweir aSet.Put( SvxLanguageItem( LANGUAGE_NONE, RES_CHRATR_CTL_LANGUAGE ) );
1229cdf0e10cSrcweir }
1230a585680aSDennis E. Hamilton break;
1231a585680aSDennis E. Hamilton case RES_POOLCHR_INET_VISIT:
1232a585680aSDennis E. Hamilton {
1233cdf0e10cSrcweir Color aCol( COL_RED );
1234cdf0e10cSrcweir aSet.Put( SvxColorItem( aCol, RES_CHRATR_COLOR ) );
1235cdf0e10cSrcweir aSet.Put( SvxUnderlineItem( UNDERLINE_SINGLE, RES_CHRATR_UNDERLINE ) );
1236cdf0e10cSrcweir aSet.Put( SvxLanguageItem( LANGUAGE_NONE, RES_CHRATR_LANGUAGE ) );
1237cdf0e10cSrcweir aSet.Put( SvxLanguageItem( LANGUAGE_NONE, RES_CHRATR_CJK_LANGUAGE ) );
1238cdf0e10cSrcweir aSet.Put( SvxLanguageItem( LANGUAGE_NONE, RES_CHRATR_CTL_LANGUAGE ) );
1239cdf0e10cSrcweir }
1240a585680aSDennis E. Hamilton break;
1241a585680aSDennis E. Hamilton case RES_POOLCHR_JUMPEDIT:
1242a585680aSDennis E. Hamilton {
1243cdf0e10cSrcweir Color aCol( COL_CYAN );
1244cdf0e10cSrcweir aSet.Put( SvxColorItem( aCol, RES_CHRATR_COLOR ) );
1245cdf0e10cSrcweir aSet.Put( SvxUnderlineItem( UNDERLINE_DOTTED, RES_CHRATR_UNDERLINE ) );
1246cdf0e10cSrcweir aSet.Put( SvxCaseMapItem( SVX_CASEMAP_KAPITAELCHEN, RES_CHRATR_CASEMAP ) );
1247a585680aSDennis E. Hamilton }
1248a585680aSDennis E. Hamilton break;
1249cdf0e10cSrcweir
1250a585680aSDennis E. Hamilton case RES_POOLCHR_RUBYTEXT:
1251a585680aSDennis E. Hamilton {
1252a585680aSDennis E. Hamilton long nH = ((SvxFontHeightItem*)GetDfltAttr(
1253a585680aSDennis E. Hamilton RES_CHRATR_CJK_FONTSIZE ))->GetHeight() / 2;
1254cdf0e10cSrcweir SetAllScriptItem( aSet, SvxFontHeightItem( nH, 100, RES_CHRATR_FONTSIZE));
1255cdf0e10cSrcweir aSet.Put(SvxUnderlineItem( UNDERLINE_NONE, RES_CHRATR_UNDERLINE ));
1256cdf0e10cSrcweir aSet.Put(SvxEmphasisMarkItem( EMPHASISMARK_NONE, RES_CHRATR_EMPHASIS_MARK) );
1257a585680aSDennis E. Hamilton }
1258a585680aSDennis E. Hamilton break;
1259cdf0e10cSrcweir
1260a585680aSDennis E. Hamilton case RES_POOLCHR_HTML_EMPHASIS:
1261a585680aSDennis E. Hamilton case RES_POOLCHR_HTML_CITIATION:
1262a585680aSDennis E. Hamilton case RES_POOLCHR_HTML_VARIABLE:
1263a585680aSDennis E. Hamilton {
1264cdf0e10cSrcweir SetAllScriptItem( aSet, SvxPostureItem( ITALIC_NORMAL, RES_CHRATR_POSTURE) );
1265a585680aSDennis E. Hamilton }
1266a585680aSDennis E. Hamilton break;
1267cdf0e10cSrcweir
1268a585680aSDennis E. Hamilton case RES_POOLCHR_IDX_MAIN_ENTRY:
1269a585680aSDennis E. Hamilton case RES_POOLCHR_HTML_STRONG:
1270a585680aSDennis E. Hamilton {
1271cdf0e10cSrcweir SetAllScriptItem( aSet, SvxWeightItem( WEIGHT_BOLD, RES_CHRATR_WEIGHT ));
1272a585680aSDennis E. Hamilton }
1273a585680aSDennis E. Hamilton break;
1274a585680aSDennis E. Hamilton
1275a585680aSDennis E. Hamilton case RES_POOLCHR_HTML_CODE:
1276a585680aSDennis E. Hamilton case RES_POOLCHR_HTML_SAMPLE:
1277a585680aSDennis E. Hamilton case RES_POOLCHR_HTML_KEYBOARD:
1278a585680aSDennis E. Hamilton case RES_POOLCHR_HTML_TELETYPE:
1279a585680aSDennis E. Hamilton {
1280a585680aSDennis E. Hamilton ::lcl_SetDfltFont( DEFAULTFONT_FIXED, aSet );
1281a585680aSDennis E. Hamilton }
1282a585680aSDennis E. Hamilton break;
1283cdf0e10cSrcweir case RES_POOLCHR_VERT_NUM:
1284cdf0e10cSrcweir aSet.Put( SvxCharRotateItem( 900, sal_False, RES_CHRATR_ROTATE ) );
1285cdf0e10cSrcweir break;
1286cdf0e10cSrcweir //nichts besonderes
1287cdf0e10cSrcweir // case RES_POOLCHR_HTML_DEFINSTANCE:
1288cdf0e10cSrcweir // break;
1289cdf0e10cSrcweir
1290cdf0e10cSrcweir
129164b14621SArmin Le Grand case RES_POOLFRM_FRAME:
129264b14621SArmin Le Grand {
1293cdf0e10cSrcweir if ( get(IDocumentSettingAccess::HTML_MODE) )
129464b14621SArmin Le Grand {
1295cdf0e10cSrcweir aSet.Put( SwFmtAnchor( FLY_AS_CHAR ));
1296cdf0e10cSrcweir aSet.Put( SwFmtVertOrient( 0, text::VertOrientation::LINE_CENTER, text::RelOrientation::PRINT_AREA ) );
129764b14621SArmin Le Grand aSet.Put( SwFmtSurround( SURROUND_NONE ) );
129864b14621SArmin Le Grand }
129964b14621SArmin Le Grand else
130064b14621SArmin Le Grand {
1301cdf0e10cSrcweir aSet.Put( SwFmtAnchor( FLY_AT_PARA ));
130264b14621SArmin Le Grand aSet.Put( SwFmtSurround( SURROUND_PARALLEL ) );
1303cdf0e10cSrcweir aSet.Put( SwFmtHoriOrient( 0, text::HoriOrientation::CENTER, text::RelOrientation::PRINT_AREA ) );
1304cdf0e10cSrcweir aSet.Put( SwFmtVertOrient( 0, text::VertOrientation::TOP, text::RelOrientation::PRINT_AREA ) );
130564b14621SArmin Le Grand Color aCol( COL_BLACK );
130664b14621SArmin Le Grand SvxBorderLine aLine( &aCol, DEF_LINE_WIDTH_0 );
1307cdf0e10cSrcweir SvxBoxItem aBox( RES_BOX );
130864b14621SArmin Le Grand aBox.SetLine( &aLine, BOX_LINE_TOP );
130964b14621SArmin Le Grand aBox.SetLine( &aLine, BOX_LINE_BOTTOM );
131064b14621SArmin Le Grand aBox.SetLine( &aLine, BOX_LINE_LEFT );
131164b14621SArmin Le Grand aBox.SetLine( &aLine, BOX_LINE_RIGHT );
131264b14621SArmin Le Grand aBox.SetDistance( 85 );
131364b14621SArmin Le Grand aSet.Put( aBox );
1314cdf0e10cSrcweir aSet.Put( SvxLRSpaceItem( 114, 114, 0, 0, RES_LR_SPACE ) );
1315cdf0e10cSrcweir aSet.Put( SvxULSpaceItem( 114, 114, RES_UL_SPACE ) );
131664b14621SArmin Le Grand }
131764b14621SArmin Le Grand
131864b14621SArmin Le Grand //UUUU for styles of FlyFrames do not set the FillStyle to make it a derived attribute
131964b14621SArmin Le Grand aSet.ClearItem(XATTR_FILLSTYLE);
132064b14621SArmin Le Grand }
132164b14621SArmin Le Grand break;
132264b14621SArmin Le Grand case RES_POOLFRM_GRAPHIC:
1323a585680aSDennis E. Hamilton case RES_POOLFRM_OLE:
1324a585680aSDennis E. Hamilton {
1325cdf0e10cSrcweir aSet.Put( SwFmtAnchor( FLY_AT_PARA ));
1326cdf0e10cSrcweir aSet.Put( SwFmtHoriOrient( 0, text::HoriOrientation::CENTER, text::RelOrientation::FRAME ));
1327cdf0e10cSrcweir aSet.Put( SwFmtVertOrient( 0, text::VertOrientation::TOP, text::RelOrientation::FRAME ));
1328a585680aSDennis E. Hamilton aSet.Put( SwFmtSurround( SURROUND_NONE ));
1329a585680aSDennis E. Hamilton }
1330a585680aSDennis E. Hamilton break;
1331a585680aSDennis E. Hamilton case RES_POOLFRM_FORMEL:
1332a585680aSDennis E. Hamilton {
1333cdf0e10cSrcweir aSet.Put( SwFmtAnchor( FLY_AS_CHAR ) );
1334cdf0e10cSrcweir aSet.Put( SwFmtVertOrient( 0, text::VertOrientation::CHAR_CENTER, text::RelOrientation::FRAME ) );
1335cdf0e10cSrcweir aSet.Put( SvxLRSpaceItem( 114, 114, 0, 0, RES_LR_SPACE ) );
1336a585680aSDennis E. Hamilton }
1337a585680aSDennis E. Hamilton break;
1338a585680aSDennis E. Hamilton case RES_POOLFRM_MARGINAL:
1339a585680aSDennis E. Hamilton {
1340cdf0e10cSrcweir aSet.Put( SwFmtAnchor( FLY_AT_PARA ));
1341cdf0e10cSrcweir aSet.Put( SwFmtHoriOrient( 0, text::HoriOrientation::LEFT, text::RelOrientation::FRAME ));
1342cdf0e10cSrcweir aSet.Put( SwFmtVertOrient( 0, text::VertOrientation::TOP, text::RelOrientation::FRAME ));
1343a585680aSDennis E. Hamilton aSet.Put( SwFmtSurround( SURROUND_PARALLEL ));
1344a585680aSDennis E. Hamilton // Breite 3.5 centimeter vorgegeben, als Hoehe nur den
1345a585680aSDennis E. Hamilton // min. Wert benutzen
1346a585680aSDennis E. Hamilton aSet.Put( SwFmtFrmSize( ATT_MIN_SIZE,
1347a585680aSDennis E. Hamilton GetMetricVal( CM_1 ) * 3 + GetMetricVal( CM_05 ),
1348a585680aSDennis E. Hamilton MM50 ));
1349a585680aSDennis E. Hamilton }
1350a585680aSDennis E. Hamilton break;
1351a585680aSDennis E. Hamilton case RES_POOLFRM_WATERSIGN:
1352a585680aSDennis E. Hamilton {
1353cdf0e10cSrcweir aSet.Put( SwFmtAnchor( FLY_AT_PAGE ));
1354cdf0e10cSrcweir aSet.Put( SwFmtHoriOrient( 0, text::HoriOrientation::CENTER, text::RelOrientation::FRAME ));
1355cdf0e10cSrcweir aSet.Put( SwFmtVertOrient( 0, text::VertOrientation::CENTER, text::RelOrientation::FRAME ));
1356a585680aSDennis E. Hamilton aSet.Put( SvxOpaqueItem( sal_False ));
1357a585680aSDennis E. Hamilton aSet.Put( SwFmtSurround( SURROUND_THROUGHT ));
1358a585680aSDennis E. Hamilton }
1359a585680aSDennis E. Hamilton break;
1360cdf0e10cSrcweir
1361a585680aSDennis E. Hamilton case RES_POOLFRM_LABEL:
1362a585680aSDennis E. Hamilton {
1363cdf0e10cSrcweir aSet.Put( SwFmtAnchor( FLY_AS_CHAR ) );
1364cdf0e10cSrcweir aSet.Put( SwFmtVertOrient( 0, text::VertOrientation::TOP, text::RelOrientation::FRAME ) );
1365cdf0e10cSrcweir aSet.Put( SvxLRSpaceItem( 114, 114, 0, 0, RES_LR_SPACE ) );
1366cdf0e10cSrcweir
1367cdf0e10cSrcweir SvxProtectItem aProtect( RES_PROTECT );
1368a585680aSDennis E. Hamilton aProtect.SetSizeProtect( sal_True );
1369a585680aSDennis E. Hamilton aProtect.SetPosProtect( sal_True );
1370a585680aSDennis E. Hamilton aSet.Put( aProtect );
1371cdf0e10cSrcweir
1372cdf0e10cSrcweir pNewFmt->SetAutoUpdateFmt( sal_True );
1373a585680aSDennis E. Hamilton }
1374a585680aSDennis E. Hamilton break;
1375a585680aSDennis E. Hamilton }
1376a585680aSDennis E. Hamilton if( aSet.Count() )
1377a585680aSDennis E. Hamilton {
1378cdf0e10cSrcweir {
1379cdf0e10cSrcweir pNewFmt->SetFmtAttr( aSet );
1380a585680aSDennis E. Hamilton // JP 31.08.95: erzeugen einer PoolVorlage ist keine Modifikation
1381a585680aSDennis E. Hamilton // (Bug: 18545)
1382a585680aSDennis E. Hamilton // SetModified();
1383a585680aSDennis E. Hamilton }
1384a585680aSDennis E. Hamilton }
1385a585680aSDennis E. Hamilton return pNewFmt;
1386cdf0e10cSrcweir }
1387cdf0e10cSrcweir
GetFrmFmtFromPool(sal_uInt16 nId)1388cdf0e10cSrcweir SwFrmFmt* SwDoc::GetFrmFmtFromPool( sal_uInt16 nId )
1389cdf0e10cSrcweir {
1390cdf0e10cSrcweir return (SwFrmFmt*)GetFmtFromPool( nId );
1391cdf0e10cSrcweir }
1392cdf0e10cSrcweir
GetCharFmtFromPool(sal_uInt16 nId)1393cdf0e10cSrcweir SwCharFmt* SwDoc::GetCharFmtFromPool( sal_uInt16 nId )
1394cdf0e10cSrcweir {
1395cdf0e10cSrcweir return (SwCharFmt*)GetFmtFromPool( nId );
1396cdf0e10cSrcweir }
1397cdf0e10cSrcweir
1398cdf0e10cSrcweir // pruefe, ob diese "Auto-Collection" in Dokument schon/noch
1399a585680aSDennis E. Hamilton // benutzt wird
IsPoolFmtUsed(sal_uInt16 nId) const1400cdf0e10cSrcweir bool SwDoc::IsPoolFmtUsed( sal_uInt16 nId ) const
1401cdf0e10cSrcweir {
1402cdf0e10cSrcweir SwFmt *pNewFmt = 0;
1403a585680aSDennis E. Hamilton const SvPtrarr* pArray[ 2 ];
1404a585680aSDennis E. Hamilton sal_uInt16 nArrCnt = 1;
1405a585680aSDennis E. Hamilton sal_Bool bFnd = sal_True;
1406a585680aSDennis E. Hamilton
1407a585680aSDennis E. Hamilton if( RES_POOLCHR_BEGIN <= nId && nId < RES_POOLCHR_END )
1408a585680aSDennis E. Hamilton {
1409a585680aSDennis E. Hamilton pArray[0] = pCharFmtTbl;
1410a585680aSDennis E. Hamilton }
1411a585680aSDennis E. Hamilton if( RES_POOLFRM_BEGIN <= nId && nId < RES_POOLFRM_END )
1412a585680aSDennis E. Hamilton {
1413a585680aSDennis E. Hamilton pArray[0] = pFrmFmtTbl;
1414a585680aSDennis E. Hamilton pArray[1] = pSpzFrmFmtTbl;
1415a585680aSDennis E. Hamilton nArrCnt = 2;
1416a585680aSDennis E. Hamilton }
1417a585680aSDennis E. Hamilton else
1418a585680aSDennis E. Hamilton {
1419*870262e3SDon Lewis ASSERT( sal_False, "<SwDoc::IsPoolFmtUsed(..)> - unknown page pool ID" );
1420a585680aSDennis E. Hamilton bFnd = sal_False;
1421a585680aSDennis E. Hamilton }
1422a585680aSDennis E. Hamilton
1423a585680aSDennis E. Hamilton if( bFnd )
1424a585680aSDennis E. Hamilton {
1425a585680aSDennis E. Hamilton bFnd = sal_False;
1426a585680aSDennis E. Hamilton while( nArrCnt-- && !bFnd )
1427a585680aSDennis E. Hamilton for( sal_uInt16 n = 0; !bFnd && n < (*pArray[nArrCnt]).Count(); ++n )
1428a585680aSDennis E. Hamilton if( nId == ( pNewFmt = (SwFmt*)(*pArray[ nArrCnt ] )[ n ] )->
1429a585680aSDennis E. Hamilton GetPoolFmtId() )
1430a585680aSDennis E. Hamilton bFnd = sal_True;
1431a585680aSDennis E. Hamilton }
1432a585680aSDennis E. Hamilton
1433a585680aSDennis E. Hamilton // nicht gefunden oder keine Abhaengigen ?
1434a585680aSDennis E. Hamilton if( bFnd && pNewFmt->GetDepends() )
1435a585680aSDennis E. Hamilton {
1436a585680aSDennis E. Hamilton // dann teste mal, ob es abhaengige ContentNodes im Nodes Array gibt
1437a585680aSDennis E. Hamilton // (auch indirekte fuer Format-Ableitung! )
1438cdf0e10cSrcweir SwAutoFmtGetDocNode aGetHt( &GetNodes() );
1439a585680aSDennis E. Hamilton bFnd = !pNewFmt->GetInfo( aGetHt );
1440a585680aSDennis E. Hamilton }
1441a585680aSDennis E. Hamilton else
1442a585680aSDennis E. Hamilton bFnd = sal_False;
1443cdf0e10cSrcweir
1444a585680aSDennis E. Hamilton return bFnd;
1445cdf0e10cSrcweir }
1446cdf0e10cSrcweir
1447cdf0e10cSrcweir
1448cdf0e10cSrcweir
lcl_PutStdPageSizeIntoItemSet(SwDoc * pDoc,SfxItemSet & rSet)1449ac591d86SOliver-Rainer Wittmann void lcl_PutStdPageSizeIntoItemSet( SwDoc* pDoc, SfxItemSet& rSet )
1450cdf0e10cSrcweir {
1451a585680aSDennis E. Hamilton SwPageDesc* pStdPgDsc = pDoc->GetPageDescFromPool( RES_POOLPAGE_STANDARD );
1452a585680aSDennis E. Hamilton SwFmtFrmSize aFrmSz( pStdPgDsc->GetMaster().GetFrmSize() );
1453a585680aSDennis E. Hamilton if( pStdPgDsc->GetLandscape() )
1454a585680aSDennis E. Hamilton {
1455a585680aSDennis E. Hamilton SwTwips nTmp = aFrmSz.GetHeight();
1456a585680aSDennis E. Hamilton aFrmSz.SetHeight( aFrmSz.GetWidth() );
1457a585680aSDennis E. Hamilton aFrmSz.SetWidth( nTmp );
1458a585680aSDennis E. Hamilton }
1459a585680aSDennis E. Hamilton rSet.Put( aFrmSz );
1460cdf0e10cSrcweir }
1461cdf0e10cSrcweir
GetPageDescFromPool(sal_uInt16 nId,bool bRegardLanguage)1462cdf0e10cSrcweir SwPageDesc* SwDoc::GetPageDescFromPool( sal_uInt16 nId, bool bRegardLanguage )
1463cdf0e10cSrcweir {
1464ac591d86SOliver-Rainer Wittmann ASSERT( RES_POOLPAGE_BEGIN <= nId && nId < RES_POOLPAGE_END,
1465ac591d86SOliver-Rainer Wittmann "Falsche AutoFormat-Id" );
1466cdf0e10cSrcweir
1467ac591d86SOliver-Rainer Wittmann for( sal_uInt16 n = 0; n < aPageDescs.Count(); ++n )
1468ac591d86SOliver-Rainer Wittmann {
1469ac591d86SOliver-Rainer Wittmann if ( nId == aPageDescs[ n ]->GetPoolFmtId() )
1470ac591d86SOliver-Rainer Wittmann {
1471ac591d86SOliver-Rainer Wittmann return aPageDescs[ n ];
1472ac591d86SOliver-Rainer Wittmann }
1473ac591d86SOliver-Rainer Wittmann }
1474cdf0e10cSrcweir
1475ac591d86SOliver-Rainer Wittmann if( RES_POOLPAGE_BEGIN > nId || nId >= RES_POOLPAGE_END )
1476ac591d86SOliver-Rainer Wittmann {
1477ac591d86SOliver-Rainer Wittmann // unknown page pool ID
1478*870262e3SDon Lewis ASSERT( sal_False, "<SwDoc::GetPageDescFromPool(..)> - unknown page pool ID" );
1479ac591d86SOliver-Rainer Wittmann nId = RES_POOLPAGE_BEGIN;
1480ac591d86SOliver-Rainer Wittmann }
1481cdf0e10cSrcweir
1482ac591d86SOliver-Rainer Wittmann SwPageDesc* pNewPgDsc = 0;
1483cdf0e10cSrcweir {
1484ac591d86SOliver-Rainer Wittmann const ResId aResId( sal_uInt32(RC_POOLPAGEDESC_BEGIN + nId - RES_POOLPAGE_BEGIN), *pSwResMgr );
1485ac591d86SOliver-Rainer Wittmann const String aNm( aResId );
1486ac591d86SOliver-Rainer Wittmann const bool bIsModified = IsModified();
1487cdf0e10cSrcweir
1488ac591d86SOliver-Rainer Wittmann sal_uInt16 nPageDescIdx = 0;
1489cdf0e10cSrcweir {
1490cdf0e10cSrcweir ::sw::UndoGuard const undoGuard(GetIDocumentUndoRedo());
1491ac591d86SOliver-Rainer Wittmann nPageDescIdx = MakePageDesc( aNm, 0, bRegardLanguage );
1492cdf0e10cSrcweir }
1493cdf0e10cSrcweir
1494ac591d86SOliver-Rainer Wittmann pNewPgDsc = aPageDescs[ nPageDescIdx ];
1495ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetPoolFmtId( nId );
1496ac591d86SOliver-Rainer Wittmann if ( !bIsModified )
1497ac591d86SOliver-Rainer Wittmann {
1498ac591d86SOliver-Rainer Wittmann ResetModified();
1499ac591d86SOliver-Rainer Wittmann }
1500ac591d86SOliver-Rainer Wittmann }
1501cdf0e10cSrcweir
1502cdf0e10cSrcweir SvxLRSpaceItem aLR( RES_LR_SPACE );
1503ac591d86SOliver-Rainer Wittmann {
1504ac591d86SOliver-Rainer Wittmann aLR.SetLeft( GetMetricVal( CM_1 ) * 2 );
1505ac591d86SOliver-Rainer Wittmann aLR.SetRight( aLR.GetLeft() );
1506ac591d86SOliver-Rainer Wittmann }
1507cdf0e10cSrcweir SvxULSpaceItem aUL( RES_UL_SPACE );
1508ac591d86SOliver-Rainer Wittmann {
1509ac591d86SOliver-Rainer Wittmann aUL.SetUpper( (sal_uInt16)aLR.GetLeft() );
1510ac591d86SOliver-Rainer Wittmann aUL.SetLower( (sal_uInt16)aLR.GetLeft() );
1511ac591d86SOliver-Rainer Wittmann }
1512cdf0e10cSrcweir
1513ac591d86SOliver-Rainer Wittmann SwAttrSet aSet( GetAttrPool(), aPgFrmFmtSetRange );
1514ac591d86SOliver-Rainer Wittmann bool bSetLeft = true;
1515cdf0e10cSrcweir
1516ac591d86SOliver-Rainer Wittmann switch( nId )
1517ac591d86SOliver-Rainer Wittmann {
1518ac591d86SOliver-Rainer Wittmann case RES_POOLPAGE_STANDARD: // "Default"
1519ac591d86SOliver-Rainer Wittmann {
1520ac591d86SOliver-Rainer Wittmann aSet.Put( aLR );
1521ac591d86SOliver-Rainer Wittmann aSet.Put( aUL );
1522ac591d86SOliver-Rainer Wittmann if( pNewPgDsc )
1523ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetUseOn( nsUseOnPage::PD_ALL );
1524ac591d86SOliver-Rainer Wittmann }
1525ac591d86SOliver-Rainer Wittmann break;
1526cdf0e10cSrcweir
1527ac591d86SOliver-Rainer Wittmann case RES_POOLPAGE_FIRST: // "First Page"
1528ac591d86SOliver-Rainer Wittmann case RES_POOLPAGE_REGISTER: // "Index"
1529ac591d86SOliver-Rainer Wittmann {
1530ac591d86SOliver-Rainer Wittmann lcl_PutStdPageSizeIntoItemSet( this, aSet );
1531ac591d86SOliver-Rainer Wittmann aSet.Put( aLR );
1532ac591d86SOliver-Rainer Wittmann aSet.Put( aUL );
1533ac591d86SOliver-Rainer Wittmann if( pNewPgDsc )
1534ac591d86SOliver-Rainer Wittmann {
1535ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetUseOn( nsUseOnPage::PD_ALL );
1536ac591d86SOliver-Rainer Wittmann if( RES_POOLPAGE_FIRST == nId )
1537ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetFollow( GetPageDescFromPool( RES_POOLPAGE_STANDARD ));
1538ac591d86SOliver-Rainer Wittmann }
1539ac591d86SOliver-Rainer Wittmann }
1540ac591d86SOliver-Rainer Wittmann break;
1541cdf0e10cSrcweir
1542ac591d86SOliver-Rainer Wittmann case RES_POOLPAGE_LEFT: // "Left Page"
1543ac591d86SOliver-Rainer Wittmann {
1544ac591d86SOliver-Rainer Wittmann lcl_PutStdPageSizeIntoItemSet( this, aSet );
1545ac591d86SOliver-Rainer Wittmann aSet.Put( aLR );
1546ac591d86SOliver-Rainer Wittmann aSet.Put( aUL );
1547ac591d86SOliver-Rainer Wittmann bSetLeft = false;
1548ac591d86SOliver-Rainer Wittmann if( pNewPgDsc )
1549ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetUseOn( nsUseOnPage::PD_LEFT );
1550ac591d86SOliver-Rainer Wittmann }
1551ac591d86SOliver-Rainer Wittmann break;
1552ac591d86SOliver-Rainer Wittmann case RES_POOLPAGE_RIGHT: // "Right Page"
1553ac591d86SOliver-Rainer Wittmann {
1554ac591d86SOliver-Rainer Wittmann lcl_PutStdPageSizeIntoItemSet( this, aSet );
1555ac591d86SOliver-Rainer Wittmann aSet.Put( aLR );
1556ac591d86SOliver-Rainer Wittmann aSet.Put( aUL );
1557ac591d86SOliver-Rainer Wittmann bSetLeft = false;
1558ac591d86SOliver-Rainer Wittmann if( pNewPgDsc )
1559ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetUseOn( nsUseOnPage::PD_RIGHT );
1560ac591d86SOliver-Rainer Wittmann }
1561ac591d86SOliver-Rainer Wittmann break;
1562cdf0e10cSrcweir
1563ac591d86SOliver-Rainer Wittmann case RES_POOLPAGE_JAKET: // "Envelope"
1564ac591d86SOliver-Rainer Wittmann {
1565ac591d86SOliver-Rainer Wittmann Size aPSize( SvxPaperInfo::GetPaperSize( PAPER_ENV_C65 ) );
1566ac591d86SOliver-Rainer Wittmann LandscapeSwap( aPSize );
1567ac591d86SOliver-Rainer Wittmann aSet.Put( SwFmtFrmSize( ATT_FIX_SIZE, aPSize.Width(), aPSize.Height() ));
1568ac591d86SOliver-Rainer Wittmann aLR.SetLeft( 0 ); aLR.SetRight( 0 );
1569ac591d86SOliver-Rainer Wittmann aUL.SetUpper( 0 ); aUL.SetLower( 0 );
1570ac591d86SOliver-Rainer Wittmann aSet.Put( aLR );
1571ac591d86SOliver-Rainer Wittmann aSet.Put( aUL );
1572cdf0e10cSrcweir
1573ac591d86SOliver-Rainer Wittmann if( pNewPgDsc )
1574ac591d86SOliver-Rainer Wittmann {
1575ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetUseOn( nsUseOnPage::PD_ALL );
1576ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetLandscape( sal_True );
1577ac591d86SOliver-Rainer Wittmann }
1578ac591d86SOliver-Rainer Wittmann }
1579ac591d86SOliver-Rainer Wittmann break;
1580cdf0e10cSrcweir
1581ac591d86SOliver-Rainer Wittmann case RES_POOLPAGE_HTML: // "HTML"
1582ac591d86SOliver-Rainer Wittmann {
1583ac591d86SOliver-Rainer Wittmann lcl_PutStdPageSizeIntoItemSet( this, aSet );
1584ac591d86SOliver-Rainer Wittmann aLR.SetRight( GetMetricVal( CM_1 ));
1585ac591d86SOliver-Rainer Wittmann aUL.SetUpper( (sal_uInt16)aLR.GetRight() );
1586ac591d86SOliver-Rainer Wittmann aUL.SetLower( (sal_uInt16)aLR.GetRight() );
1587ac591d86SOliver-Rainer Wittmann aSet.Put( aLR );
1588ac591d86SOliver-Rainer Wittmann aSet.Put( aUL );
1589cdf0e10cSrcweir
1590ac591d86SOliver-Rainer Wittmann if( pNewPgDsc )
1591ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetUseOn( nsUseOnPage::PD_ALL );
1592ac591d86SOliver-Rainer Wittmann }
1593ac591d86SOliver-Rainer Wittmann break;
1594ac591d86SOliver-Rainer Wittmann
1595ac591d86SOliver-Rainer Wittmann case RES_POOLPAGE_FOOTNOTE: // "Footnote"
1596ac591d86SOliver-Rainer Wittmann case RES_POOLPAGE_ENDNOTE: // "Endnote"
1597ac591d86SOliver-Rainer Wittmann {
1598ac591d86SOliver-Rainer Wittmann lcl_PutStdPageSizeIntoItemSet( this, aSet );
1599ac591d86SOliver-Rainer Wittmann aSet.Put( aLR );
1600ac591d86SOliver-Rainer Wittmann aSet.Put( aUL );
1601ac591d86SOliver-Rainer Wittmann if( pNewPgDsc )
1602ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetUseOn( nsUseOnPage::PD_ALL );
1603ac591d86SOliver-Rainer Wittmann SwPageFtnInfo aInf( pNewPgDsc->GetFtnInfo() );
1604ac591d86SOliver-Rainer Wittmann aInf.SetLineWidth( 0 );
1605ac591d86SOliver-Rainer Wittmann aInf.SetTopDist( 0 );
1606ac591d86SOliver-Rainer Wittmann aInf.SetBottomDist( 0 );
1607ac591d86SOliver-Rainer Wittmann pNewPgDsc->SetFtnInfo( aInf );
1608ac591d86SOliver-Rainer Wittmann }
1609a585680aSDennis E. Hamilton break;
1610ac591d86SOliver-Rainer Wittmann
1611ac591d86SOliver-Rainer Wittmann case RES_POOLPAGE_LANDSCAPE: // "Landscape"
1612cdf0e10cSrcweir {
1613cdf0e10cSrcweir SwPageDesc* pStdPgDsc = this->GetPageDescFromPool( RES_POOLPAGE_STANDARD );
1614cdf0e10cSrcweir SwFmtFrmSize aFrmSz( pStdPgDsc->GetMaster().GetFrmSize() );
1615ac591d86SOliver-Rainer Wittmann if ( !pStdPgDsc->GetLandscape() )
1616ac591d86SOliver-Rainer Wittmann {
1617ac591d86SOliver-Rainer Wittmann const SwTwips nTmp = aFrmSz.GetHeight();
1618ac591d86SOliver-Rainer Wittmann aFrmSz.SetHeight( aFrmSz.GetWidth() );
1619ac591d86SOliver-Rainer Wittmann aFrmSz.SetWidth( nTmp );
1620ac591d86SOliver-Rainer Wittmann }
1621cdf0e10cSrcweir aSet.Put( aFrmSz );
1622cdf0e10cSrcweir aSet.Put( aLR );
1623cdf0e10cSrcweir aSet.Put( aUL );
1624cdf0e10cSrcweir if( pNewPgDsc )
1625cdf0e10cSrcweir {
1626cdf0e10cSrcweir pNewPgDsc->SetUseOn( nsUseOnPage::PD_ALL );
1627cdf0e10cSrcweir pNewPgDsc->SetLandscape( sal_True );
1628cdf0e10cSrcweir }
1629ac591d86SOliver-Rainer Wittmann }
1630ac591d86SOliver-Rainer Wittmann break;
1631cdf0e10cSrcweir
1632ac591d86SOliver-Rainer Wittmann }
1633cdf0e10cSrcweir
1634ac591d86SOliver-Rainer Wittmann if( aSet.Count() )
1635ac591d86SOliver-Rainer Wittmann {
1636ac591d86SOliver-Rainer Wittmann if( bSetLeft )
1637ac591d86SOliver-Rainer Wittmann pNewPgDsc->GetLeft().SetFmtAttr( aSet );
1638ac591d86SOliver-Rainer Wittmann pNewPgDsc->GetMaster().SetFmtAttr( aSet );
1639ac591d86SOliver-Rainer Wittmann }
1640ac591d86SOliver-Rainer Wittmann return pNewPgDsc;
1641cdf0e10cSrcweir }
1642cdf0e10cSrcweir
GetNumRuleFromPool(sal_uInt16 nId)1643cdf0e10cSrcweir SwNumRule* SwDoc::GetNumRuleFromPool( sal_uInt16 nId )
1644cdf0e10cSrcweir {
1645a585680aSDennis E. Hamilton ASSERT( RES_POOLNUMRULE_BEGIN <= nId && nId < RES_POOLNUMRULE_END,
1646a585680aSDennis E. Hamilton "Falsche AutoFormat-Id" );
1647cdf0e10cSrcweir
1648cdf0e10cSrcweir SwNumRule* pNewRule;
1649a585680aSDennis E. Hamilton sal_uInt16 n;
1650cdf0e10cSrcweir
1651a585680aSDennis E. Hamilton for( n = 0; n < GetNumRuleTbl().Count(); ++n )
1652a585680aSDennis E. Hamilton if( nId == ( pNewRule = GetNumRuleTbl()[ n ] )->GetPoolFmtId() )
1653a585680aSDennis E. Hamilton {
1654cdf0e10cSrcweir return pNewRule;
1655a585680aSDennis E. Hamilton }
1656cdf0e10cSrcweir
1657a585680aSDennis E. Hamilton // Fehlerfall: unbekannte Poolvorlage
1658a585680aSDennis E. Hamilton if( RES_POOLNUMRULE_BEGIN > nId || nId >= RES_POOLNUMRULE_END )
1659a585680aSDennis E. Hamilton {
1660*870262e3SDon Lewis ASSERT( sal_False, "<SwDoc::GetNumRuleFromPool(..)> - unknown page pool ID" );
1661a585680aSDennis E. Hamilton nId = RES_POOLNUMRULE_BEGIN;
1662a585680aSDennis E. Hamilton }
1663cdf0e10cSrcweir
1664a585680aSDennis E. Hamilton ResId aResId( sal_uInt32(RC_POOLNUMRULE_BEGIN + nId - RES_POOLNUMRULE_BEGIN), *pSwResMgr );
1665a585680aSDennis E. Hamilton String aNm( aResId );
1666cdf0e10cSrcweir
1667a585680aSDennis E. Hamilton SwCharFmt *pNumCFmt = 0, *pBullCFmt = 0;
1668cdf0e10cSrcweir
1669cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1670cdf0e10cSrcweir const SvxNumberFormat::SvxNumPositionAndSpaceMode eNumberFormatPositionAndSpaceMode
1671cdf0e10cSrcweir // --> OD 2008-06-06 #i89178#
1672cdf0e10cSrcweir = numfunc::GetDefaultPositionAndSpaceMode();
1673cdf0e10cSrcweir // <--
1674cdf0e10cSrcweir // <--
1675cdf0e10cSrcweir {
1676a585680aSDennis E. Hamilton sal_Bool bIsModified = IsModified();
1677cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1678cdf0e10cSrcweir n = MakeNumRule( aNm, 0, sal_False, eNumberFormatPositionAndSpaceMode );
1679cdf0e10cSrcweir // <--
1680a585680aSDennis E. Hamilton pNewRule = GetNumRuleTbl()[ n ];
1681a585680aSDennis E. Hamilton pNewRule->SetPoolFmtId( nId );
1682a585680aSDennis E. Hamilton pNewRule->SetAutoRule( sal_False );
1683a585680aSDennis E. Hamilton
1684a585680aSDennis E. Hamilton if( RES_POOLNUMRULE_NUM1 <= nId && nId <= RES_POOLNUMRULE_NUM5 )
1685a585680aSDennis E. Hamilton pNumCFmt = GetCharFmtFromPool( RES_POOLCHR_NUM_LEVEL );
1686a585680aSDennis E. Hamilton
1687a585680aSDennis E. Hamilton if( ( RES_POOLNUMRULE_BUL1 <= nId && nId <= RES_POOLNUMRULE_BUL5 ) ||
1688a585680aSDennis E. Hamilton RES_POOLNUMRULE_NUM5 == nId )
1689a585680aSDennis E. Hamilton pBullCFmt = GetCharFmtFromPool( RES_POOLCHR_NUM_LEVEL );
1690a585680aSDennis E. Hamilton
1691a585680aSDennis E. Hamilton if( !bIsModified )
1692a585680aSDennis E. Hamilton ResetModified();
1693a585680aSDennis E. Hamilton }
1694a585680aSDennis E. Hamilton
1695a585680aSDennis E. Hamilton switch( nId )
1696a585680aSDennis E. Hamilton {
1697a585680aSDennis E. Hamilton case RES_POOLNUMRULE_NUM1:
1698a585680aSDennis E. Hamilton {
1699a585680aSDennis E. Hamilton SwNumFmt aFmt;
1700cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1701cdf0e10cSrcweir aFmt.SetPositionAndSpaceMode( eNumberFormatPositionAndSpaceMode );
1702cdf0e10cSrcweir // <--
1703a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_ARABIC);
1704a585680aSDennis E. Hamilton aFmt.SetCharFmt( pNumCFmt );
1705a585680aSDennis E. Hamilton aFmt.SetStart( 1 );
1706a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
1707a585680aSDennis E. Hamilton aFmt.SetSuffix( aDotStr );
1708a585680aSDennis E. Hamilton
1709a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpace[ MAXLEVEL ] =
1710a585680aSDennis E. Hamilton {
1711cdf0e10cSrcweir // cm: 0,5 1,0 1,5 2,0 2,5 3,0 3,5 4,0 4,5 5,0
1712a585680aSDennis E. Hamilton 283, 567, 850, 1134, 1417, 1701, 1984, 2268, 2551, 2835
1713a585680aSDennis E. Hamilton };
1714cdf0e10cSrcweir #ifdef USE_MEASUREMENT
1715a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpaceInch[ MAXLEVEL ] =
1716a585680aSDennis E. Hamilton {
1717a585680aSDennis E. Hamilton 283, 567, 850, 1134, 1417, 1701, 1984, 2268, 2551, 2835
1718a585680aSDennis E. Hamilton };
1719a585680aSDennis E. Hamilton const sal_uInt16* pArr = MEASURE_METRIC ==
1720a585680aSDennis E. Hamilton SvtSysLocale().GetLocaleData().getMeasurementSystemEnum()
1721a585680aSDennis E. Hamilton ? aAbsSpace
1722a585680aSDennis E. Hamilton : aAbsSpaceInch;
1723cdf0e10cSrcweir #else
1724a585680aSDennis E. Hamilton const sal_uInt16* pArr = aAbsSpace;
1725cdf0e10cSrcweir #endif
1726cdf0e10cSrcweir
1727cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1728cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
1729cdf0e10cSrcweir {
1730cdf0e10cSrcweir aFmt.SetFirstLineOffset( - (*pArr) );
1731cdf0e10cSrcweir }
1732cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1733cdf0e10cSrcweir {
1734cdf0e10cSrcweir aFmt.SetLabelFollowedBy( SvxNumberFormat::LISTTAB );
1735cdf0e10cSrcweir aFmt.SetFirstLineIndent( - (*pArr) );
1736cdf0e10cSrcweir }
1737cdf0e10cSrcweir // <--
1738a585680aSDennis E. Hamilton for( n = 0; n < MAXLEVEL; ++n, ++pArr )
1739a585680aSDennis E. Hamilton {
1740cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1741cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
1742cdf0e10cSrcweir {
1743cdf0e10cSrcweir aFmt.SetAbsLSpace( *pArr );
1744cdf0e10cSrcweir }
1745cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1746cdf0e10cSrcweir {
1747cdf0e10cSrcweir aFmt.SetListtabPos( *pArr );
1748cdf0e10cSrcweir aFmt.SetIndentAt( *pArr );
1749cdf0e10cSrcweir }
1750cdf0e10cSrcweir // <--
1751a585680aSDennis E. Hamilton pNewRule->Set( n, aFmt );
1752a585680aSDennis E. Hamilton }
1753a585680aSDennis E. Hamilton }
1754a585680aSDennis E. Hamilton break;
1755a585680aSDennis E. Hamilton
1756a585680aSDennis E. Hamilton case RES_POOLNUMRULE_NUM2:
1757a585680aSDennis E. Hamilton {
1758a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpace[ MAXLEVEL ] =
1759a585680aSDennis E. Hamilton {
1760a585680aSDennis E. Hamilton 283, 283, 567, 709, // 0.50, 0.50, 1.00, 1.25
1761a585680aSDennis E. Hamilton 850, 1021, 1304, 1474, // 1.50, 1.80, 2.30, 2.60
1762a585680aSDennis E. Hamilton 1588, 1758 // 2.80, 3.10
1763a585680aSDennis E. Hamilton };
1764cdf0e10cSrcweir
1765cdf0e10cSrcweir #ifdef USE_MEASUREMENT
1766a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpaceInch[ MAXLEVEL ] =
1767a585680aSDennis E. Hamilton {
1768a585680aSDennis E. Hamilton 385, 385, 770, 963,
1769a585680aSDennis E. Hamilton 1155, 1386, 1771, 2002,
1770a585680aSDennis E. Hamilton 2156, 2387
1771a585680aSDennis E. Hamilton };
1772a585680aSDennis E. Hamilton
1773a585680aSDennis E. Hamilton const sal_uInt16* pArr = MEASURE_METRIC ==
1774a585680aSDennis E. Hamilton SvtSysLocale().GetLocaleData().getMeasurementSystemEnum()
1775a585680aSDennis E. Hamilton ? aAbsSpace
1776a585680aSDennis E. Hamilton : aAbsSpaceInch;
1777cdf0e10cSrcweir #else
1778a585680aSDennis E. Hamilton const sal_uInt16* pArr = aAbsSpace;
1779cdf0e10cSrcweir #endif
1780a585680aSDennis E. Hamilton SwNumFmt aFmt;
1781cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1782cdf0e10cSrcweir aFmt.SetPositionAndSpaceMode( eNumberFormatPositionAndSpaceMode );
1783cdf0e10cSrcweir // <--
1784a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_ARABIC);
1785a585680aSDennis E. Hamilton aFmt.SetCharFmt( pNumCFmt );
1786a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
1787cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1788cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1789cdf0e10cSrcweir {
1790cdf0e10cSrcweir aFmt.SetLabelFollowedBy( SvxNumberFormat::LISTTAB );
1791cdf0e10cSrcweir }
1792cdf0e10cSrcweir // <--
1793a585680aSDennis E. Hamilton sal_uInt16 nSpace = 0;
1794a585680aSDennis E. Hamilton for( n = 0; n < MAXLEVEL; ++n )
1795a585680aSDennis E. Hamilton {
1796cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1797cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
1798cdf0e10cSrcweir {
1799cdf0e10cSrcweir aFmt.SetAbsLSpace( nSpace = nSpace + pArr[ n ] );
1800cdf0e10cSrcweir aFmt.SetFirstLineOffset( - pArr[ n ] );
1801cdf0e10cSrcweir }
1802cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1803cdf0e10cSrcweir {
1804cdf0e10cSrcweir aFmt.SetListtabPos( nSpace = nSpace + pArr[ n ] );
1805cdf0e10cSrcweir aFmt.SetIndentAt( nSpace );
1806cdf0e10cSrcweir aFmt.SetFirstLineIndent( - pArr[ n ] );
1807cdf0e10cSrcweir }
1808cdf0e10cSrcweir // <--
1809a585680aSDennis E. Hamilton aFmt.SetStart( n+1 );
1810a585680aSDennis E. Hamilton pNewRule->Set( n, aFmt );
1811a585680aSDennis E. Hamilton }
1812a585680aSDennis E. Hamilton }
1813a585680aSDennis E. Hamilton break;
1814a585680aSDennis E. Hamilton case RES_POOLNUMRULE_NUM3:
1815a585680aSDennis E. Hamilton {
1816a585680aSDennis E. Hamilton SwNumFmt aFmt;
1817cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1818cdf0e10cSrcweir aFmt.SetPositionAndSpaceMode( eNumberFormatPositionAndSpaceMode );
1819cdf0e10cSrcweir // <--
1820a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_ARABIC);
1821a585680aSDennis E. Hamilton aFmt.SetCharFmt( pNumCFmt );
1822a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
1823cdf0e10cSrcweir
1824cdf0e10cSrcweir sal_uInt16 nOffs = GetMetricVal( CM_1 ) * 3;
1825cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1826cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
1827cdf0e10cSrcweir {
1828cdf0e10cSrcweir aFmt.SetFirstLineOffset( - nOffs );
1829cdf0e10cSrcweir }
1830cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1831cdf0e10cSrcweir {
1832cdf0e10cSrcweir aFmt.SetLabelFollowedBy( SvxNumberFormat::LISTTAB );
1833cdf0e10cSrcweir aFmt.SetFirstLineIndent( - nOffs );
1834cdf0e10cSrcweir }
1835cdf0e10cSrcweir // <--
1836cdf0e10cSrcweir
1837a585680aSDennis E. Hamilton for( n = 0; n < MAXLEVEL; ++n )
1838a585680aSDennis E. Hamilton {
1839cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1840cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
1841cdf0e10cSrcweir {
1842cdf0e10cSrcweir aFmt.SetAbsLSpace( (n+1) * nOffs );
1843cdf0e10cSrcweir }
1844cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1845cdf0e10cSrcweir {
1846cdf0e10cSrcweir aFmt.SetListtabPos( (n+1) * nOffs );
1847cdf0e10cSrcweir aFmt.SetIndentAt( (n+1) * nOffs );
1848cdf0e10cSrcweir }
1849cdf0e10cSrcweir // <--
1850cdf0e10cSrcweir aFmt.SetStart( n+1 );
1851a585680aSDennis E. Hamilton pNewRule->Set( n, aFmt );
1852a585680aSDennis E. Hamilton }
1853a585680aSDennis E. Hamilton }
1854a585680aSDennis E. Hamilton break;
1855a585680aSDennis E. Hamilton case RES_POOLNUMRULE_NUM4:
1856a585680aSDennis E. Hamilton {
1857a585680aSDennis E. Hamilton SwNumFmt aFmt;
1858cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1859cdf0e10cSrcweir aFmt.SetPositionAndSpaceMode( eNumberFormatPositionAndSpaceMode );
1860cdf0e10cSrcweir // <--
1861a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_ROMAN_UPPER);
1862a585680aSDennis E. Hamilton aFmt.SetCharFmt( pNumCFmt );
1863a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
1864a585680aSDennis E. Hamilton aFmt.SetSuffix( aDotStr );
1865cdf0e10cSrcweir
1866a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpace[ MAXLEVEL ] =
1867a585680aSDennis E. Hamilton {
1868cdf0e10cSrcweir // cm: 0,5 1,0 1,5 2,0 2,5 3,0 3,5 4,0 4,5 5,0
1869a585680aSDennis E. Hamilton 283, 567, 850, 1134, 1417, 1701, 1984, 2268, 2551, 2835
1870a585680aSDennis E. Hamilton };
1871cdf0e10cSrcweir #ifdef USE_MEASUREMENT
1872a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpaceInch[ MAXLEVEL ] =
1873a585680aSDennis E. Hamilton {
1874a585680aSDennis E. Hamilton 283, 567, 850, 1134, 1417, 1701, 1984, 2268, 2551, 2835
1875a585680aSDennis E. Hamilton };
1876a585680aSDennis E. Hamilton const sal_uInt16* pArr = MEASURE_METRIC ==
1877a585680aSDennis E. Hamilton SvtSysLocale().GetLocaleData().getMeasurementSystemEnum()
1878a585680aSDennis E. Hamilton ? aAbsSpace
1879a585680aSDennis E. Hamilton : aAbsSpaceInch;
1880cdf0e10cSrcweir #else
1881a585680aSDennis E. Hamilton const sal_uInt16* pArr = aAbsSpace;
1882cdf0e10cSrcweir #endif
1883cdf0e10cSrcweir
1884cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1885cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
1886cdf0e10cSrcweir {
1887cdf0e10cSrcweir aFmt.SetFirstLineOffset( - (*pArr) );
1888cdf0e10cSrcweir }
1889cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1890cdf0e10cSrcweir {
1891cdf0e10cSrcweir aFmt.SetLabelFollowedBy( SvxNumberFormat::SPACE );
1892cdf0e10cSrcweir aFmt.SetFirstLineIndent( - (*pArr) );
1893cdf0e10cSrcweir }
1894cdf0e10cSrcweir // <--
1895a585680aSDennis E. Hamilton for( n = 0; n < MAXLEVEL; ++n, ++pArr )
1896a585680aSDennis E. Hamilton {
1897a585680aSDennis E. Hamilton aFmt.SetStart( n + 1 );
1898cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1899cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
1900cdf0e10cSrcweir {
1901cdf0e10cSrcweir aFmt.SetAbsLSpace( *pArr );
1902cdf0e10cSrcweir }
1903cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1904cdf0e10cSrcweir {
1905cdf0e10cSrcweir aFmt.SetListtabPos( *pArr );
1906cdf0e10cSrcweir aFmt.SetIndentAt( *pArr );
1907cdf0e10cSrcweir }
1908cdf0e10cSrcweir // <--
1909a585680aSDennis E. Hamilton pNewRule->Set( n, aFmt );
1910a585680aSDennis E. Hamilton }
1911a585680aSDennis E. Hamilton }
1912a585680aSDennis E. Hamilton break;
1913a585680aSDennis E. Hamilton case RES_POOLNUMRULE_NUM5:
1914a585680aSDennis E. Hamilton {
1915a585680aSDennis E. Hamilton // [ First, LSpace ]
1916a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpace0to2[] =
1917a585680aSDennis E. Hamilton {
1918a585680aSDennis E. Hamilton 227, 227, // 0.40, 0.40,
1919a585680aSDennis E. Hamilton 369, 624, // 0.65, 1.10,
1920a585680aSDennis E. Hamilton 255, 879 // 0.45, 1.55
1921a585680aSDennis E. Hamilton };
1922cdf0e10cSrcweir
1923cdf0e10cSrcweir #ifdef USE_MEASUREMENT
1924a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpaceInch0to2[] =
1925a585680aSDennis E. Hamilton {
1926a585680aSDennis E. Hamilton 308, 308,
1927a585680aSDennis E. Hamilton 501, 847,
1928a585680aSDennis E. Hamilton 347, 1194
1929a585680aSDennis E. Hamilton };
1930a585680aSDennis E. Hamilton const sal_uInt16* pArr0to2 = MEASURE_METRIC ==
1931a585680aSDennis E. Hamilton SvtSysLocale().GetLocaleData().getMeasurementSystemEnum()
1932a585680aSDennis E. Hamilton ? aAbsSpace0to2
1933a585680aSDennis E. Hamilton : aAbsSpaceInch0to2;
1934cdf0e10cSrcweir #else
1935a585680aSDennis E. Hamilton const sal_uInt16* pArr0to2 = aAbsSpace0to2;
1936cdf0e10cSrcweir #endif
1937a585680aSDennis E. Hamilton SwNumFmt aFmt;
1938cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1939cdf0e10cSrcweir aFmt.SetPositionAndSpaceMode( eNumberFormatPositionAndSpaceMode );
1940cdf0e10cSrcweir // <--
1941a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_ARABIC);
1942a585680aSDennis E. Hamilton aFmt.SetStart( 1 );
1943a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
1944a585680aSDennis E. Hamilton aFmt.SetSuffix( aDotStr );
1945cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1946cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1947cdf0e10cSrcweir {
1948cdf0e10cSrcweir aFmt.SetLabelFollowedBy( SvxNumberFormat::LISTTAB );
1949cdf0e10cSrcweir }
1950cdf0e10cSrcweir // <--
1951cdf0e10cSrcweir
1952cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1953cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
1954cdf0e10cSrcweir {
1955cdf0e10cSrcweir aFmt.SetFirstLineOffset( -pArr0to2[0] ); // == 0.40 cm
1956cdf0e10cSrcweir aFmt.SetAbsLSpace( pArr0to2[1] ); // == 0.40 cm
1957cdf0e10cSrcweir }
1958cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1959cdf0e10cSrcweir {
1960cdf0e10cSrcweir aFmt.SetFirstLineIndent( -pArr0to2[0] );
1961cdf0e10cSrcweir aFmt.SetListtabPos( pArr0to2[1] );
1962cdf0e10cSrcweir aFmt.SetIndentAt( pArr0to2[1] );
1963cdf0e10cSrcweir }
1964cdf0e10cSrcweir // <--
1965cdf0e10cSrcweir
1966a585680aSDennis E. Hamilton aFmt.SetCharFmt( pNumCFmt );
1967a585680aSDennis E. Hamilton pNewRule->Set( 0, aFmt );
1968cdf0e10cSrcweir
1969a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 2 );
1970a585680aSDennis E. Hamilton aFmt.SetStart( 2 );
1971cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1972cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
1973cdf0e10cSrcweir {
1974cdf0e10cSrcweir aFmt.SetFirstLineOffset( -pArr0to2[2] ); // == 0.65 cm
1975cdf0e10cSrcweir aFmt.SetAbsLSpace( pArr0to2[3] ); // == 1.10 cm
1976cdf0e10cSrcweir }
1977cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1978cdf0e10cSrcweir {
1979cdf0e10cSrcweir aFmt.SetFirstLineIndent( -pArr0to2[2] );
1980cdf0e10cSrcweir aFmt.SetListtabPos( pArr0to2[3] );
1981cdf0e10cSrcweir aFmt.SetIndentAt( pArr0to2[3] );
1982cdf0e10cSrcweir }
1983cdf0e10cSrcweir // <--
1984a585680aSDennis E. Hamilton pNewRule->Set( 1, aFmt );
1985cdf0e10cSrcweir
1986a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_CHARS_LOWER_LETTER);
1987a585680aSDennis E. Hamilton aFmt.SetSuffix( ')');
1988a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
1989a585680aSDennis E. Hamilton aFmt.SetStart( 3 );
1990cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
1991cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
1992cdf0e10cSrcweir {
1993cdf0e10cSrcweir aFmt.SetFirstLineOffset( - pArr0to2[4] ); // == 0.45cm
1994cdf0e10cSrcweir aFmt.SetAbsLSpace( pArr0to2[5] ); // == 1.55 cm
1995cdf0e10cSrcweir }
1996cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
1997cdf0e10cSrcweir {
1998cdf0e10cSrcweir aFmt.SetFirstLineIndent( -pArr0to2[4] );
1999cdf0e10cSrcweir aFmt.SetListtabPos( pArr0to2[5] );
2000cdf0e10cSrcweir aFmt.SetIndentAt( pArr0to2[5] );
2001cdf0e10cSrcweir }
2002cdf0e10cSrcweir // <--
2003a585680aSDennis E. Hamilton pNewRule->Set( 2, aFmt );
2004cdf0e10cSrcweir
2005cdf0e10cSrcweir
2006a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_CHAR_SPECIAL);
2007a585680aSDennis E. Hamilton aFmt.SetCharFmt( pBullCFmt );
2008cdf0e10cSrcweir // --> OD 2006-06-29 #6440955#
2009cdf0e10cSrcweir aFmt.SetBulletFont( &numfunc::GetDefBulletFont() );
2010cdf0e10cSrcweir // <--
2011a585680aSDennis E. Hamilton aFmt.SetBulletChar( cBulletChar );
2012a585680aSDennis E. Hamilton sal_uInt16 nOffs = GetMetricVal( CM_01 ) * 4,
2013a585680aSDennis E. Hamilton nOffs2 = GetMetricVal( CM_1 ) * 2;
2014cdf0e10cSrcweir
2015cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2016cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2017cdf0e10cSrcweir {
2018cdf0e10cSrcweir aFmt.SetFirstLineOffset( - nOffs );
2019cdf0e10cSrcweir }
2020cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2021cdf0e10cSrcweir {
2022cdf0e10cSrcweir aFmt.SetFirstLineIndent( - nOffs );
2023cdf0e10cSrcweir }
2024cdf0e10cSrcweir // <--
2025a585680aSDennis E. Hamilton aFmt.SetSuffix( aEmptyStr );
2026a585680aSDennis E. Hamilton for( n = 3; n < MAXLEVEL; ++n )
2027a585680aSDennis E. Hamilton {
2028a585680aSDennis E. Hamilton aFmt.SetStart( n+1 );
2029cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2030cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2031cdf0e10cSrcweir {
2032cdf0e10cSrcweir aFmt.SetAbsLSpace( nOffs2 + ((n-3) * nOffs) );
2033cdf0e10cSrcweir }
2034cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2035cdf0e10cSrcweir {
2036cdf0e10cSrcweir aFmt.SetListtabPos( nOffs2 + ((n-3) * nOffs) );
2037cdf0e10cSrcweir aFmt.SetIndentAt( nOffs2 + ((n-3) * nOffs) );
2038cdf0e10cSrcweir }
2039cdf0e10cSrcweir // <--
2040a585680aSDennis E. Hamilton pNewRule->Set( n, aFmt );
2041a585680aSDennis E. Hamilton }
2042a585680aSDennis E. Hamilton }
2043a585680aSDennis E. Hamilton break;
2044a585680aSDennis E. Hamilton
2045a585680aSDennis E. Hamilton case RES_POOLNUMRULE_BUL1:
2046a585680aSDennis E. Hamilton {
2047a585680aSDennis E. Hamilton SwNumFmt aFmt;
2048cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2049cdf0e10cSrcweir aFmt.SetPositionAndSpaceMode( eNumberFormatPositionAndSpaceMode );
2050cdf0e10cSrcweir // <--
2051a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_CHAR_SPECIAL);
2052a585680aSDennis E. Hamilton aFmt.SetCharFmt( pBullCFmt );
2053a585680aSDennis E. Hamilton aFmt.SetStart( 1 );
2054a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
2055cdf0e10cSrcweir // --> OD 2006-06-29 #6440955#
2056cdf0e10cSrcweir aFmt.SetBulletFont( &numfunc::GetDefBulletFont() );
2057cdf0e10cSrcweir // <--
2058cdf0e10cSrcweir aFmt.SetBulletChar( cBulletChar );
2059cdf0e10cSrcweir
2060a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpace[ MAXLEVEL ] =
2061a585680aSDennis E. Hamilton {
2062cdf0e10cSrcweir // cm: 0,4 0,8 1,2 1,6 2,0 2,4 2,8 3,2 3,6 4,0
2063a585680aSDennis E. Hamilton 227, 454, 680, 907, 1134, 1361, 1587, 1814, 2041, 2268
2064a585680aSDennis E. Hamilton };
2065cdf0e10cSrcweir #ifdef USE_MEASUREMENT
2066a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpaceInch[ MAXLEVEL ] =
2067a585680aSDennis E. Hamilton {
2068a585680aSDennis E. Hamilton 227, 454, 680, 907, 1134, 1361, 1587, 1814, 2041, 2268
2069a585680aSDennis E. Hamilton };
2070a585680aSDennis E. Hamilton const sal_uInt16* pArr = MEASURE_METRIC ==
2071a585680aSDennis E. Hamilton SvtSysLocale().GetLocaleData().getMeasurementSystemEnum()
2072a585680aSDennis E. Hamilton ? aAbsSpace
2073a585680aSDennis E. Hamilton : aAbsSpaceInch;
2074cdf0e10cSrcweir #else
2075a585680aSDennis E. Hamilton const sal_uInt16* pArr = aAbsSpace;
2076cdf0e10cSrcweir #endif
2077cdf0e10cSrcweir
2078cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2079cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2080cdf0e10cSrcweir {
2081cdf0e10cSrcweir aFmt.SetFirstLineOffset( - (*pArr) );
2082cdf0e10cSrcweir }
2083cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2084cdf0e10cSrcweir {
2085cdf0e10cSrcweir aFmt.SetLabelFollowedBy( SvxNumberFormat::LISTTAB );
2086cdf0e10cSrcweir aFmt.SetFirstLineIndent( - (*pArr) );
2087cdf0e10cSrcweir }
2088cdf0e10cSrcweir // <--
2089a585680aSDennis E. Hamilton for( n = 0; n < MAXLEVEL; ++n, ++pArr )
2090a585680aSDennis E. Hamilton {
2091cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2092cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2093cdf0e10cSrcweir {
2094cdf0e10cSrcweir aFmt.SetAbsLSpace( *pArr );
2095cdf0e10cSrcweir }
2096cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2097cdf0e10cSrcweir {
2098cdf0e10cSrcweir aFmt.SetListtabPos( *pArr );
2099cdf0e10cSrcweir aFmt.SetIndentAt( *pArr );
2100cdf0e10cSrcweir }
2101cdf0e10cSrcweir // <--
2102a585680aSDennis E. Hamilton pNewRule->Set( n, aFmt );
2103a585680aSDennis E. Hamilton }
2104a585680aSDennis E. Hamilton }
2105a585680aSDennis E. Hamilton break;
2106a585680aSDennis E. Hamilton case RES_POOLNUMRULE_BUL2:
2107a585680aSDennis E. Hamilton {
2108a585680aSDennis E. Hamilton SwNumFmt aFmt;
2109cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2110cdf0e10cSrcweir aFmt.SetPositionAndSpaceMode( eNumberFormatPositionAndSpaceMode );
2111cdf0e10cSrcweir // <--
2112a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_CHAR_SPECIAL);
2113a585680aSDennis E. Hamilton aFmt.SetCharFmt( pBullCFmt );
2114a585680aSDennis E. Hamilton aFmt.SetStart( 1 );
2115a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
2116cdf0e10cSrcweir // --> OD 2006-06-29 #6440955#
2117cdf0e10cSrcweir aFmt.SetBulletFont( &numfunc::GetDefBulletFont() );
2118cdf0e10cSrcweir // <--
2119cdf0e10cSrcweir aFmt.SetBulletChar( 0x2013 );
2120cdf0e10cSrcweir
2121a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpace[ MAXLEVEL ] =
2122a585680aSDennis E. Hamilton {
2123cdf0e10cSrcweir // cm: 0,3 0,6 0,9 1,2 1,5 1,8 2,1 2,4 2,7 3,0
2124a585680aSDennis E. Hamilton 170, 340, 510, 680, 850, 1020, 1191, 1361, 1531, 1701
2125a585680aSDennis E. Hamilton };
2126cdf0e10cSrcweir #ifdef USE_MEASUREMENT
2127a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpaceInch[ MAXLEVEL ] =
2128a585680aSDennis E. Hamilton {
2129a585680aSDennis E. Hamilton 170, 340, 510, 680, 850, 1020, 1191, 1361, 1531, 1701
2130a585680aSDennis E. Hamilton };
2131a585680aSDennis E. Hamilton const sal_uInt16* pArr = MEASURE_METRIC ==
2132a585680aSDennis E. Hamilton SvtSysLocale().GetLocaleData().getMeasurementSystemEnum()
2133a585680aSDennis E. Hamilton ? aAbsSpace
2134a585680aSDennis E. Hamilton : aAbsSpaceInch;
2135cdf0e10cSrcweir #else
2136a585680aSDennis E. Hamilton const sal_uInt16* pArr = aAbsSpace;
2137cdf0e10cSrcweir #endif
2138cdf0e10cSrcweir
2139cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2140cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2141cdf0e10cSrcweir {
2142cdf0e10cSrcweir aFmt.SetFirstLineOffset( - (*pArr) );
2143cdf0e10cSrcweir }
2144cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2145cdf0e10cSrcweir {
2146cdf0e10cSrcweir aFmt.SetLabelFollowedBy( SvxNumberFormat::LISTTAB );
2147cdf0e10cSrcweir aFmt.SetFirstLineIndent( - (*pArr) );
2148cdf0e10cSrcweir }
2149cdf0e10cSrcweir // <--
2150a585680aSDennis E. Hamilton for( n = 0; n < MAXLEVEL; ++n, ++pArr )
2151a585680aSDennis E. Hamilton {
2152cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2153cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2154cdf0e10cSrcweir {
2155cdf0e10cSrcweir aFmt.SetAbsLSpace( *pArr );
2156cdf0e10cSrcweir }
2157cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2158cdf0e10cSrcweir {
2159cdf0e10cSrcweir aFmt.SetListtabPos( *pArr );
2160cdf0e10cSrcweir aFmt.SetIndentAt( *pArr );
2161cdf0e10cSrcweir }
2162cdf0e10cSrcweir // <--
2163cdf0e10cSrcweir pNewRule->Set( n, aFmt );
2164a585680aSDennis E. Hamilton }
2165a585680aSDennis E. Hamilton }
2166a585680aSDennis E. Hamilton break;
2167a585680aSDennis E. Hamilton case RES_POOLNUMRULE_BUL3:
2168a585680aSDennis E. Hamilton {
2169a585680aSDennis E. Hamilton SwNumFmt aFmt;
2170cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2171cdf0e10cSrcweir aFmt.SetPositionAndSpaceMode( eNumberFormatPositionAndSpaceMode );
2172cdf0e10cSrcweir // <--
2173a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_CHAR_SPECIAL);
2174a585680aSDennis E. Hamilton aFmt.SetCharFmt( pBullCFmt );
2175a585680aSDennis E. Hamilton aFmt.SetStart( 1 );
2176a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
2177cdf0e10cSrcweir // --> OD 2006-06-29 #6440955#
2178cdf0e10cSrcweir aFmt.SetBulletFont( &numfunc::GetDefBulletFont() );
2179cdf0e10cSrcweir // <--
2180cdf0e10cSrcweir
2181cdf0e10cSrcweir sal_uInt16 nOffs = GetMetricVal( CM_01 ) * 4;
2182cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2183cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2184cdf0e10cSrcweir {
2185cdf0e10cSrcweir aFmt.SetFirstLineOffset( - nOffs );
2186cdf0e10cSrcweir }
2187cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2188cdf0e10cSrcweir {
2189cdf0e10cSrcweir aFmt.SetLabelFollowedBy( SvxNumberFormat::LISTTAB );
2190cdf0e10cSrcweir aFmt.SetFirstLineIndent( - nOffs );
2191cdf0e10cSrcweir }
2192cdf0e10cSrcweir // <--
2193cdf0e10cSrcweir
2194a585680aSDennis E. Hamilton for( n = 0; n < MAXLEVEL; ++n )
2195a585680aSDennis E. Hamilton {
2196a585680aSDennis E. Hamilton aFmt.SetBulletChar( ( n & 1 ? 0x25a1 : 0x2611 ) );
2197cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2198cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2199cdf0e10cSrcweir {
2200cdf0e10cSrcweir aFmt.SetAbsLSpace( ((n & 1) +1) * nOffs );
2201cdf0e10cSrcweir }
2202cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2203cdf0e10cSrcweir {
2204cdf0e10cSrcweir aFmt.SetListtabPos( ((n & 1) +1) * nOffs );
2205cdf0e10cSrcweir aFmt.SetIndentAt( ((n & 1) +1) * nOffs );
2206cdf0e10cSrcweir }
2207cdf0e10cSrcweir // <--
2208a585680aSDennis E. Hamilton pNewRule->Set( n, aFmt );
2209a585680aSDennis E. Hamilton }
2210a585680aSDennis E. Hamilton }
2211a585680aSDennis E. Hamilton break;
2212a585680aSDennis E. Hamilton case RES_POOLNUMRULE_BUL4:
2213a585680aSDennis E. Hamilton {
2214a585680aSDennis E. Hamilton SwNumFmt aFmt;
2215cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2216cdf0e10cSrcweir aFmt.SetPositionAndSpaceMode( eNumberFormatPositionAndSpaceMode );
2217cdf0e10cSrcweir // <--
2218a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_CHAR_SPECIAL);
2219a585680aSDennis E. Hamilton aFmt.SetCharFmt( pBullCFmt );
2220a585680aSDennis E. Hamilton aFmt.SetStart( 1 );
2221a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
2222cdf0e10cSrcweir // --> OD 2006-06-29 #6440955#
2223cdf0e10cSrcweir aFmt.SetBulletFont( &numfunc::GetDefBulletFont() );
2224cdf0e10cSrcweir // <--
2225cdf0e10cSrcweir
2226a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpace[ MAXLEVEL ] =
2227a585680aSDennis E. Hamilton {
2228cdf0e10cSrcweir // cm: 0,4 0,8 1,2 1,6 2,0 2,4 2,8 3,2 3,6 4,0
2229a585680aSDennis E. Hamilton 227, 454, 680, 907, 1134, 1361, 1587, 1814, 2041, 2268
2230a585680aSDennis E. Hamilton };
2231cdf0e10cSrcweir #ifdef USE_MEASUREMENT
2232a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpaceInch[ MAXLEVEL ] =
2233a585680aSDennis E. Hamilton {
2234a585680aSDennis E. Hamilton 227, 454, 680, 907, 1134, 1361, 1587, 1814, 2041, 2268
2235a585680aSDennis E. Hamilton };
2236a585680aSDennis E. Hamilton const sal_uInt16* pArr = MEASURE_METRIC ==
2237a585680aSDennis E. Hamilton SvtSysLocale().GetLocaleData().getMeasurementSystemEnum()
2238a585680aSDennis E. Hamilton ? aAbsSpace
2239a585680aSDennis E. Hamilton : aAbsSpaceInch;
2240cdf0e10cSrcweir #else
2241a585680aSDennis E. Hamilton const sal_uInt16* pArr = aAbsSpace;
2242cdf0e10cSrcweir #endif
2243cdf0e10cSrcweir
2244cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2245cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2246cdf0e10cSrcweir {
2247cdf0e10cSrcweir aFmt.SetFirstLineOffset( - (*pArr) );
2248cdf0e10cSrcweir }
2249cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2250cdf0e10cSrcweir {
2251cdf0e10cSrcweir aFmt.SetLabelFollowedBy( SvxNumberFormat::SPACE );
2252cdf0e10cSrcweir aFmt.SetFirstLineIndent( - (*pArr) );
2253cdf0e10cSrcweir }
2254cdf0e10cSrcweir // <--
2255a585680aSDennis E. Hamilton for( n = 0; n < MAXLEVEL; ++n, ++pArr )
2256a585680aSDennis E. Hamilton {
2257a585680aSDennis E. Hamilton switch( n )
2258a585680aSDennis E. Hamilton {
2259a585680aSDennis E. Hamilton case 0: aFmt.SetBulletChar( 0x27a2 ); break;
2260a585680aSDennis E. Hamilton case 1: aFmt.SetBulletChar( 0xE006 ); break;
2261a585680aSDennis E. Hamilton default: aFmt.SetBulletChar( 0xE004 ); break;
2262a585680aSDennis E. Hamilton }
2263cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2264cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2265cdf0e10cSrcweir {
2266cdf0e10cSrcweir aFmt.SetAbsLSpace( *pArr );
2267cdf0e10cSrcweir }
2268cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2269cdf0e10cSrcweir {
2270cdf0e10cSrcweir aFmt.SetListtabPos( *pArr );
2271cdf0e10cSrcweir aFmt.SetIndentAt( *pArr );
2272cdf0e10cSrcweir }
2273cdf0e10cSrcweir // <--
2274a585680aSDennis E. Hamilton pNewRule->Set( n, aFmt );
2275a585680aSDennis E. Hamilton }
2276a585680aSDennis E. Hamilton }
2277a585680aSDennis E. Hamilton break;
2278a585680aSDennis E. Hamilton case RES_POOLNUMRULE_BUL5:
2279a585680aSDennis E. Hamilton {
2280a585680aSDennis E. Hamilton SwNumFmt aFmt;
2281cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2282cdf0e10cSrcweir aFmt.SetPositionAndSpaceMode( eNumberFormatPositionAndSpaceMode );
2283cdf0e10cSrcweir // <--
2284a585680aSDennis E. Hamilton aFmt.SetNumberingType(SVX_NUM_CHAR_SPECIAL);
2285a585680aSDennis E. Hamilton aFmt.SetCharFmt( pBullCFmt );
2286a585680aSDennis E. Hamilton aFmt.SetStart( 1 );
2287a585680aSDennis E. Hamilton aFmt.SetIncludeUpperLevels( 1 );
2288a585680aSDennis E. Hamilton aFmt.SetBulletChar( 0x2717 );
2289cdf0e10cSrcweir // --> OD 2006-06-29 #6440955#
2290cdf0e10cSrcweir aFmt.SetBulletFont( &numfunc::GetDefBulletFont() );
2291cdf0e10cSrcweir // <--
2292cdf0e10cSrcweir
2293a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpace[ MAXLEVEL ] =
2294a585680aSDennis E. Hamilton {
2295cdf0e10cSrcweir // cm: 0,4 0,8 1,2 1,6 2,0 2,4 2,8 3,2 3,6 4,0
2296a585680aSDennis E. Hamilton 227, 454, 680, 907, 1134, 1361, 1587, 1814, 2041, 2268
2297a585680aSDennis E. Hamilton };
2298cdf0e10cSrcweir #ifdef USE_MEASUREMENT
2299a585680aSDennis E. Hamilton static const sal_uInt16 aAbsSpaceInch[ MAXLEVEL ] =
2300a585680aSDennis E. Hamilton {
2301a585680aSDennis E. Hamilton 227, 454, 680, 907, 1134, 1361, 1587, 1814, 2041, 2268
2302a585680aSDennis E. Hamilton };
2303a585680aSDennis E. Hamilton const sal_uInt16* pArr = MEASURE_METRIC ==
2304a585680aSDennis E. Hamilton SvtSysLocale().GetLocaleData().getMeasurementSystemEnum()
2305a585680aSDennis E. Hamilton ? aAbsSpace
2306a585680aSDennis E. Hamilton : aAbsSpaceInch;
2307cdf0e10cSrcweir #else
2308a585680aSDennis E. Hamilton const sal_uInt16* pArr = aAbsSpace;
2309cdf0e10cSrcweir #endif
2310cdf0e10cSrcweir
2311cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2312cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2313cdf0e10cSrcweir {
2314cdf0e10cSrcweir aFmt.SetFirstLineOffset( - (*pArr) );
2315cdf0e10cSrcweir }
2316cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2317cdf0e10cSrcweir {
2318cdf0e10cSrcweir aFmt.SetLabelFollowedBy( SvxNumberFormat::LISTTAB );
2319cdf0e10cSrcweir aFmt.SetFirstLineIndent( - (*pArr) );
2320cdf0e10cSrcweir }
2321cdf0e10cSrcweir // <--
2322a585680aSDennis E. Hamilton for( n = 0; n < MAXLEVEL; ++n, ++pArr )
2323a585680aSDennis E. Hamilton {
2324cdf0e10cSrcweir // --> OD 2008-02-11 #newlistlevelattrs#
2325cdf0e10cSrcweir if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_WIDTH_AND_POSITION )
2326cdf0e10cSrcweir {
2327cdf0e10cSrcweir aFmt.SetAbsLSpace( *pArr );
2328cdf0e10cSrcweir }
2329cdf0e10cSrcweir else if ( eNumberFormatPositionAndSpaceMode == SvxNumberFormat::LABEL_ALIGNMENT )
2330cdf0e10cSrcweir {
2331cdf0e10cSrcweir aFmt.SetListtabPos( *pArr );
2332cdf0e10cSrcweir aFmt.SetIndentAt( *pArr );
2333cdf0e10cSrcweir }
2334cdf0e10cSrcweir // <--
2335a585680aSDennis E. Hamilton pNewRule->Set( n, aFmt );
2336a585680aSDennis E. Hamilton }
2337a585680aSDennis E. Hamilton }
2338a585680aSDennis E. Hamilton break;
2339a585680aSDennis E. Hamilton }
2340cdf0e10cSrcweir
2341cdf0e10cSrcweir return pNewRule;
2342cdf0e10cSrcweir }
2343cdf0e10cSrcweir
2344cdf0e10cSrcweir
2345cdf0e10cSrcweir
2346a585680aSDennis E. Hamilton // pruefe, ob diese "Auto-Collection" in Dokument schon/noch
2347a585680aSDennis E. Hamilton // benutzt wird
IsPoolPageDescUsed(sal_uInt16 nId) const2348cdf0e10cSrcweir bool SwDoc::IsPoolPageDescUsed( sal_uInt16 nId ) const
2349cdf0e10cSrcweir {
2350a585680aSDennis E. Hamilton ASSERT( RES_POOLPAGE_BEGIN <= nId && nId < RES_POOLPAGE_END,
2351a585680aSDennis E. Hamilton "Falsche AutoFormat-Id" );
2352a585680aSDennis E. Hamilton SwPageDesc *pNewPgDsc = 0;
2353a585680aSDennis E. Hamilton sal_Bool bFnd = sal_False;
2354a585680aSDennis E. Hamilton for( sal_uInt16 n = 0; !bFnd && n < aPageDescs.Count(); ++n )
2355cdf0e10cSrcweir {
2356a585680aSDennis E. Hamilton pNewPgDsc = aPageDescs[ n ];
2357a585680aSDennis E. Hamilton if( nId == pNewPgDsc->GetPoolFmtId() )
2358a585680aSDennis E. Hamilton bFnd = sal_True;
2359cdf0e10cSrcweir }
2360cdf0e10cSrcweir
2361a585680aSDennis E. Hamilton // nicht gefunden oder keine Abhaengigen ?
2362a585680aSDennis E. Hamilton if( !bFnd || !pNewPgDsc->GetDepends() ) // ??????
2363a585680aSDennis E. Hamilton return sal_False;
2364cdf0e10cSrcweir
2365a585680aSDennis E. Hamilton // dann teste mal, ob es abhaengige ContentNodes im Nodes Array gibt
2366a585680aSDennis E. Hamilton // (auch indirekte fuer Format-Ableitung! )
2367cdf0e10cSrcweir SwAutoFmtGetDocNode aGetHt( &GetNodes() );
2368a585680aSDennis E. Hamilton return !pNewPgDsc->GetInfo( aGetHt );
2369cdf0e10cSrcweir }
2370cdf0e10cSrcweir
2371cdf0e10cSrcweir // erfrage ob die Absatz-/Zeichen-/Rahmen-/Seiten - Vorlage benutzt wird
IsUsed(const SwModify & rModify) const2372cdf0e10cSrcweir sal_Bool SwDoc::IsUsed( const SwModify& rModify ) const
2373cdf0e10cSrcweir {
2374a585680aSDennis E. Hamilton // dann teste mal, ob es abhaengige ContentNodes im Nodes Array gibt
2375a585680aSDennis E. Hamilton // (auch indirekte fuer Format-Ableitung! )
2376cdf0e10cSrcweir SwAutoFmtGetDocNode aGetHt( &GetNodes() );
2377a585680aSDennis E. Hamilton return !rModify.GetInfo( aGetHt );
2378cdf0e10cSrcweir }
2379cdf0e10cSrcweir
2380cdf0e10cSrcweir // erfrage ob die NumRule benutzt wird
IsUsed(const SwNumRule & rRule) const2381cdf0e10cSrcweir sal_Bool SwDoc::IsUsed( const SwNumRule& rRule ) const
2382cdf0e10cSrcweir {
2383cdf0e10cSrcweir // --> OD 2008-03-04 #refactorlists#
2384cdf0e10cSrcweir // // dann teste mal, ob es abhaengige ContentNodes im Nodes Array gibt
2385cdf0e10cSrcweir // // (auch indirekte fuer Format-Ableitung! )
2386cdf0e10cSrcweir // sal_Bool bUsed = sal_False;
2387cdf0e10cSrcweir // SwAutoFmtGetDocNode aGetHt( &aNodes );
2388cdf0e10cSrcweir // SwModify* pMod;
2389cdf0e10cSrcweir // const SfxPoolItem* pItem;
2390cdf0e10cSrcweir // sal_uInt16 i, nMaxItems = GetAttrPool().GetItemCount( RES_PARATR_NUMRULE);
2391cdf0e10cSrcweir // for( i = 0; i < nMaxItems; ++i )
2392cdf0e10cSrcweir // {
2393cdf0e10cSrcweir // if( 0 != (pItem = GetAttrPool().GetItem( RES_PARATR_NUMRULE, i ) ) &&
2394cdf0e10cSrcweir // 0 != ( pMod = (SwModify*)((SwNumRuleItem*)pItem)->GetDefinedIn()) &&
2395cdf0e10cSrcweir // ((SwNumRuleItem*)pItem)->GetValue().Len() &&
2396cdf0e10cSrcweir // ((SwNumRuleItem*)pItem)->GetValue() == rRule.GetName() )
2397cdf0e10cSrcweir // {
2398cdf0e10cSrcweir // if( pMod->IsA( TYPE( SwFmt )) )
2399cdf0e10cSrcweir // {
2400cdf0e10cSrcweir // bUsed = !pMod->GetInfo( aGetHt );
2401cdf0e10cSrcweir // if( bUsed )
2402cdf0e10cSrcweir // break;
2403cdf0e10cSrcweir // }
2404cdf0e10cSrcweir // else if( ((SwTxtNode*)pMod)->GetNodes().IsDocNodes() )
2405cdf0e10cSrcweir // {
2406cdf0e10cSrcweir // bUsed = sal_True;
2407cdf0e10cSrcweir // break;
2408cdf0e10cSrcweir // }
2409cdf0e10cSrcweir // }
2410cdf0e10cSrcweir // }
2411cdf0e10cSrcweir
2412cdf0e10cSrcweir // return bUsed;
2413cdf0e10cSrcweir sal_Bool bUsed = rRule.GetTxtNodeListSize() > 0 ||
2414cdf0e10cSrcweir rRule.GetParagraphStyleListSize() > 0;
2415cdf0e10cSrcweir
2416cdf0e10cSrcweir return bUsed;
2417cdf0e10cSrcweir // <--
2418cdf0e10cSrcweir }
2419cdf0e10cSrcweir
2420a585680aSDennis E. Hamilton // Suche die Position vom Vorlagen-Namen. Ist nicht vorhanden
2421a585680aSDennis E. Hamilton // dann fuege neu ein
SetDocPattern(const String & rPatternName)2422cdf0e10cSrcweir sal_uInt16 SwDoc::SetDocPattern( const String& rPatternName )
2423cdf0e10cSrcweir {
2424a585680aSDennis E. Hamilton ASSERT( rPatternName.Len(), "kein Dokument-Vorlagenname" );
2425a585680aSDennis E. Hamilton
2426a585680aSDennis E. Hamilton sal_uInt16 nNewPos = aPatternNms.Count();
2427a585680aSDennis E. Hamilton for( sal_uInt16 n = 0; n < aPatternNms.Count(); ++n )
2428a585680aSDennis E. Hamilton if( !aPatternNms[n] )
2429a585680aSDennis E. Hamilton {
2430a585680aSDennis E. Hamilton if( nNewPos == aPatternNms.Count() )
2431a585680aSDennis E. Hamilton nNewPos = n;
2432a585680aSDennis E. Hamilton }
2433a585680aSDennis E. Hamilton else if( rPatternName == *aPatternNms[n] )
2434a585680aSDennis E. Hamilton return n;
2435a585680aSDennis E. Hamilton
2436a585680aSDennis E. Hamilton if( nNewPos < aPatternNms.Count() )
2437a585680aSDennis E. Hamilton aPatternNms.Remove( nNewPos ); // Platz wieder frei machen
2438a585680aSDennis E. Hamilton
2439a585680aSDennis E. Hamilton String* pNewNm = new String( rPatternName );
2440a585680aSDennis E. Hamilton aPatternNms.Insert( pNewNm, nNewPos );
2441a585680aSDennis E. Hamilton SetModified();
2442a585680aSDennis E. Hamilton return nNewPos;
2443cdf0e10cSrcweir }
2444cdf0e10cSrcweir
GetPoolParent(sal_uInt16 nId)2445cdf0e10cSrcweir sal_uInt16 GetPoolParent( sal_uInt16 nId )
2446cdf0e10cSrcweir {
2447a585680aSDennis E. Hamilton sal_uInt16 nRet = USHRT_MAX;
2448a585680aSDennis E. Hamilton if( POOLGRP_NOCOLLID & nId ) // 1 == Formate / 0 == Collections
2449a585680aSDennis E. Hamilton {
2450a585680aSDennis E. Hamilton switch( ( COLL_GET_RANGE_BITS | POOLGRP_NOCOLLID ) & nId )
2451a585680aSDennis E. Hamilton {
2452a585680aSDennis E. Hamilton case POOLGRP_CHARFMT:
2453a585680aSDennis E. Hamilton case POOLGRP_FRAMEFMT:
2454a585680aSDennis E. Hamilton nRet = 0; // vom default abgeleitet
2455a585680aSDennis E. Hamilton break;
2456a585680aSDennis E. Hamilton case POOLGRP_PAGEDESC:
2457a585680aSDennis E. Hamilton case POOLGRP_NUMRULE:
2458a585680aSDennis E. Hamilton break; // es gibt keine Ableitung
2459a585680aSDennis E. Hamilton }
2460a585680aSDennis E. Hamilton }
2461a585680aSDennis E. Hamilton else
2462a585680aSDennis E. Hamilton {
2463a585680aSDennis E. Hamilton switch( COLL_GET_RANGE_BITS & nId )
2464a585680aSDennis E. Hamilton {
2465a585680aSDennis E. Hamilton case COLL_TEXT_BITS:
2466a585680aSDennis E. Hamilton switch( nId )
2467a585680aSDennis E. Hamilton {
2468a585680aSDennis E. Hamilton case RES_POOLCOLL_STANDARD:
2469a585680aSDennis E. Hamilton nRet = 0; break;
2470a585680aSDennis E. Hamilton case RES_POOLCOLL_TEXT_IDENT:
2471a585680aSDennis E. Hamilton case RES_POOLCOLL_TEXT_NEGIDENT:
2472a585680aSDennis E. Hamilton case RES_POOLCOLL_TEXT_MOVE:
2473a585680aSDennis E. Hamilton case RES_POOLCOLL_CONFRONTATION:
2474a585680aSDennis E. Hamilton case RES_POOLCOLL_MARGINAL:
2475a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_TEXT; break;
2476a585680aSDennis E. Hamilton
2477a585680aSDennis E. Hamilton case RES_POOLCOLL_TEXT:
2478a585680aSDennis E. Hamilton case RES_POOLCOLL_GREETING:
2479a585680aSDennis E. Hamilton case RES_POOLCOLL_SIGNATURE:
2480a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE_BASE:
2481a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_STANDARD; break;
2482a585680aSDennis E. Hamilton
2483a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE1:
2484a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE2:
2485a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE3:
2486a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE4:
2487a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE5:
2488a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE6:
2489a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE7:
2490a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE8:
2491a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE9:
2492a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADLINE10:
2493a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_HEADLINE_BASE; break;
2494a585680aSDennis E. Hamilton }
2495a585680aSDennis E. Hamilton break;
2496a585680aSDennis E. Hamilton
2497a585680aSDennis E. Hamilton case COLL_LISTS_BITS:
2498a585680aSDennis E. Hamilton switch( nId )
2499a585680aSDennis E. Hamilton {
2500a585680aSDennis E. Hamilton case RES_POOLCOLL_NUMBUL_BASE:
2501a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_TEXT; break;
2502a585680aSDennis E. Hamilton
2503a585680aSDennis E. Hamilton default:
2504a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_NUMBUL_BASE; break;
2505a585680aSDennis E. Hamilton }
2506a585680aSDennis E. Hamilton break;
2507a585680aSDennis E. Hamilton
2508a585680aSDennis E. Hamilton case COLL_EXTRA_BITS:
2509a585680aSDennis E. Hamilton switch( nId )
2510a585680aSDennis E. Hamilton {
2511a585680aSDennis E. Hamilton case RES_POOLCOLL_FRAME:
2512a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_TEXT; break;
2513a585680aSDennis E. Hamilton
2514a585680aSDennis E. Hamilton case RES_POOLCOLL_TABLE_HDLN:
2515a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_TABLE; break;
2516cdf0e10cSrcweir
2517cdf0e10cSrcweir case RES_POOLCOLL_TABLE:
2518a585680aSDennis E. Hamilton case RES_POOLCOLL_FOOTNOTE:
2519a585680aSDennis E. Hamilton case RES_POOLCOLL_ENDNOTE:
2520a585680aSDennis E. Hamilton case RES_POOLCOLL_JAKETADRESS:
2521a585680aSDennis E. Hamilton case RES_POOLCOLL_SENDADRESS:
2522a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADER:
2523a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADERL:
2524a585680aSDennis E. Hamilton case RES_POOLCOLL_HEADERR:
2525a585680aSDennis E. Hamilton case RES_POOLCOLL_FOOTER:
2526a585680aSDennis E. Hamilton case RES_POOLCOLL_FOOTERL:
2527a585680aSDennis E. Hamilton case RES_POOLCOLL_FOOTERR:
2528a585680aSDennis E. Hamilton case RES_POOLCOLL_LABEL:
2529a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_STANDARD; break;
2530a585680aSDennis E. Hamilton
2531a585680aSDennis E. Hamilton case RES_POOLCOLL_LABEL_ABB:
2532a585680aSDennis E. Hamilton case RES_POOLCOLL_LABEL_TABLE:
2533a585680aSDennis E. Hamilton case RES_POOLCOLL_LABEL_FRAME:
2534a585680aSDennis E. Hamilton case RES_POOLCOLL_LABEL_DRAWING:
2535a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_LABEL; break;
2536a585680aSDennis E. Hamilton }
2537a585680aSDennis E. Hamilton break;
2538a585680aSDennis E. Hamilton
2539a585680aSDennis E. Hamilton case COLL_REGISTER_BITS:
2540a585680aSDennis E. Hamilton switch( nId )
2541a585680aSDennis E. Hamilton {
2542a585680aSDennis E. Hamilton case RES_POOLCOLL_REGISTER_BASE:
2543a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_STANDARD; break;
2544a585680aSDennis E. Hamilton
2545a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_USERH:
2546a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_CNTNTH:
2547a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_IDXH:
2548a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_ILLUSH:
2549a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_OBJECTH:
2550a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_TABLESH:
2551a585680aSDennis E. Hamilton case RES_POOLCOLL_TOX_AUTHORITIESH:
2552a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_HEADLINE_BASE; break;
2553a585680aSDennis E. Hamilton
2554a585680aSDennis E. Hamilton default:
2555a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_REGISTER_BASE; break;
2556a585680aSDennis E. Hamilton }
2557a585680aSDennis E. Hamilton break;
2558a585680aSDennis E. Hamilton
2559a585680aSDennis E. Hamilton case COLL_DOC_BITS:
2560a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_HEADLINE_BASE;
2561a585680aSDennis E. Hamilton break;
2562a585680aSDennis E. Hamilton
2563a585680aSDennis E. Hamilton case COLL_HTML_BITS:
2564a585680aSDennis E. Hamilton nRet = RES_POOLCOLL_STANDARD;
2565a585680aSDennis E. Hamilton break;
2566a585680aSDennis E. Hamilton }
2567a585680aSDennis E. Hamilton }
2568a585680aSDennis E. Hamilton
2569a585680aSDennis E. Hamilton return nRet;
2570cdf0e10cSrcweir }
2571cdf0e10cSrcweir
RemoveAllFmtLanguageDependencies()2572cdf0e10cSrcweir void SwDoc::RemoveAllFmtLanguageDependencies()
2573cdf0e10cSrcweir {
2574cdf0e10cSrcweir /* #106748# Restore the language independ pool defaults and styles. */
2575cdf0e10cSrcweir GetAttrPool().ResetPoolDefaultItem( RES_PARATR_ADJUST );
2576cdf0e10cSrcweir
2577a585680aSDennis E. Hamilton SwTxtFmtColl * pTxtFmtColl = GetTxtCollFromPool( RES_POOLCOLL_STANDARD );
2578cdf0e10cSrcweir
2579cdf0e10cSrcweir pTxtFmtColl->ResetFmtAttr( RES_PARATR_ADJUST );
2580cdf0e10cSrcweir /* #111214# koreans do not like SvxScriptItem(sal_True) */
2581cdf0e10cSrcweir pTxtFmtColl->ResetFmtAttr( RES_PARATR_SCRIPTSPACE );
2582cdf0e10cSrcweir
2583cdf0e10cSrcweir SvxFrameDirectionItem aFrameDir( FRMDIR_HORI_LEFT_TOP, RES_FRAMEDIR );
2584cdf0e10cSrcweir
2585a585680aSDennis E. Hamilton sal_uInt16 nCount = GetPageDescCnt();
2586a585680aSDennis E. Hamilton for( sal_uInt16 i=0; i<nCount; ++i )
2587a585680aSDennis E. Hamilton {
2588a585680aSDennis E. Hamilton SwPageDesc& rDesc = _GetPageDesc( i );
2589cdf0e10cSrcweir rDesc.GetMaster().SetFmtAttr( aFrameDir );
2590cdf0e10cSrcweir rDesc.GetLeft().SetFmtAttr( aFrameDir );
2591a585680aSDennis E. Hamilton }
2592cdf0e10cSrcweir
2593cdf0e10cSrcweir // OD 09.10.2003 #i18732# - restore static pool default for item
2594cdf0e10cSrcweir // RES_FOLLOW_TEXT_FLOW.
2595cdf0e10cSrcweir GetAttrPool().ResetPoolDefaultItem( RES_FOLLOW_TEXT_FLOW );
2596cdf0e10cSrcweir
2597cdf0e10cSrcweir //#i16874# AutoKerning as default for new documents
2598a585680aSDennis E. Hamilton GetAttrPool().ResetPoolDefaultItem( RES_CHRATR_AUTOKERN );
2599cdf0e10cSrcweir }
2600