xref: /AOO41X/main/sd/source/ui/dlg/prltempl.cxx (revision cdf0e10c4e3984b49a9502b011690b615761d4a3)
1*cdf0e10cSrcweir /*************************************************************************
2*cdf0e10cSrcweir  *
3*cdf0e10cSrcweir  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*cdf0e10cSrcweir  *
5*cdf0e10cSrcweir  * Copyright 2000, 2010 Oracle and/or its affiliates.
6*cdf0e10cSrcweir  *
7*cdf0e10cSrcweir  * OpenOffice.org - a multi-platform office productivity suite
8*cdf0e10cSrcweir  *
9*cdf0e10cSrcweir  * This file is part of OpenOffice.org.
10*cdf0e10cSrcweir  *
11*cdf0e10cSrcweir  * OpenOffice.org is free software: you can redistribute it and/or modify
12*cdf0e10cSrcweir  * it under the terms of the GNU Lesser General Public License version 3
13*cdf0e10cSrcweir  * only, as published by the Free Software Foundation.
14*cdf0e10cSrcweir  *
15*cdf0e10cSrcweir  * OpenOffice.org is distributed in the hope that it will be useful,
16*cdf0e10cSrcweir  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17*cdf0e10cSrcweir  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18*cdf0e10cSrcweir  * GNU Lesser General Public License version 3 for more details
19*cdf0e10cSrcweir  * (a copy is included in the LICENSE file that accompanied this code).
20*cdf0e10cSrcweir  *
21*cdf0e10cSrcweir  * You should have received a copy of the GNU Lesser General Public License
22*cdf0e10cSrcweir  * version 3 along with OpenOffice.org.  If not, see
23*cdf0e10cSrcweir  * <http://www.openoffice.org/license.html>
24*cdf0e10cSrcweir  * for a copy of the LGPLv3 License.
25*cdf0e10cSrcweir  *
26*cdf0e10cSrcweir  ************************************************************************/
27*cdf0e10cSrcweir 
28*cdf0e10cSrcweir // MARKER(update_precomp.py): autogen include statement, do not remove
29*cdf0e10cSrcweir #include "precompiled_sd.hxx"
30*cdf0e10cSrcweir 
31*cdf0e10cSrcweir #ifdef SD_DLLIMPLEMENTATION
32*cdf0e10cSrcweir #undef SD_DLLIMPLEMENTATION
33*cdf0e10cSrcweir #endif
34*cdf0e10cSrcweir 
35*cdf0e10cSrcweir 
36*cdf0e10cSrcweir #include "eetext.hxx"
37*cdf0e10cSrcweir 
38*cdf0e10cSrcweir #include <svx/dialogs.hrc>
39*cdf0e10cSrcweir #include <editeng/flstitem.hxx>
40*cdf0e10cSrcweir #include <svx/drawitem.hxx>
41*cdf0e10cSrcweir #include <svl/style.hxx>
42*cdf0e10cSrcweir #include <svx/tabline.hxx>
43*cdf0e10cSrcweir #include <editeng/bulitem.hxx>
44*cdf0e10cSrcweir #include <editeng/eeitem.hxx>
45*cdf0e10cSrcweir #include <editeng/brshitem.hxx>
46*cdf0e10cSrcweir #include <vcl/graph.hxx>
47*cdf0e10cSrcweir #include <editeng/lrspitem.hxx>
48*cdf0e10cSrcweir #include <editeng/numitem.hxx>
49*cdf0e10cSrcweir #include <svl/cjkoptions.hxx>
50*cdf0e10cSrcweir 
51*cdf0e10cSrcweir #include "DrawDocShell.hxx"
52*cdf0e10cSrcweir #include "glob.hrc"
53*cdf0e10cSrcweir #include "sdresid.hxx"
54*cdf0e10cSrcweir #include "prltempl.hxx"
55*cdf0e10cSrcweir #include "prltempl.hrc"
56*cdf0e10cSrcweir #include "enumdlg.hrc"
57*cdf0e10cSrcweir //#include "enumdlg.hxx"
58*cdf0e10cSrcweir #include "bulmaper.hxx"
59*cdf0e10cSrcweir #include <svl/intitem.hxx>
60*cdf0e10cSrcweir #include <svx/svxgrahicitem.hxx>
61*cdf0e10cSrcweir #include <svx/flagsdef.hxx>
62*cdf0e10cSrcweir #include "drawdoc.hxx"
63*cdf0e10cSrcweir #define IS_OUTLINE(x) (x >= PO_OUTLINE_1 && x <= PO_OUTLINE_9)
64*cdf0e10cSrcweir 
65*cdf0e10cSrcweir /*************************************************************************
66*cdf0e10cSrcweir |*
67*cdf0e10cSrcweir |* Konstruktor des Tab-Dialogs: Fuegt die Seiten zum Dialog hinzu
68*cdf0e10cSrcweir |*
69*cdf0e10cSrcweir \************************************************************************/
70*cdf0e10cSrcweir 
71*cdf0e10cSrcweir SdPresLayoutTemplateDlg::SdPresLayoutTemplateDlg( SfxObjectShell* pDocSh,
72*cdf0e10cSrcweir                                 Window* pParent,
73*cdf0e10cSrcweir 								SdResId DlgId,
74*cdf0e10cSrcweir 								SfxStyleSheetBase& rStyleBase,
75*cdf0e10cSrcweir 								PresentationObjects _ePO,
76*cdf0e10cSrcweir 								SfxStyleSheetBasePool* pSSPool ) :
77*cdf0e10cSrcweir 		SfxTabDialog		( pParent, DlgId ),
78*cdf0e10cSrcweir 		mpDocShell			( pDocSh ),
79*cdf0e10cSrcweir 		ePO 				( _ePO ),
80*cdf0e10cSrcweir 		aInputSet			( *rStyleBase.GetItemSet().GetPool(), SID_PARAM_NUM_PRESET, SID_PARAM_CUR_NUM_LEVEL ),
81*cdf0e10cSrcweir 		pOutSet				( NULL ),
82*cdf0e10cSrcweir 		pOrgSet				( &rStyleBase.GetItemSet() )
83*cdf0e10cSrcweir {
84*cdf0e10cSrcweir 	if( IS_OUTLINE(ePO))
85*cdf0e10cSrcweir 	{
86*cdf0e10cSrcweir 		// Leider sind die Itemsets unserer Stylesheets nicht discret..
87*cdf0e10cSrcweir 		const sal_uInt16* pPtr = pOrgSet->GetRanges();
88*cdf0e10cSrcweir 		sal_uInt16 p1, p2;
89*cdf0e10cSrcweir 		while( *pPtr )
90*cdf0e10cSrcweir 		{
91*cdf0e10cSrcweir 			p1 = pPtr[0];
92*cdf0e10cSrcweir 			p2 = pPtr[1];
93*cdf0e10cSrcweir 
94*cdf0e10cSrcweir 			// erstmal das ganze discret machen
95*cdf0e10cSrcweir 			while(pPtr[2] && (pPtr[2] - p2 == 1))
96*cdf0e10cSrcweir 			{
97*cdf0e10cSrcweir 				p2 = pPtr[3];
98*cdf0e10cSrcweir 				pPtr += 2;
99*cdf0e10cSrcweir 			}
100*cdf0e10cSrcweir 			aInputSet.MergeRange( p1, p2 );
101*cdf0e10cSrcweir 			pPtr += 2;
102*cdf0e10cSrcweir 		}
103*cdf0e10cSrcweir 
104*cdf0e10cSrcweir 		aInputSet.Put( rStyleBase.GetItemSet() );
105*cdf0e10cSrcweir 
106*cdf0e10cSrcweir 		// need parent-relationship
107*cdf0e10cSrcweir 		const SfxItemSet* pParentItemSet = rStyleBase.GetItemSet().GetParent();;
108*cdf0e10cSrcweir 		if( pParentItemSet )
109*cdf0e10cSrcweir 			aInputSet.SetParent( pParentItemSet );
110*cdf0e10cSrcweir 
111*cdf0e10cSrcweir 		pOutSet = new SfxItemSet( rStyleBase.GetItemSet() );
112*cdf0e10cSrcweir 		pOutSet->ClearItem();
113*cdf0e10cSrcweir 
114*cdf0e10cSrcweir 		const SfxPoolItem *pItem = NULL;
115*cdf0e10cSrcweir 
116*cdf0e10cSrcweir 		// Fals in diesem Stylesheet kein Bullet Item ist, holen wir uns
117*cdf0e10cSrcweir 		// das aus dem 'Outline 1' Stylesheet.
118*cdf0e10cSrcweir 		if( SFX_ITEM_SET != aInputSet.GetItemState(EE_PARA_NUMBULLET, sal_False, &pItem ))
119*cdf0e10cSrcweir 		{
120*cdf0e10cSrcweir 			String aStyleName((SdResId(STR_PSEUDOSHEET_OUTLINE)));
121*cdf0e10cSrcweir 			aStyleName.AppendAscii( RTL_CONSTASCII_STRINGPARAM( " 1" ) );
122*cdf0e10cSrcweir 			SfxStyleSheetBase* pFirstStyleSheet = pSSPool->Find( aStyleName, SD_STYLE_FAMILY_PSEUDO);
123*cdf0e10cSrcweir 
124*cdf0e10cSrcweir 			if(pFirstStyleSheet)
125*cdf0e10cSrcweir 				if( SFX_ITEM_SET == pFirstStyleSheet->GetItemSet().GetItemState(EE_PARA_NUMBULLET, sal_False, &pItem) )
126*cdf0e10cSrcweir 					aInputSet.Put( *pItem );
127*cdf0e10cSrcweir 		}
128*cdf0e10cSrcweir 
129*cdf0e10cSrcweir 		// gewaehlte Ebene im Dialog vorselektieren
130*cdf0e10cSrcweir 		aInputSet.Put( SfxUInt16Item( SID_PARAM_CUR_NUM_LEVEL, 1<<GetOutlineLevel()));
131*cdf0e10cSrcweir 
132*cdf0e10cSrcweir 		SetInputSet( &aInputSet );
133*cdf0e10cSrcweir 	}
134*cdf0e10cSrcweir 	else
135*cdf0e10cSrcweir 		SetInputSet( pOrgSet );
136*cdf0e10cSrcweir 
137*cdf0e10cSrcweir 	FreeResource();
138*cdf0e10cSrcweir 
139*cdf0e10cSrcweir 	SvxColorTableItem aColorTableItem(*( (const SvxColorTableItem*)
140*cdf0e10cSrcweir 		( mpDocShell->GetItem( SID_COLOR_TABLE ) ) ) );
141*cdf0e10cSrcweir 	SvxGradientListItem aGradientListItem(*( (const SvxGradientListItem*)
142*cdf0e10cSrcweir 		( mpDocShell->GetItem( SID_GRADIENT_LIST ) ) ) );
143*cdf0e10cSrcweir 	SvxBitmapListItem aBitmapListItem(*( (const SvxBitmapListItem*)
144*cdf0e10cSrcweir 		( mpDocShell->GetItem( SID_BITMAP_LIST ) ) ) );
145*cdf0e10cSrcweir 	SvxHatchListItem aHatchListItem(*( (const SvxHatchListItem*)
146*cdf0e10cSrcweir 		( mpDocShell->GetItem( SID_HATCH_LIST ) ) ) );
147*cdf0e10cSrcweir 	SvxDashListItem aDashListItem(*( (const SvxDashListItem*)
148*cdf0e10cSrcweir 		( mpDocShell->GetItem( SID_DASH_LIST ) ) ) );
149*cdf0e10cSrcweir 	SvxLineEndListItem aLineEndListItem(*( (const SvxLineEndListItem*)
150*cdf0e10cSrcweir 		( mpDocShell->GetItem( SID_LINEEND_LIST ) ) ) );
151*cdf0e10cSrcweir 
152*cdf0e10cSrcweir 	pColorTab = aColorTableItem.GetColorTable();
153*cdf0e10cSrcweir 	pDashList = aDashListItem.GetDashList();
154*cdf0e10cSrcweir 	pLineEndList = aLineEndListItem.GetLineEndList();
155*cdf0e10cSrcweir 	pGradientList = aGradientListItem.GetGradientList();
156*cdf0e10cSrcweir 	pHatchingList = aHatchListItem.GetHatchList();
157*cdf0e10cSrcweir 	pBitmapList = aBitmapListItem.GetBitmapList();
158*cdf0e10cSrcweir 
159*cdf0e10cSrcweir 	switch( DlgId.GetId() )
160*cdf0e10cSrcweir 	{
161*cdf0e10cSrcweir 		case TAB_PRES_LAYOUT_TEMPLATE:
162*cdf0e10cSrcweir 		{
163*cdf0e10cSrcweir 			AddTabPage( RID_SVXPAGE_LINE);
164*cdf0e10cSrcweir 			AddTabPage( RID_SVXPAGE_AREA);
165*cdf0e10cSrcweir 			AddTabPage( RID_SVXPAGE_SHADOW);
166*cdf0e10cSrcweir 			AddTabPage( RID_SVXPAGE_TRANSPARENCE);
167*cdf0e10cSrcweir 			AddTabPage( RID_SVXPAGE_CHAR_NAME );
168*cdf0e10cSrcweir 			AddTabPage( RID_SVXPAGE_CHAR_EFFECTS );
169*cdf0e10cSrcweir 			AddTabPage( RID_SVXPAGE_STD_PARAGRAPH );
170*cdf0e10cSrcweir     		AddTabPage( RID_SVXPAGE_TEXTATTR );
171*cdf0e10cSrcweir             AddTabPage( RID_SVXPAGE_PICK_BULLET );
172*cdf0e10cSrcweir             AddTabPage( RID_SVXPAGE_PICK_SINGLE_NUM );
173*cdf0e10cSrcweir             AddTabPage( RID_SVXPAGE_PICK_BMP );
174*cdf0e10cSrcweir             AddTabPage( RID_SVXPAGE_NUM_OPTIONS );
175*cdf0e10cSrcweir     		AddTabPage( RID_SVXPAGE_TABULATOR );
176*cdf0e10cSrcweir 		}
177*cdf0e10cSrcweir 		break;
178*cdf0e10cSrcweir 
179*cdf0e10cSrcweir 		case TAB_PRES_LAYOUT_TEMPLATE_BACKGROUND:        // background
180*cdf0e10cSrcweir 			AddTabPage( RID_SVXPAGE_AREA);
181*cdf0e10cSrcweir 		break;
182*cdf0e10cSrcweir 	}
183*cdf0e10cSrcweir 
184*cdf0e10cSrcweir 	// #112490# the tabpages Alignment, Tabs and Asian Typography are very
185*cdf0e10cSrcweir 	// usefull, except for the background style
186*cdf0e10cSrcweir 	if( DlgId.GetId() != TAB_PRES_LAYOUT_TEMPLATE_BACKGROUND )
187*cdf0e10cSrcweir 	{
188*cdf0e10cSrcweir 	    SvtCJKOptions aCJKOptions;
189*cdf0e10cSrcweir 		if( aCJKOptions.IsAsianTypographyEnabled() )
190*cdf0e10cSrcweir 			AddTabPage( RID_SVXPAGE_PARA_ASIAN );
191*cdf0e10cSrcweir 		else
192*cdf0e10cSrcweir 			RemoveTabPage( RID_SVXPAGE_PARA_ASIAN );
193*cdf0e10cSrcweir 
194*cdf0e10cSrcweir 		AddTabPage( RID_SVXPAGE_ALIGN_PARAGRAPH );
195*cdf0e10cSrcweir 	}
196*cdf0e10cSrcweir 
197*cdf0e10cSrcweir 	// Titel setzen und
198*cdf0e10cSrcweir 	// entsprechende Seiten zum Dialog hinzufuegen
199*cdf0e10cSrcweir 	String aTitle;
200*cdf0e10cSrcweir 
201*cdf0e10cSrcweir 	switch( ePO )
202*cdf0e10cSrcweir 	{
203*cdf0e10cSrcweir 		case PO_TITLE:
204*cdf0e10cSrcweir 			aTitle = String(SdResId( STR_PSEUDOSHEET_TITLE ));
205*cdf0e10cSrcweir 		break;
206*cdf0e10cSrcweir 
207*cdf0e10cSrcweir 		case PO_SUBTITLE:
208*cdf0e10cSrcweir 			aTitle = String(SdResId( STR_PSEUDOSHEET_SUBTITLE ));
209*cdf0e10cSrcweir 		break;
210*cdf0e10cSrcweir 
211*cdf0e10cSrcweir 		case PO_BACKGROUND:
212*cdf0e10cSrcweir 			aTitle = String(SdResId( STR_PSEUDOSHEET_BACKGROUND ));
213*cdf0e10cSrcweir 		break;
214*cdf0e10cSrcweir 
215*cdf0e10cSrcweir 		case PO_BACKGROUNDOBJECTS:
216*cdf0e10cSrcweir 			aTitle = String(SdResId( STR_PSEUDOSHEET_BACKGROUNDOBJECTS ));
217*cdf0e10cSrcweir 		break;
218*cdf0e10cSrcweir 
219*cdf0e10cSrcweir 		case PO_OUTLINE_1:
220*cdf0e10cSrcweir 		case PO_OUTLINE_2:
221*cdf0e10cSrcweir 		case PO_OUTLINE_3:
222*cdf0e10cSrcweir 		case PO_OUTLINE_4:
223*cdf0e10cSrcweir 		case PO_OUTLINE_5:
224*cdf0e10cSrcweir 		case PO_OUTLINE_6:
225*cdf0e10cSrcweir 		case PO_OUTLINE_7:
226*cdf0e10cSrcweir 		case PO_OUTLINE_8:
227*cdf0e10cSrcweir 		case PO_OUTLINE_9:
228*cdf0e10cSrcweir 			aTitle = String(SdResId( STR_PSEUDOSHEET_OUTLINE ));
229*cdf0e10cSrcweir 			aTitle.Append( sal_Unicode(' ') );
230*cdf0e10cSrcweir 			aTitle.Append( UniString::CreateFromInt32( ePO - PO_OUTLINE_1 + 1 ) );
231*cdf0e10cSrcweir 		break;
232*cdf0e10cSrcweir 
233*cdf0e10cSrcweir 		case PO_NOTES:
234*cdf0e10cSrcweir 			aTitle = String(SdResId( STR_PSEUDOSHEET_NOTES ));
235*cdf0e10cSrcweir 		break;
236*cdf0e10cSrcweir 	}
237*cdf0e10cSrcweir 	SetText( aTitle );
238*cdf0e10cSrcweir 
239*cdf0e10cSrcweir 	nDlgType = 1; // Vorlagen-Dialog
240*cdf0e10cSrcweir 	nPageType = 0;
241*cdf0e10cSrcweir 	nPos = 0;
242*cdf0e10cSrcweir 
243*cdf0e10cSrcweir 	nColorTableState = CT_NONE;
244*cdf0e10cSrcweir 	nBitmapListState = CT_NONE;
245*cdf0e10cSrcweir 	nGradientListState = CT_NONE;
246*cdf0e10cSrcweir 	nHatchingListState = CT_NONE;
247*cdf0e10cSrcweir }
248*cdf0e10cSrcweir 
249*cdf0e10cSrcweir // -----------------------------------------------------------------------
250*cdf0e10cSrcweir 
251*cdf0e10cSrcweir SdPresLayoutTemplateDlg::~SdPresLayoutTemplateDlg()
252*cdf0e10cSrcweir {
253*cdf0e10cSrcweir 	delete pOutSet;
254*cdf0e10cSrcweir }
255*cdf0e10cSrcweir 
256*cdf0e10cSrcweir // -----------------------------------------------------------------------
257*cdf0e10cSrcweir 
258*cdf0e10cSrcweir void SdPresLayoutTemplateDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage )
259*cdf0e10cSrcweir {	SfxAllItemSet aSet(*(aInputSet.GetPool()));
260*cdf0e10cSrcweir 	switch( nId )
261*cdf0e10cSrcweir 	{
262*cdf0e10cSrcweir 		case RID_SVXPAGE_LINE:
263*cdf0e10cSrcweir 		{
264*cdf0e10cSrcweir 			aSet.Put (SvxColorTableItem(pColorTab,SID_COLOR_TABLE));
265*cdf0e10cSrcweir 			aSet.Put (SvxDashListItem(pDashList,SID_DASH_LIST));
266*cdf0e10cSrcweir 			aSet.Put (SvxLineEndListItem(pLineEndList,SID_LINEEND_LIST));
267*cdf0e10cSrcweir 			aSet.Put (SfxUInt16Item(SID_DLG_TYPE,nDlgType));
268*cdf0e10cSrcweir 
269*cdf0e10cSrcweir 			rPage.PageCreated(aSet);
270*cdf0e10cSrcweir 		}
271*cdf0e10cSrcweir 		break;
272*cdf0e10cSrcweir 
273*cdf0e10cSrcweir 		case RID_SVXPAGE_AREA:
274*cdf0e10cSrcweir 		{
275*cdf0e10cSrcweir 			aSet.Put (SvxColorTableItem(pColorTab,SID_COLOR_TABLE));
276*cdf0e10cSrcweir 			aSet.Put (SvxGradientListItem(pGradientList,SID_GRADIENT_LIST));
277*cdf0e10cSrcweir 			aSet.Put (SvxHatchListItem(pHatchingList,SID_HATCH_LIST));
278*cdf0e10cSrcweir 			aSet.Put (SvxBitmapListItem(pBitmapList,SID_BITMAP_LIST));
279*cdf0e10cSrcweir 			aSet.Put (SfxUInt16Item(SID_PAGE_TYPE,nPageType));
280*cdf0e10cSrcweir 			aSet.Put (SfxUInt16Item(SID_DLG_TYPE,nDlgType));
281*cdf0e10cSrcweir 			aSet.Put (SfxUInt16Item(SID_TABPAGE_POS,nPos));
282*cdf0e10cSrcweir 			rPage.PageCreated(aSet);
283*cdf0e10cSrcweir 
284*cdf0e10cSrcweir 		}
285*cdf0e10cSrcweir 		break;
286*cdf0e10cSrcweir 
287*cdf0e10cSrcweir 		case RID_SVXPAGE_SHADOW:
288*cdf0e10cSrcweir 				aSet.Put (SvxColorTableItem(pColorTab,SID_COLOR_TABLE)); //add CHINA001
289*cdf0e10cSrcweir 				aSet.Put (SfxUInt16Item(SID_PAGE_TYPE,nPageType));
290*cdf0e10cSrcweir 				aSet.Put (SfxUInt16Item(SID_DLG_TYPE,nDlgType));
291*cdf0e10cSrcweir 				rPage.PageCreated(aSet);
292*cdf0e10cSrcweir 			break;
293*cdf0e10cSrcweir 
294*cdf0e10cSrcweir 		case RID_SVXPAGE_TRANSPARENCE:
295*cdf0e10cSrcweir 			aSet.Put (SfxUInt16Item(SID_PAGE_TYPE,nPageType));
296*cdf0e10cSrcweir 			aSet.Put (SfxUInt16Item(SID_DLG_TYPE,nDlgType));
297*cdf0e10cSrcweir 			rPage.PageCreated(aSet);
298*cdf0e10cSrcweir 		break;
299*cdf0e10cSrcweir 
300*cdf0e10cSrcweir 		case RID_SVXPAGE_CHAR_NAME:
301*cdf0e10cSrcweir 		{
302*cdf0e10cSrcweir 			SvxFontListItem aItem(*( (const SvxFontListItem*)
303*cdf0e10cSrcweir 				( mpDocShell->GetItem( SID_ATTR_CHAR_FONTLIST) ) ) );
304*cdf0e10cSrcweir 
305*cdf0e10cSrcweir 			aSet.Put (SvxFontListItem( aItem.GetFontList(), SID_ATTR_CHAR_FONTLIST));
306*cdf0e10cSrcweir 			rPage.PageCreated(aSet);
307*cdf0e10cSrcweir 		}
308*cdf0e10cSrcweir 		break;
309*cdf0e10cSrcweir 
310*cdf0e10cSrcweir 		case RID_SVXPAGE_CHAR_EFFECTS:
311*cdf0e10cSrcweir 			aSet.Put (SfxUInt16Item(SID_DISABLE_CTL,DISABLE_CASEMAP));
312*cdf0e10cSrcweir 			rPage.PageCreated(aSet);
313*cdf0e10cSrcweir 		break;
314*cdf0e10cSrcweir 
315*cdf0e10cSrcweir 		case RID_SVXPAGE_STD_PARAGRAPH:
316*cdf0e10cSrcweir 		break;
317*cdf0e10cSrcweir 	}
318*cdf0e10cSrcweir }
319*cdf0e10cSrcweir 
320*cdf0e10cSrcweir const SfxItemSet* SdPresLayoutTemplateDlg::GetOutputItemSet() const
321*cdf0e10cSrcweir {
322*cdf0e10cSrcweir 	if( pOutSet )
323*cdf0e10cSrcweir 	{
324*cdf0e10cSrcweir 		pOutSet->Put( *SfxTabDialog::GetOutputItemSet() );
325*cdf0e10cSrcweir 
326*cdf0e10cSrcweir 		const SvxNumBulletItem *pSvxNumBulletItem = NULL;
327*cdf0e10cSrcweir 		if( SFX_ITEM_SET == pOutSet->GetItemState(EE_PARA_NUMBULLET, sal_False, (const SfxPoolItem**)&pSvxNumBulletItem ))
328*cdf0e10cSrcweir 			SdBulletMapper::MapFontsInNumRule( *pSvxNumBulletItem->GetNumRule(), *pOutSet );
329*cdf0e10cSrcweir 		return pOutSet;
330*cdf0e10cSrcweir 	}
331*cdf0e10cSrcweir 	else
332*cdf0e10cSrcweir 		return SfxTabDialog::GetOutputItemSet();
333*cdf0e10cSrcweir }
334*cdf0e10cSrcweir 
335*cdf0e10cSrcweir // ---------------------------------------------------------------------
336*cdf0e10cSrcweir // ---------------------------------------------------------------------
337*cdf0e10cSrcweir sal_uInt16 SdPresLayoutTemplateDlg::GetOutlineLevel() const
338*cdf0e10cSrcweir {
339*cdf0e10cSrcweir 	switch( ePO )
340*cdf0e10cSrcweir 	{
341*cdf0e10cSrcweir 	case PO_OUTLINE_1: return 0;
342*cdf0e10cSrcweir 	case PO_OUTLINE_2: return 1;
343*cdf0e10cSrcweir 	case PO_OUTLINE_3: return 2;
344*cdf0e10cSrcweir 	case PO_OUTLINE_4: return 3;
345*cdf0e10cSrcweir 	case PO_OUTLINE_5: return 4;
346*cdf0e10cSrcweir 	case PO_OUTLINE_6: return 5;
347*cdf0e10cSrcweir 	case PO_OUTLINE_7: return 6;
348*cdf0e10cSrcweir 	case PO_OUTLINE_8: return 7;
349*cdf0e10cSrcweir 	case PO_OUTLINE_9: return 8;
350*cdf0e10cSrcweir 	default:
351*cdf0e10cSrcweir 		DBG_ASSERT( sal_False, "Falscher Po! [CL]");
352*cdf0e10cSrcweir 	}
353*cdf0e10cSrcweir 	return 0;
354*cdf0e10cSrcweir }
355*cdf0e10cSrcweir 
356*cdf0e10cSrcweir 
357*cdf0e10cSrcweir 
358