summaryrefslogtreecommitdiff
path: root/binfilter/bf_sd/source/core/sd_stlpool.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'binfilter/bf_sd/source/core/sd_stlpool.cxx')
-rw-r--r--binfilter/bf_sd/source/core/sd_stlpool.cxx1261
1 files changed, 1261 insertions, 0 deletions
diff --git a/binfilter/bf_sd/source/core/sd_stlpool.cxx b/binfilter/bf_sd/source/core/sd_stlpool.cxx
new file mode 100644
index 000000000000..72cf09cee42f
--- /dev/null
+++ b/binfilter/bf_sd/source/core/sd_stlpool.cxx
@@ -0,0 +1,1261 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifdef _MSC_VER
+#pragma hdrstop
+#endif
+
+#include <bf_svx/eeitemid.hxx>
+#include <bf_svx/eeitem.hxx>
+#include <bf_svx/fhgtitem.hxx>
+#include <bf_svx/colritem.hxx>
+#include <bf_svx/cntritem.hxx>
+#include <bf_svx/shdditem.hxx>
+#include <bf_svx/crsditem.hxx>
+#include <bf_svx/udlnitem.hxx>
+#include <bf_svx/wghtitem.hxx>
+#include <bf_svx/postitem.hxx>
+#include <bf_svx/fontitem.hxx>
+#include <bf_svx/xfillit0.hxx>
+#include <bf_svx/xlineit0.hxx>
+#include <bf_svx/ulspitem.hxx>
+#include <bf_svx/numitem.hxx>
+#define ITEMID_BRUSH 0
+#include <bf_svx/editeng.hxx>
+#include <bf_svtools/smplhint.hxx>
+#define ITEMID_EMPHASISMARK EE_CHAR_EMPHASISMARK
+#define ITEMID_CHARRELIEF EE_CHAR_RELIEF
+#include <bf_svx/charreliefitem.hxx>
+#include <bf_svx/emphitem.hxx>
+
+
+#include <bf_svx/svdattr.hxx>
+#include <bf_svx/bulitem.hxx>
+#include <bf_svx/lrspitem.hxx>
+#include <bf_svx/adjitem.hxx>
+#include <bf_svtools/itempool.hxx>
+
+#define _SDR_POSITIVE
+#define _SDR_ITEMS
+
+#include "stlpool.hxx"
+#include "sdresid.hxx"
+#include "stlsheet.hxx"
+#include "glob.hrc"
+#include "drawdoc.hxx"
+#include "sdmod.hxx"
+#include "sdpage.hxx"
+#include "helpids.h"
+namespace binfilter {
+
+
+/*************************************************************************
+|*
+|* Ctor
+|*
+\************************************************************************/
+
+/*N*/ SdStyleSheetPool::SdStyleSheetPool(SfxItemPool& rPool, SdDrawDocument* pDocument) :
+/*N*/ SfxStyleSheetPool(rPool),
+/*N*/ pActualStyleSheet(NULL),
+/*N*/ pDoc(pDocument)
+/*N*/ {
+/*N*/ }
+
+/*************************************************************************
+|*
+|* Dtor
+|*
+\************************************************************************/
+
+/*N*/ SdStyleSheetPool::~SdStyleSheetPool()
+/*N*/ {
+/*N*/ }
+
+/*************************************************************************
+|*
+|* Vorlage erzeugen
+|*
+\************************************************************************/
+
+/*N*/ SfxStyleSheetBase* SdStyleSheetPool::Create(const String& rName,
+/*N*/ SfxStyleFamily eFamily,
+/*N*/ USHORT nMask )
+/*N*/ {
+/*N*/ return new SdStyleSheet(rName, *this, eFamily, nMask);
+/*N*/ }
+
+
+/*************************************************************************
+|*
+|* Vorlage nach Vorbild erzeugen
+|*
+\************************************************************************/
+
+
+/*************************************************************************
+|*
+|* eine Titelvorlage fuer ein Praesentationslayout suchen
+|*
+\************************************************************************/
+
+/*N*/ SfxStyleSheetBase* SdStyleSheetPool::GetTitleSheet(const String& rLayoutName)
+/*N*/ {
+/*N*/ String aName(rLayoutName);
+/*N*/ aName.AppendAscii( RTL_CONSTASCII_STRINGPARAM( SD_LT_SEPARATOR ));
+/*N*/ aName += String(SdResId(STR_LAYOUT_TITLE));
+/*N*/ SfxStyleSheetBase* pResult = Find(aName, SD_LT_FAMILY);
+/*N*/ return pResult;
+/*N*/ }
+
+/*************************************************************************
+|*
+|* LayoutName des ersten Layouts ermitteln
+|*
+\************************************************************************/
+
+
+/*************************************************************************
+|*
+|* eine Liste der Gliederungstextvorlagen fuer ein Praesentationlayout
+|* erstellen, der Aufrufer muss die Liste wieder loeschen
+|*
+\************************************************************************/
+
+/*N*/ List* SdStyleSheetPool::CreateOutlineSheetList (const String& rLayoutName)
+/*N*/ {
+/*N*/ String aName(rLayoutName);
+/*N*/ aName.AppendAscii( RTL_CONSTASCII_STRINGPARAM( SD_LT_SEPARATOR ));
+/*N*/ aName += String(SdResId(STR_LAYOUT_OUTLINE));
+/*N*/ List* pList = new List;
+/*N*/ for (USHORT nSheet = 1; nSheet < 10; nSheet++)
+/*N*/ {
+/*N*/ String aFullName(aName);
+/*N*/ aFullName.Append( sal_Unicode( ' ' ));
+/*N*/ aFullName.Append( String::CreateFromInt32( (sal_Int32)nSheet ));
+/*N*/ SfxStyleSheetBase* pSheet = Find(aFullName, SD_LT_FAMILY);
+/*N*/ pList->Insert(pSheet, LIST_APPEND);
+/*N*/ }
+/*N*/ return pList;
+/*N*/ }
+
+/*************************************************************************
+|*
+|* StyleSheets mit Defaultweren fuer das genannte Praesentationslayout erzeugen
+|*
+\************************************************************************/
+
+/*N*/ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bool bCheck /*=sal_False*/ )
+/*N*/ {
+/*N*/ sal_Bool bCreated = sal_False;
+/*N*/
+/*N*/ SfxStyleSheetBase* pSheet = NULL;
+/*N*/
+/*N*/ String aPrefix(rLayoutName);
+/*N*/ String aSep( RTL_CONSTASCII_USTRINGPARAM( SD_LT_SEPARATOR ));
+/*N*/ aPrefix.Insert(aSep);
+/*N*/
+/*N*/ Font aLatinFont, aCJKFont, aCTLFont;
+/*N*/
+/*N*/ pDoc->getDefaultFonts( aLatinFont, aCJKFont, aCTLFont );
+/*N*/
+/*N*/ // Font fuer Titel und Gliederung
+/*N*/ SvxFontItem aSvxFontItem( aLatinFont.GetFamily(), aLatinFont.GetName(), aLatinFont.GetStyleName(), aLatinFont.GetPitch(),
+/*N*/ aLatinFont.GetCharSet(), EE_CHAR_FONTINFO );
+/*N*/
+/*N*/ SvxFontItem aSvxFontItemCJK( aCJKFont.GetFamily(), aCJKFont.GetName(), aCJKFont.GetStyleName(), aCJKFont.GetPitch(),
+/*N*/ aCJKFont.GetCharSet(), EE_CHAR_FONTINFO_CJK );
+/*N*/
+/*N*/ SvxFontItem aSvxFontItemCTL( aCTLFont.GetFamily(), aCTLFont.GetName(), aCTLFont.GetStyleName(), aCTLFont.GetPitch(),
+/*N*/ aCTLFont.GetCharSet(), EE_CHAR_FONTINFO_CTL );
+/*N*/
+/*N*/ Font aBulletFont( GetBulletFont() );
+/*N*/
+ /**************************************************************************
+ * Gliederungsebenen
+ **************************************************************************/
+/*N*/ String aName(SdResId(STR_LAYOUT_OUTLINE));
+/*N*/ String aHelpFile;
+/*N*/
+/*N*/ SfxStyleSheetBase* pParent = NULL;
+/*N*/ SvxLRSpaceItem aSvxLRSpaceItem;
+/*N*/ SvxULSpaceItem aSvxULSpaceItem;
+/*N*/ USHORT nLevel;
+/*N*/
+/*N*/ for( nLevel = 1; nLevel < 10; nLevel++)
+/*N*/ {
+/*N*/ String aLevelName(aName);
+/*N*/ aLevelName.Append( sal_Unicode( ' ' ));
+/*N*/ aLevelName.Append( String::CreateFromInt32( sal_Int32( nLevel )));
+/*N*/
+/*N*/ aLevelName.Insert(aPrefix, 0);
+/*N*/
+/*N*/ if (!Find(aLevelName, SD_LT_FAMILY))
+/*N*/ {
+/*N*/ bCreated = sal_True;
+/*N*/ pSheet = &Make(aLevelName, SD_LT_FAMILY);
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_OUTLINE + nLevel );
+/*N*/
+/*N*/ pSheet->SetParent( String() );
+/*N*/
+/*N*/ // Attributierung fuer Level 1, die anderen Ebenen "erben"
+/*N*/ if (nLevel == 1)
+/*N*/ {
+/*N*/ SfxItemSet& rSet = pSheet->GetItemSet();
+/*N*/
+/*N*/ rSet.Put(aSvxFontItem);
+/*N*/ rSet.Put(aSvxFontItemCJK);
+/*N*/ rSet.Put(aSvxFontItemCTL);
+/*N*/ rSet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC ) );
+/*N*/ rSet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CJK ) );
+/*N*/ rSet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CTL ) );
+/*N*/ rSet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT ) );
+/*N*/ rSet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CJK ) );
+/*N*/ rSet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CTL ) );
+/*N*/ rSet.Put( SvxUnderlineItem(UNDERLINE_NONE) );
+/*N*/ rSet.Put( SvxCrossedOutItem(STRIKEOUT_NONE) );
+/*N*/ rSet.Put( SvxShadowedItem(FALSE) );
+/*N*/ rSet.Put( SvxContourItem(FALSE) );
+/*N*/ rSet.Put( SvxEmphasisMarkItem(EMPHASISMARK_NONE) );
+/*N*/ rSet.Put( SvxCharReliefItem(RELIEF_NONE) );
+/*N*/ rSet.Put( SvxColorItem( Color(COL_AUTO)) );
+/*N*/ rSet.Put( XLineStyleItem(XLINE_NONE) );
+/*N*/ rSet.Put( XFillStyleItem(XFILL_NONE) );
+/*N*/
+/*N*/ if( nLevel == 1 )
+/*N*/ {
+/*N*/ Font aBulletFont( GetBulletFont() );
+/*N*/ PutNumBulletItem( pSheet, aBulletFont );
+/*N*/ }
+/*N*/ }
+/*N*/
+/*N*/ ULONG nFontSize = 20;
+/*N*/ short nFirstIndent = -600;
+/*N*/ USHORT nIndent = nLevel * 1200;
+/*N*/ USHORT nLower = 100;
+/*N*/
+/*N*/ switch (nLevel)
+/*N*/ {
+/*N*/ case 1:
+/*N*/ {
+/*N*/ nFontSize = 32;
+/*N*/ nLower = 500;
+/*N*/ nFirstIndent = -900;
+/*N*/ }
+/*N*/ break;
+/*N*/
+/*N*/ case 2:
+/*N*/ {
+/*N*/ nFontSize = 28;
+/*N*/ nLower = 400;
+/*N*/ nFirstIndent = -800;
+/*N*/ }
+/*N*/ break;
+/*N*/
+/*N*/ case 3:
+/*N*/ {
+/*N*/ nFontSize = 24;
+/*N*/ nLower = 300;
+/*N*/ }
+/*N*/ break;
+/*N*/
+/*N*/ case 4:
+/*N*/ {
+/*N*/ nLower = 200;
+/*N*/ }
+/*N*/ break;
+/*N*/ }
+/*N*/
+/*N*/ // FontSize
+/*N*/ nFontSize = (USHORT)((nFontSize * 2540L) / 72); // Pt --> 1/100 mm
+/*N*/ SfxItemSet& rOutlineSet = pSheet->GetItemSet();
+/*N*/ rOutlineSet.Put( SvxFontHeightItem( nFontSize, 100, EE_CHAR_FONTHEIGHT ) );
+/*N*/ rOutlineSet.Put( SvxFontHeightItem( nFontSize, 100, EE_CHAR_FONTHEIGHT_CJK ) );
+/*N*/ rOutlineSet.Put( SvxFontHeightItem( nFontSize, 100, EE_CHAR_FONTHEIGHT_CTL ) );
+/*N*/
+/*N*/ // Einzuege
+/*N*/ aSvxLRSpaceItem.SetTxtFirstLineOfst(nFirstIndent);
+/*N*/ aSvxLRSpaceItem.SetTxtLeft(nIndent);
+/*N*/ aSvxLRSpaceItem.SetRight(0);
+/*N*/ aSvxLRSpaceItem.SetBulletFI(TRUE);
+/*N*/ pSheet->GetItemSet().Put(aSvxLRSpaceItem);
+/*N*/
+/*N*/ // Zeilendurchschuss (Abstand nach unten)
+/*N*/ aSvxULSpaceItem.SetLower(nLower);
+/*N*/ pSheet->GetItemSet().Put(aSvxULSpaceItem);
+/*N*/
+/*N*/ if (nLevel == 1)
+/*N*/ {
+/*N*/ SfxUInt16Item aBulletStateItem(EE_PARA_BULLETSTATE, 1); // Bullets sichtbar
+/*N*/ pSheet->GetItemSet().Put(aBulletStateItem);
+/*N*/ }
+/*N*/
+/*
+ // Gliederungsvorlagen haben die naechsthoehere Ebene als Parent
+ if (pParent)
+ pSheet->SetParent(pParent->GetName());
+ pParent = pSheet;
+*/
+/*N*/ }
+/*N*/ }
+/*N*/
+/*N*/ // if we created outline styles, we need to chain them
+/*N*/ if( bCreated )
+/*N*/ {
+/*N*/ pParent = NULL;
+/*N*/ for (nLevel = 1; nLevel < 10; nLevel++)
+/*N*/ {
+/*N*/ String aLevelName(aName);
+/*N*/ aLevelName.Append( sal_Unicode( ' ' ));
+/*N*/ aLevelName.Append( String::CreateFromInt32( sal_Int32( nLevel )));
+/*N*/
+/*N*/ aLevelName.Insert(aPrefix, 0);
+/*N*/
+/*N*/ pSheet = Find(aLevelName, SD_LT_FAMILY);
+/*N*/
+/*N*/ DBG_ASSERT( pSheet, "missing layout style!");
+/*N*/
+/*N*/ if( pSheet )
+/*N*/ {
+/*N*/ if (pParent)
+/*N*/ pSheet->SetParent(pParent->GetName());
+/*N*/ pParent = pSheet;
+/*N*/ }
+/*N*/ }
+/*N*/ }
+/*N*/
+ /**************************************************************************
+ * Titel
+ **************************************************************************/
+/*N*/ aName = String(SdResId(STR_LAYOUT_TITLE));
+/*N*/ aName.Insert(aPrefix, 0);
+/*N*/
+/*N*/ if (!Find(aName, SD_LT_FAMILY))
+/*N*/ {
+/*N*/ bCreated = sal_True;
+/*N*/
+/*N*/ pSheet = &Make(aName, SD_LT_FAMILY);
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_TITLE );
+/*N*/ pSheet->SetParent(String());
+/*N*/ SfxItemSet& rTitleSet = pSheet->GetItemSet();
+/*N*/ rTitleSet.Put(XLineStyleItem(XLINE_NONE));
+/*N*/ rTitleSet.Put(XFillStyleItem(XFILL_NONE));
+/*N*/ rTitleSet.Put(aSvxFontItem);
+/*N*/ rTitleSet.Put(aSvxFontItemCJK);
+/*N*/ rTitleSet.Put(aSvxFontItemCTL);
+/*N*/ rTitleSet.Put(SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC ) );
+/*N*/ rTitleSet.Put(SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CJK ) );
+/*N*/ rTitleSet.Put(SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CTL ) );
+/*N*/ rTitleSet.Put(SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT ) );
+/*N*/ rTitleSet.Put(SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CJK ) );
+/*N*/ rTitleSet.Put(SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CTL ) );
+/*N*/ rTitleSet.Put(SvxFontHeightItem( 1552, 100, EE_CHAR_FONTHEIGHT ) ); // 44 pt
+/*N*/ rTitleSet.Put(SvxFontHeightItem( 1552, 100, EE_CHAR_FONTHEIGHT_CJK ) ); // 44 pt
+/*N*/ rTitleSet.Put(SvxFontHeightItem( 1552, 100, EE_CHAR_FONTHEIGHT_CTL ) ); // 44 pt
+/*N*/ rTitleSet.Put(SvxUnderlineItem(UNDERLINE_NONE));
+/*N*/ rTitleSet.Put(SvxCrossedOutItem(STRIKEOUT_NONE));
+/*N*/ rTitleSet.Put(SvxShadowedItem(FALSE));
+/*N*/ rTitleSet.Put(SvxContourItem(FALSE));
+/*N*/ rTitleSet.Put( SvxEmphasisMarkItem(EMPHASISMARK_NONE) );
+/*N*/ rTitleSet.Put( SvxCharReliefItem(RELIEF_NONE) );
+/*N*/ rTitleSet.Put(SvxColorItem( Color(COL_AUTO)));
+/*N*/ rTitleSet.Put(SvxAdjustItem(SVX_ADJUST_CENTER));
+/*N*/ rTitleSet.Put( SdrTextVertAdjustItem( SDRTEXTVERTADJUST_CENTER ) );
+/*N*/ rTitleSet.Put( SfxUInt16Item(EE_PARA_BULLETSTATE, 0) );
+/*N*/ aBulletFont.SetSize(Size(0,1552)); // 44 pt
+/*N*/ PutNumBulletItem( pSheet, aBulletFont );
+/*N*/ }
+/*N*/
+ /**************************************************************************
+ * Untertitel
+ * Aenderugen auch in AdjustLRSpaceItems() vornehmen!
+ **************************************************************************/
+/*N*/ aName = String(SdResId(STR_LAYOUT_SUBTITLE));
+/*N*/ aName.Insert(aPrefix, 0);
+/*N*/
+/*N*/ if (!Find(aName, SD_LT_FAMILY))
+/*N*/ {
+/*N*/ bCreated = sal_True;
+/*N*/
+/*N*/ pSheet = &Make(aName, SD_LT_FAMILY);
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_SUBTITLE );
+/*N*/ pSheet->SetParent(String());
+/*N*/ SfxItemSet& rSubtitleSet = pSheet->GetItemSet();
+/*N*/ rSubtitleSet.Put(XLineStyleItem(XLINE_NONE));
+/*N*/ rSubtitleSet.Put(XFillStyleItem(XFILL_NONE));
+/*N*/ rSubtitleSet.Put(aSvxFontItem);
+/*N*/ rSubtitleSet.Put(aSvxFontItemCJK);
+/*N*/ rSubtitleSet.Put(aSvxFontItemCTL);
+/*N*/ rSubtitleSet.Put(SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC ) );
+/*N*/ rSubtitleSet.Put(SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CJK ) );
+/*N*/ rSubtitleSet.Put(SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CTL ) );
+/*N*/ rSubtitleSet.Put(SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT ) );
+/*N*/ rSubtitleSet.Put(SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CJK ) );
+/*N*/ rSubtitleSet.Put(SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CTL ) );
+/*N*/ rSubtitleSet.Put( SvxFontHeightItem( 1129, 100, EE_CHAR_FONTHEIGHT ) ); // 32 pt
+/*N*/ rSubtitleSet.Put( SvxFontHeightItem( 1129, 100, EE_CHAR_FONTHEIGHT_CJK ) ); // 32 pt
+/*N*/ rSubtitleSet.Put( SvxFontHeightItem( 1129, 100, EE_CHAR_FONTHEIGHT_CTL ) ); // 32 pt
+/*N*/ rSubtitleSet.Put(SvxUnderlineItem(UNDERLINE_NONE));
+/*N*/ rSubtitleSet.Put(SvxCrossedOutItem(STRIKEOUT_NONE));
+/*N*/ rSubtitleSet.Put(SvxShadowedItem(FALSE));
+/*N*/ rSubtitleSet.Put(SvxContourItem(FALSE));
+/*N*/ rSubtitleSet.Put( SvxEmphasisMarkItem(EMPHASISMARK_NONE) );
+/*N*/ rSubtitleSet.Put( SvxCharReliefItem(RELIEF_NONE) );
+/*N*/ rSubtitleSet.Put(SvxColorItem( Color(COL_AUTO)));
+/*N*/ rSubtitleSet.Put(SvxAdjustItem(SVX_ADJUST_CENTER));
+/*N*/ rSubtitleSet.Put( SdrTextVertAdjustItem( SDRTEXTVERTADJUST_CENTER ) );
+/*N*/ rSubtitleSet.Put( SfxUInt16Item(EE_PARA_BULLETSTATE, 0) );
+/*N*/ aSvxLRSpaceItem.SetTxtLeft(0);
+/*N*/ rSubtitleSet.Put(aSvxLRSpaceItem);
+/*N*/ Font aBulletFont( GetBulletFont() );
+/*N*/ aBulletFont.SetSize(Size(0, 1129)); // 32 pt
+/*N*/ PutNumBulletItem( pSheet, aBulletFont );
+/*N*/ }
+/*N*/
+ /**************************************************************************
+ * Notizen
+ **************************************************************************/
+/*N*/ aName = String(SdResId(STR_LAYOUT_NOTES));
+/*N*/ aName.Insert(aPrefix, 0);
+/*N*/
+/*N*/ if (!Find(aName, SD_LT_FAMILY))
+/*N*/ {
+/*N*/ bCreated = sal_True;
+/*N*/
+/*N*/ pSheet = &Make(aName, SD_LT_FAMILY);
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_NOTES );
+/*N*/ pSheet->SetParent(String());
+/*N*/ SfxItemSet& rNotesSet = pSheet->GetItemSet();
+/*N*/ rNotesSet.Put(XLineStyleItem(XLINE_NONE));
+/*N*/ rNotesSet.Put(XFillStyleItem(XFILL_NONE));
+/*N*/ rNotesSet.Put(aSvxFontItem);
+/*N*/ rNotesSet.Put(aSvxFontItemCJK);
+/*N*/ rNotesSet.Put(aSvxFontItemCTL);
+/*N*/ rNotesSet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC ) );
+/*N*/ rNotesSet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CJK ) );
+/*N*/ rNotesSet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CTL ) );
+/*N*/ rNotesSet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT ) );
+/*N*/ rNotesSet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CJK ) );
+/*N*/ rNotesSet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CTL ) );
+/*N*/ rNotesSet.Put( SvxFontHeightItem( 705, 100, EE_CHAR_FONTHEIGHT ) ); // 20 pt
+/*N*/ rNotesSet.Put( SvxFontHeightItem( 705, 100, EE_CHAR_FONTHEIGHT_CJK ) ); // 20 pt
+/*N*/ rNotesSet.Put( SvxFontHeightItem( 705, 100, EE_CHAR_FONTHEIGHT_CTL ) ); // 20 pt
+/*N*/ rNotesSet.Put( SvxUnderlineItem(UNDERLINE_NONE) );
+/*N*/ rNotesSet.Put( SvxCrossedOutItem(STRIKEOUT_NONE) );
+/*N*/ rNotesSet.Put( SvxShadowedItem(FALSE) );
+/*N*/ rNotesSet.Put( SvxContourItem(FALSE) );
+/*N*/ rNotesSet.Put( SvxEmphasisMarkItem(EMPHASISMARK_NONE) );
+/*N*/ rNotesSet.Put( SvxCharReliefItem(RELIEF_NONE) );
+/*N*/ rNotesSet.Put( SvxColorItem( Color(COL_AUTO)) );
+/*N*/ rNotesSet.Put( SfxUInt16Item(EE_PARA_BULLETSTATE, 0) );
+/*N*/ rNotesSet.Put( SvxLRSpaceItem( 0, 0, 600, -600 ) );
+/*N*/
+/*N*/ SvxNumBulletItem aNumBullet( (const SvxNumBulletItem&) rNotesSet.Get(EE_PARA_NUMBULLET) );
+/*N*/
+/*N*/ EditEngine::ImportBulletItem( aNumBullet, 0, NULL,
+/*N*/ &(const SvxLRSpaceItem&) rNotesSet.Get( EE_PARA_LRSPACE ) );
+/*N*/
+/*N*/ ( (SfxItemSet&) rNotesSet).Put( aNumBullet );
+/*N*/
+/*N*/ }
+/*N*/
+ /**************************************************************************
+ * Hintergrundobjekte
+ **************************************************************************/
+/*N*/ aName = String(SdResId(STR_LAYOUT_BACKGROUNDOBJECTS));
+/*N*/ aName.Insert(aPrefix, 0);
+/*N*/
+/*N*/ if (!Find(aName, SD_LT_FAMILY))
+/*N*/ {
+/*N*/ bCreated = sal_True;
+/*N*/
+/*N*/ pSheet = &Make(aName, SD_LT_FAMILY);
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_BACKGROUNDOBJECTS );
+/*N*/ pSheet->SetParent(String());
+/*N*/ SfxItemSet& rBackgroundObjectsSet = pSheet->GetItemSet();
+/*N*/ rBackgroundObjectsSet.Put(SdrShadowItem(FALSE));
+/*N*/ rBackgroundObjectsSet.Put(SdrShadowColorItem(String(), Color(COL_GRAY)));
+/*N*/ rBackgroundObjectsSet.Put(SdrShadowXDistItem(300)); // 3 mm Schattendistanz
+/*N*/ rBackgroundObjectsSet.Put(SdrShadowYDistItem(300));
+/*N*/ }
+/*N*/
+ /**************************************************************************
+ * Hintergrund
+ **************************************************************************/
+/*N*/ aName = String(SdResId(STR_LAYOUT_BACKGROUND));
+/*N*/ aName.Insert(aPrefix, 0);
+/*N*/
+/*N*/ if (!Find(aName, SD_LT_FAMILY))
+/*N*/ {
+/*N*/ bCreated = sal_True;
+/*N*/
+/*N*/ pSheet = &Make(aName, SD_LT_FAMILY);
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_BACKGROUND );
+/*N*/ pSheet->SetParent(String());
+/*N*/ SfxItemSet& rBackgroundSet = pSheet->GetItemSet();
+/*N*/ rBackgroundSet.Put(XLineStyleItem(XLINE_NONE));
+/*N*/ rBackgroundSet.Put(XFillStyleItem(XFILL_NONE));
+/*N*/ }
+/*N*/
+/*N*/ DBG_ASSERT( !bCheck || !bCreated, "missing layout style sheets detected!" );
+/*N*/ }
+
+/*************************************************************************
+|*
+|* StyleSheets des genannten Praesentationslayouts loeschen
+|*
+\************************************************************************/
+
+
+
+/*************************************************************************
+|*
+|* Graphik-StyleSheets aus dem Quellpool in diesen Pool kopieren
+|*
+|* (rSourcePool kann nicht const sein, weil SfxStyleSheetPoolBase::Find
+|* nicht const ist)
+|*
+\************************************************************************/
+
+
+
+/*************************************************************************
+|*
+|* StyleSheets des genannten Praesentationslayouts aus dem Quellpool in diesen
+|* Pool kopieren. Kopiert werden nur solche StyleSheets, die in diesem Pool
+|* noch nicht vorhanden sind.
+|* pCreatedSheets wird - wenn ungleich NULL - mit Zeigern auf die erzeugten
+|* StyleSheets gefuellt.
+|*
+|* (rSourcePool kann nicht const sein, weil SfxStyleSheetPoolBase::Find
+|* nicht const ist)
+|*
+\************************************************************************/
+
+
+/*************************************************************************
+|*
+|* Liste mit den Namen der Praesentationsvorlagen eines Layouts erzeugen.
+|* Die Liste und die enthaltenen Strings gehoeren dem Caller!
+|*
+\************************************************************************/
+
+
+/*************************************************************************
+|*
+|* Liste mit Zeigern auf Praesentationsvorlagen eines Layouts erzeugen.
+|* Die Liste gehoert dem Caller!
+|*
+\************************************************************************/
+
+
+/*************************************************************************
+|*
+|* ggfs. PseudoStyleSheets erzeugen
+|*
+\************************************************************************/
+
+/*N*/ void SdStyleSheetPool::CreatePseudosIfNecessary()
+/*N*/ {
+/*N*/ String aName;
+/*N*/ String aHelpFile;
+/*N*/ SfxStyleSheetBase* pSheet = NULL;
+/*N*/ SfxStyleSheetBase* pParent = NULL;
+/*N*/
+/*N*/ //USHORT nMask = SFXSTYLEBIT_ALL & ~SFXSTYLEBIT_USERDEF;
+/*N*/ USHORT nMask = SFXSTYLEBIT_USED;
+/*N*/
+/*N*/ aName = String(SdResId(STR_PSEUDOSHEET_TITLE));
+/*N*/ if (!(pSheet = Find(aName, SFX_STYLE_FAMILY_PSEUDO)))
+/*N*/ {
+/*N*/ pSheet = &Make(aName, SFX_STYLE_FAMILY_PSEUDO, nMask);
+/*N*/ pSheet->SetParent( String() );
+/*N*/ ((SfxStyleSheet*)pSheet)->StartListening(*this);
+/*N*/ }
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_TITLE );
+/*N*/
+/*N*/ aName = String(SdResId(STR_PSEUDOSHEET_SUBTITLE));
+/*N*/ if (!(pSheet = Find(aName, SFX_STYLE_FAMILY_PSEUDO)))
+/*N*/ {
+/*N*/ pSheet = &Make(aName, SFX_STYLE_FAMILY_PSEUDO, nMask);
+/*N*/ pSheet->SetParent(String());
+/*N*/ ((SfxStyleSheet*)pSheet)->StartListening(*this);
+/*N*/ }
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_SUBTITLE );
+/*N*/
+/*N*/ aName = String(SdResId(STR_PSEUDOSHEET_BACKGROUNDOBJECTS));
+/*N*/ if (!(pSheet = Find(aName, SFX_STYLE_FAMILY_PSEUDO)))
+/*N*/ {
+/*N*/ pSheet = &Make(aName, SFX_STYLE_FAMILY_PSEUDO, nMask);
+/*N*/ pSheet->SetParent( String() );
+/*N*/ ((SfxStyleSheet*)pSheet)->StartListening(*this);
+/*N*/ }
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_BACKGROUNDOBJECTS );
+/*N*/
+/*N*/ aName = String(SdResId(STR_PSEUDOSHEET_BACKGROUND));
+/*N*/ if (!(pSheet = Find(aName, SFX_STYLE_FAMILY_PSEUDO)))
+/*N*/ {
+/*N*/ pSheet = &Make(aName, SFX_STYLE_FAMILY_PSEUDO, nMask);
+/*N*/ pSheet->SetParent( String() );
+/*N*/ ((SfxStyleSheet*)pSheet)->StartListening(*this);
+/*N*/ }
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_BACKGROUND );
+/*N*/
+/*N*/ aName = String(SdResId(STR_PSEUDOSHEET_NOTES));
+/*N*/ if (!(pSheet = Find(aName, SFX_STYLE_FAMILY_PSEUDO)))
+/*N*/ {
+/*N*/ pSheet = &Make(aName, SFX_STYLE_FAMILY_PSEUDO, nMask);
+/*N*/ pSheet->SetParent( String() );
+/*N*/ ((SfxStyleSheet*)pSheet)->StartListening(*this);
+/*N*/ }
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_NOTES );
+/*N*/
+/*N*/ pParent = NULL;
+/*N*/ SetSearchMask(SFX_STYLE_FAMILY_PSEUDO);
+/*N*/ aName = String(SdResId(STR_PSEUDOSHEET_OUTLINE));
+/*N*/ for (USHORT nLevel = 1; nLevel < 10; nLevel++)
+/*N*/ {
+/*N*/ String aLevelName(aName);
+/*N*/ aLevelName.Append( sal_Unicode( ' ' ));
+/*N*/ aLevelName.Append( String::CreateFromInt32( sal_Int32( nLevel )));
+/*N*/
+/*N*/ if (!(pSheet = Find(aLevelName, SFX_STYLE_FAMILY_PSEUDO)))
+/*N*/ {
+/*N*/ pSheet = &Make(aLevelName, SFX_STYLE_FAMILY_PSEUDO, nMask);
+/*N*/
+/*N*/ if (pSheet)
+/*N*/ {
+/*N*/ if (pParent)
+/*N*/ pSheet->SetParent(pParent->GetName());
+/*N*/ pParent = pSheet;
+/*N*/ ((SfxStyleSheet*)pSheet)->StartListening(*this);
+/*N*/ }
+/*N*/ }
+/*N*/ pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_OUTLINE + nLevel );
+/*N*/ }
+/*N*/ }
+
+
+/*************************************************************************
+|*
+|* Standard-Styles den richtigen Namen in der Programm-Sprache geben
+|*
+\************************************************************************/
+
+/*N*/ void SdStyleSheetPool::UpdateStdNames()
+/*N*/ {
+/*N*/ BOOL bNewHelpIds = FALSE;
+/*N*/ String aHelpFile;
+/*N*/ ULONG nCount = aStyles.Count();
+/*N*/ List* pEraseList = NULL;
+/*N*/
+/*N*/ for( ULONG n=0; n < nCount; n++ )
+/*N*/ {
+/*N*/ SfxStyleSheetBase* pStyle = aStyles.GetObject( n );
+/*N*/
+/*N*/ if( !pStyle->IsUserDefined() )
+/*N*/ {
+/*N*/ String aOldName = pStyle->GetName();
+/*N*/ ULONG nHelpId = pStyle->GetHelpId( aHelpFile );
+/*N*/ SfxStyleFamily eFam = pStyle->GetFamily();
+/*N*/
+/*N*/ BOOL bHelpKnown = TRUE;
+/*N*/ String aNewName;
+/*N*/ USHORT nNameId = 0;
+/*N*/ switch( nHelpId )
+/*N*/ {
+/*N*/ case HID_STANDARD_STYLESHEET_NAME: nNameId = STR_STANDARD_STYLESHEET_NAME; break;
+/*N*/ case HID_POOLSHEET_OBJWITHARROW: nNameId = STR_POOLSHEET_OBJWITHARROW; break;
+/*N*/ case HID_POOLSHEET_OBJWITHSHADOW: nNameId = STR_POOLSHEET_OBJWITHSHADOW; break;
+/*N*/ case HID_POOLSHEET_OBJWITHOUTFILL: nNameId = STR_POOLSHEET_OBJWITHOUTFILL; break;
+/*N*/ case HID_POOLSHEET_TEXT: nNameId = STR_POOLSHEET_TEXT; break;
+/*N*/ case HID_POOLSHEET_TEXTBODY: nNameId = STR_POOLSHEET_TEXTBODY; break;
+/*N*/ case HID_POOLSHEET_TEXTBODY_JUSTIFY:nNameId = STR_POOLSHEET_TEXTBODY_JUSTIFY;break;
+/*N*/ case HID_POOLSHEET_TEXTBODY_INDENT: nNameId = STR_POOLSHEET_TEXTBODY_INDENT;break;
+/*N*/ case HID_POOLSHEET_TITLE: nNameId = STR_POOLSHEET_TITLE; break;
+/*N*/ case HID_POOLSHEET_TITLE1: nNameId = STR_POOLSHEET_TITLE1; break;
+/*N*/ case HID_POOLSHEET_TITLE2: nNameId = STR_POOLSHEET_TITLE2; break;
+/*N*/ case HID_POOLSHEET_HEADLINE: nNameId = STR_POOLSHEET_HEADLINE; break;
+/*N*/ case HID_POOLSHEET_HEADLINE1: nNameId = STR_POOLSHEET_HEADLINE1; break;
+/*N*/ case HID_POOLSHEET_HEADLINE2: nNameId = STR_POOLSHEET_HEADLINE2; break;
+/*N*/ case HID_POOLSHEET_MEASURE: nNameId = STR_POOLSHEET_MEASURE; break;
+/*N*/
+/*N*/ case HID_PSEUDOSHEET_TITLE: nNameId = STR_PSEUDOSHEET_TITLE; break;
+/*N*/ case HID_PSEUDOSHEET_SUBTITLE: nNameId = STR_PSEUDOSHEET_SUBTITLE; break;
+/*N*/ case HID_PSEUDOSHEET_OUTLINE1:
+/*N*/ case HID_PSEUDOSHEET_OUTLINE2:
+/*N*/ case HID_PSEUDOSHEET_OUTLINE3:
+/*N*/ case HID_PSEUDOSHEET_OUTLINE4:
+/*N*/ case HID_PSEUDOSHEET_OUTLINE5:
+/*N*/ case HID_PSEUDOSHEET_OUTLINE6:
+/*N*/ case HID_PSEUDOSHEET_OUTLINE7:
+/*N*/ case HID_PSEUDOSHEET_OUTLINE8:
+/*N*/ case HID_PSEUDOSHEET_OUTLINE9: nNameId = STR_PSEUDOSHEET_OUTLINE; break;
+/*N*/ case HID_PSEUDOSHEET_BACKGROUNDOBJECTS: nNameId = STR_PSEUDOSHEET_BACKGROUNDOBJECTS; break;
+/*N*/ case HID_PSEUDOSHEET_BACKGROUND: nNameId = STR_PSEUDOSHEET_BACKGROUND; break;
+/*N*/ case HID_PSEUDOSHEET_NOTES: nNameId = STR_PSEUDOSHEET_NOTES; break;
+/*N*/
+/*N*/ default:
+/*N*/ // 0 oder falsche (alte) HelpId
+/*N*/ bHelpKnown = FALSE;
+/*N*/ }
+/*N*/ if( bHelpKnown )
+/*N*/ {
+/*N*/ if( nNameId )
+/*N*/ {
+/*N*/ aNewName = String( SdResId( nNameId ) );
+/*N*/ if( nNameId == STR_PSEUDOSHEET_OUTLINE )
+/*N*/ {
+/*N*/ aNewName.Append( sal_Unicode( ' ' ));
+/*N*/ aNewName.Append( String::CreateFromInt32( sal_Int32( nHelpId - HID_PSEUDOSHEET_OUTLINE )));
+/*N*/ }
+/*N*/ }
+/*N*/
+/*N*/ if( aNewName.Len() && aNewName != aOldName )
+/*N*/ {
+/*N*/ SfxStyleSheetBase* pSheetFound = Find( aNewName, eFam );
+/*N*/
+/*N*/ if ( !pSheetFound )
+/*N*/ {
+/*N*/ // Sheet existiert noch nicht: Altes Sheet wird umbenannt
+/*N*/ pStyle->SetName( aNewName ); // setzt auch Parents um
+/*N*/ }
+/*N*/ else
+/*N*/ {
+/*N*/ // Sheet existiert schon: Altes Sheet muss entfernt werden
+/*N*/ if( !pEraseList )
+/*N*/ {
+/*N*/ pEraseList = new List();
+/*N*/ }
+/*N*/
+/*N*/ pEraseList->Insert( pStyle );
+/*N*/ }
+/*N*/ }
+/*N*/ }
+/*N*/ else
+/*N*/ {
+/*N*/ // falsche oder keine HelpId -> neue generieren
+/*N*/
+/*N*/ DBG_WARNING("Default-Vorlage mit falscher oder keiner HelpId");
+/*N*/
+/*N*/ // Da bisher nur deutsche Dokumente erzeugt worden sein koennen,
+/*N*/ // kann hier auch der deutsche Text abgefragt werden, damit man
+/*N*/ // nicht in einer anderssprachigen Version auf die deutsche
+/*N*/ // Version zurueckgreifen muss!
+/*N*/
+/*N*/ USHORT nNewId = 0;
+/*N*/ if( eFam == SFX_STYLE_FAMILY_PARA )
+/*N*/ {
+/*N*/ if( aOldName == String( SdResId( STR_STANDARD_STYLESHEET_NAME ) ) ||
+/*N*/ aOldName.EqualsAscii( "Standard", 0, RTL_CONSTASCII_LENGTH( "Standard" )) )
+/*N*/ nNewId = HID_STANDARD_STYLESHEET_NAME;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_OBJWITHARROW ) ) ||
+/*N*/ aOldName.EqualsAscii( "Objekt mit Pfeilspitze", 0, RTL_CONSTASCII_LENGTH( "Objekt mit Pfeilspitze" )) )
+/*N*/ nNewId = HID_POOLSHEET_OBJWITHARROW;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_OBJWITHSHADOW ) ) ||
+/*N*/ aOldName.EqualsAscii( "Objekt mit Schatten", 0, RTL_CONSTASCII_LENGTH( "Objekt mit Schatten" )) )
+/*N*/ nNewId = HID_POOLSHEET_OBJWITHSHADOW;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_OBJWITHOUTFILL ) ) ||
+/*N*/ aOldName == String( SdResId( STR_POOLSHEET_OBJWITHOUTFILL_NT ) ) )
+/*N*/ //aOldName.EqualsAscii( "Objekt ohne Füllung", 0, RTL_CONSTASCII_LENGTH( "Objekt ohne Füllung" )) )
+/*N*/ nNewId = HID_POOLSHEET_OBJWITHOUTFILL;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_TEXT ) ) ||
+/*N*/ aOldName.EqualsAscii( "Text", 0, RTL_CONSTASCII_LENGTH( "Text" )) )
+/*N*/ nNewId = HID_POOLSHEET_TEXT;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_TEXTBODY ) ) ||
+/*N*/ aOldName == String( SdResId( STR_POOLSHEET_TEXTBODY_NT ) ) )
+/*N*/ //aOldName.EqualsAscii( "Textkörper", 0, RTL_CONSTASCII_LENGTH( "Textkörper" )) )
+/*N*/ nNewId = HID_POOLSHEET_TEXTBODY;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_TEXTBODY_JUSTIFY ) ) ||
+/*N*/ aOldName == String( SdResId( STR_POOLSHEET_TEXTBODY_JUSTIFY_NT ) ) )
+/*N*/ //aOldName.EqualsAscii( "Textkörper Blocksatz", 0, RTL_CONSTASCII_LENGTH( "Textkörper Blocksatz" )) )
+/*N*/ nNewId = HID_POOLSHEET_TEXTBODY_JUSTIFY;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_TEXTBODY_INDENT ) ) ||
+/*N*/ aOldName == String( SdResId( STR_POOLSHEET_TEXTBODY_INDENT_NT ) ) )
+/*N*/ //aOldName.EqualsAscii( "Textkörper Einzug", 0, RTL_CONSTASCII_LENGTH( "Textkörper Einzug" )) )
+/*N*/ nNewId = HID_POOLSHEET_TEXTBODY_INDENT;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_TITLE ) ) ||
+/*N*/ aOldName.EqualsAscii( "Titel", 0, RTL_CONSTASCII_LENGTH( "Titel" )) )
+/*N*/ nNewId = HID_POOLSHEET_TITLE;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_TITLE1 ) ) ||
+/*N*/ aOldName.EqualsAscii( "Titel1", 0, RTL_CONSTASCII_LENGTH( "Titel1" )) )
+/*N*/ nNewId = HID_POOLSHEET_TITLE1;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_TITLE2 ) ) ||
+/*N*/ aOldName.EqualsAscii( "Titel2", 0, RTL_CONSTASCII_LENGTH( "Titel2" )) )
+/*N*/ nNewId = HID_POOLSHEET_TITLE2;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_HEADLINE ) ) ||
+/*N*/ aOldName == String( SdResId( STR_POOLSHEET_HEADLINE_NT ) ) )
+/*N*/ //aOldName.EqualsAscii( "Überschrift", 0, RTL_CONSTASCII_LENGTH( "Überschrift" )) )
+/*N*/ nNewId = HID_POOLSHEET_HEADLINE;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_HEADLINE1 ) ) ||
+/*N*/ aOldName == String( SdResId( STR_POOLSHEET_HEADLINE1_NT ) ) )
+/*N*/ //aOldName.EqualsAscii( "Überschrift1", 0, RTL_CONSTASCII_LENGTH( "Überschrift1" )) )
+/*N*/ nNewId = HID_POOLSHEET_HEADLINE1;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_HEADLINE2 ) ) ||
+/*N*/ aOldName == String( SdResId( STR_POOLSHEET_HEADLINE2_NT ) ) )
+/*N*/ //aOldName.EqualsAscii( "Überschrift2", 0, RTL_CONSTASCII_LENGTH( "Überschrift2" )) )
+/*N*/ nNewId = HID_POOLSHEET_HEADLINE2;
+/*N*/ else if( aOldName == String( SdResId( STR_POOLSHEET_MEASURE ) ) ||
+/*N*/ aOldName == String( SdResId( STR_POOLSHEET_MEASURE_NT ) ) )
+/*N*/ //aOldName.EqualsAscii( "Maßlinie", 0, RTL_CONSTASCII_LENGTH( "Maßlinie" )) )
+/*N*/ nNewId = HID_POOLSHEET_MEASURE;
+/*N*/ }
+/*N*/ else if( eFam == SFX_STYLE_FAMILY_PSEUDO )
+/*N*/ {
+/*N*/ String aStr( SdResId( STR_PSEUDOSHEET_OUTLINE ) );
+/*N*/ aStr.Append( sal_Unicode( ' ' ));
+/*N*/ String aStr2( RTL_CONSTASCII_USTRINGPARAM( "Gliederung " ));
+/*N*/ sal_Int32 nNumber = 0;
+/*N*/
+/*N*/ if( aOldName == String( SdResId( STR_PSEUDOSHEET_TITLE ) ) ||
+/*N*/ aOldName.EqualsAscii( "Titel", 0, RTL_CONSTASCII_LENGTH( "Titel" )))
+/*N*/ nNewId = HID_PSEUDOSHEET_TITLE;
+/*N*/ else if( aOldName == String( SdResId( STR_PSEUDOSHEET_SUBTITLE ) ) ||
+/*N*/ aOldName.EqualsAscii( "Untertitel", 0, RTL_CONSTASCII_LENGTH( "Untertitel" )) )
+/*N*/ nNewId = HID_PSEUDOSHEET_SUBTITLE;
+/*N*/ else if( aOldName == String( SdResId( STR_PSEUDOSHEET_BACKGROUNDOBJECTS ) ) ||
+/*N*/ aOldName.EqualsAscii( "Hintergrundobjekte", 0, RTL_CONSTASCII_LENGTH( "Hintergrundobjekte" )) )
+/*N*/ nNewId = HID_PSEUDOSHEET_BACKGROUNDOBJECTS;
+/*N*/ else if( aOldName == String( SdResId( STR_PSEUDOSHEET_BACKGROUND ) ) ||
+/*N*/ aOldName.EqualsAscii( "Hintergrund", 0, RTL_CONSTASCII_LENGTH( "Hintergrund" )) )
+/*N*/ nNewId = HID_PSEUDOSHEET_BACKGROUND;
+/*N*/ else if( aOldName == String( SdResId( STR_PSEUDOSHEET_NOTES ) ) ||
+/*N*/ aOldName.EqualsAscii( "Notizen", 0, RTL_CONSTASCII_LENGTH( "Notizen" )) )
+/*N*/ nNewId = HID_PSEUDOSHEET_NOTES;
+/*N*/ else if( aOldName.Equals( String( String( aStr ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "1" ) ) ) ) ) ) ||
+/*N*/ aOldName.Equals( String( String( aStr2 ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "1" ) ) ) ) ) ) )
+/*N*/ nNewId = HID_PSEUDOSHEET_OUTLINE1;
+/*N*/ else if( aOldName.Equals( String( String( aStr ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "2" ) ) ) ) ) ) ||
+/*N*/ aOldName.Equals( String( String( aStr2 ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "2" ) ) ) ) ) ) )
+/*N*/ nNewId = HID_PSEUDOSHEET_OUTLINE2;
+/*N*/ else if( aOldName.Equals( String( String( aStr ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "3" ) ) ) ) ) ) ||
+/*N*/ aOldName.Equals( String( String( aStr2 ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "3" ) ) ) ) ) ) )
+/*N*/ nNewId = HID_PSEUDOSHEET_OUTLINE3;
+/*N*/ else if( aOldName.Equals( String( String( aStr ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "4" ) ) ) ) ) ) ||
+/*N*/ aOldName.Equals( String( String( aStr2 ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "4" ) ) ) ) ) ) )
+/*N*/ nNewId = HID_PSEUDOSHEET_OUTLINE4;
+/*N*/ else if( aOldName.Equals( String( String( aStr ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "5" ) ) ) ) ) ) ||
+/*N*/ aOldName.Equals( String( String( aStr2 ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "5" ) ) ) ) ) ) )
+/*N*/ nNewId = HID_PSEUDOSHEET_OUTLINE5;
+/*N*/ else if( aOldName.Equals( String( String( aStr ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "6" ) ) ) ) ) ) ||
+/*N*/ aOldName.Equals( String( String( aStr2 ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "6" ) ) ) ) ) ) )
+/*N*/ nNewId = HID_PSEUDOSHEET_OUTLINE6;
+/*N*/ else if( aOldName.Equals( String( String( aStr ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "7" ) ) ) ) ) ) ||
+/*N*/ aOldName.Equals( String( String( aStr2 ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "7" ) ) ) ) ) ) )
+/*N*/ nNewId = HID_PSEUDOSHEET_OUTLINE7;
+/*N*/ else if( aOldName.Equals( String( String( aStr ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "8" ) ) ) ) ) ) ||
+/*N*/ aOldName.Equals( String( String( aStr2 ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "8" ) ) ) ) ) ) )
+/*N*/ nNewId = HID_PSEUDOSHEET_OUTLINE8;
+/*N*/ else if( aOldName.Equals( String( String( aStr ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "9" ) ) ) ) ) ) ||
+/*N*/ aOldName.Equals( String( String( aStr2 ).Append( String( UniString::CreateFromAscii( RTL_CONSTASCII_STRINGPARAM( "9" ) ) ) ) ) ) )
+/*N*/ nNewId = HID_PSEUDOSHEET_OUTLINE9;
+/*N*/ }
+/*N*/
+/*N*/ if ( nNewId )
+/*N*/ {
+/*N*/ bNewHelpIds = TRUE;
+/*N*/ pStyle->SetHelpId( aHelpFile, nNewId );
+/*N*/ }
+/*N*/ }
+/*N*/ }
+/*N*/ }
+/*N*/
+/*N*/ if ( pEraseList )
+/*N*/ {
+/*N*/ // Styles, welche nicht umbenannt werden konnten, muessen entfernt werden
+/*N*/ for ( ULONG i = 0; i < pEraseList->Count(); i++ )
+/*N*/ {
+/*N*/ SfxStyleSheetBase* pEraseSheet = ( SfxStyleSheetBase* ) pEraseList->GetObject( i );
+/*N*/ Erase( pEraseSheet );
+/*N*/ }
+/*N*/
+/*N*/ delete pEraseList;
+/*N*/ pEraseList = NULL;
+/*N*/ }
+/*N*/
+/*N*/ // Wenn neue HelpIDs gefunden wurden koennen die Namen auch gleich ersetzt werden
+/*N*/ if( bNewHelpIds )
+/*N*/ UpdateStdNames();
+/*N*/ }
+
+
+/*************************************************************************
+|*
+|* Da sich die Bedeutung der SvxLRSpaceItems ab nFileFormatVersion = 16
+|* geaendert hat (Bullet-Handling des Outliners, siehe auch
+|* SdDrawDocument::NewOrLoadCompleted()), muss fuer aeltere Versionen
+|* eine Korrektur vorgenommen werden.
+|*
+\************************************************************************/
+
+/*N*/ void SdStyleSheetPool::AdjustLRSpaceItems()
+/*N*/ {
+/*N*/ String aHelpFile;
+/*N*/ ULONG nCount = aStyles.Count();
+/*N*/
+/*N*/ // #63254# Aenderungen nicht mehr broadcasten,statt dessen nach
+/*N*/ // AdjustLRSpaceItems() ein UpdateStyleSheets am Outliner
+/*N*/
+/*N*/ if ( nCount > 0 )
+/*N*/ {
+ /**************************************************************************
+ * All LayoutStyleSheets loaded? (e.g. new Subtitle LayoutStyleSheet)
+ **************************************************************************/
+/*N*/ USHORT nMasterPageCount = pDoc->GetMasterSdPageCount(PK_STANDARD);
+/*N*/
+/*N*/ for ( USHORT i = 0; i < nMasterPageCount; i++ )
+/*N*/ {
+/*N*/ String aName(pDoc->GetMasterSdPage(i, PK_STANDARD)->GetLayoutName());
+/*N*/ aName.Erase( aName.SearchAscii( SD_LT_SEPARATOR ));
+/*N*/ CreateLayoutStyleSheets(aName);
+/*N*/ }
+/*N*/ }
+/*N*/
+/*N*/ String aOutlineName( RTL_CONSTASCII_USTRINGPARAM( SD_LT_SEPARATOR ));
+/*N*/ aOutlineName += String(SdResId(STR_PSEUDOSHEET_OUTLINE));
+/*N*/ String aTitleName( RTL_CONSTASCII_USTRINGPARAM( SD_LT_SEPARATOR ));
+/*N*/ aTitleName += String(SdResId(STR_PSEUDOSHEET_TITLE));
+/*N*/ String aSubtitleName( RTL_CONSTASCII_USTRINGPARAM( SD_LT_SEPARATOR ));
+/*N*/ aSubtitleName += String(SdResId(STR_PSEUDOSHEET_SUBTITLE));
+/*N*/ String aStandardName(SdResId(STR_STANDARD_STYLESHEET_NAME));
+/*N*/ SfxStyleSheet* pSheetOutlineLevelOne = NULL;
+/*N*/
+/*N*/ for (ULONG n = 0; n < nCount; n++)
+/*N*/ {
+/*N*/ SfxStyleSheet* pSheet = (SfxStyleSheet*)aStyles.GetObject(n);
+/*N*/ SfxItemSet& rSet = pSheet->GetItemSet();
+/*N*/ String aName( pSheet->GetName() );
+/*N*/ String aHelpFile;
+/*N*/ ULONG nHelpId = pSheet->GetHelpId( aHelpFile );
+/*N*/
+/*N*/ if( nHelpId == 0)
+/*N*/ {
+/*N*/ if( aName.Len() == aOutlineName.Len() + 1 &&
+/*N*/ aName.Match( aOutlineName ) == STRING_MATCH )
+/*N*/ {
+/*?*/ sal_Int32 nNumber = String( aName, aName.Len(), 1 ).ToInt32();
+/*?*/ if( 1 <= nNumber && nNumber <= 9 )
+/*?*/ nHelpId = HID_PSEUDOSHEET_OUTLINE + nNumber;
+/*N*/ }
+/*N*/ }
+/*N*/
+/*N*/ if ( nHelpId &&
+/*N*/ ( HID_PSEUDOSHEET_OUTLINE + 1 <= nHelpId &&
+/*N*/ nHelpId <= HID_PSEUDOSHEET_OUTLINE + 9 ))
+/*N*/ {
+/*N*/ // Gliederungsvorlage
+/*N*/ // Bei Gliederungsobjektvorlagen Korrektur vornehmen
+/*N*/ // Es handelt sich hier um die RealStyleSheets und die Pseudos!
+/*N*/ // (siehe SdStyleSheet::GetRealStyleSheet())
+/*N*/ if ( nHelpId == HID_PSEUDOSHEET_OUTLINE + 1 )
+/*N*/ {
+/*N*/ if (rSet.GetItemState(EE_PARA_BULLETSTATE) != SFX_ITEM_ON)
+/*N*/ {
+/*N*/ SfxUInt16Item aBulletStateItem(EE_PARA_BULLETSTATE, 1); // Bullets sichtbar
+/*N*/ rSet.Put(aBulletStateItem);
+/*N*/ }
+/*N*/ }
+/*N*/
+/*N*/ // Gliederungs-Vorlage
+/*N*/ const SvxBulletItem* pOldBullet = NULL;
+/*N*/ if ( rSet.GetItemState( EE_PARA_BULLET ) == SFX_ITEM_ON )
+/*N*/ pOldBullet = &(const SvxBulletItem&) rSet.Get(EE_PARA_BULLET);
+/*N*/
+/*N*/ const SvxLRSpaceItem* pOldLRSpace = NULL;
+/*N*/ if ( rSet.GetItemState( EE_PARA_LRSPACE ) == SFX_ITEM_ON )
+/*N*/ pOldLRSpace = &(const SvxLRSpaceItem&) rSet.Get(EE_PARA_LRSPACE);
+/*N*/
+/*N*/ USHORT nLevel = (USHORT) (nHelpId - HID_PSEUDOSHEET_OUTLINE);
+/*N*/
+/*N*/ if ( nHelpId == HID_PSEUDOSHEET_OUTLINE + 1 )
+/*N*/ {
+/*N*/ pSheetOutlineLevelOne = pSheet;
+/*N*/ SvxNumBulletItem aDefaultNumBullet( *(SvxNumBulletItem*) rSet.GetPool()->GetSecondaryPool()->GetPoolDefaultItem(EE_PARA_NUMBULLET) );
+/*N*/ aDefaultNumBullet.GetNumRule()->SetNumRuleType( SVX_RULETYPE_PRESENTATION_NUMBERING );
+/*N*/ EditEngine::ImportBulletItem( aDefaultNumBullet, nLevel, pOldBullet, pOldLRSpace );
+/*N*/ rSet.Put( aDefaultNumBullet );
+/*N*/
+/*N*/ if (rSet.GetItemState( XATTR_FILLSTYLE ) != SFX_ITEM_ON )
+/*N*/ {
+/*N*/ // Flaechenattribute sind nun unsichtbar
+/*N*/ XFillStyleItem aFillStyleItem(XFILL_NONE);
+/*N*/ rSet.Put(aFillStyleItem);
+/*N*/ }
+/*N*/
+/*N*/ if (rSet.GetItemState( XATTR_LINESTYLE ) != SFX_ITEM_ON )
+/*N*/ {
+/*N*/ // Linienattribute sind nun unsichtbar
+/*N*/ XLineStyleItem aLineStyleItem(XLINE_NONE);
+/*N*/ rSet.Put(aLineStyleItem);
+/*N*/ }
+/*N*/ }
+/*N*/ else
+/*N*/ {
+/*N*/ SfxItemSet& rSetOutlineLevelOne = pSheetOutlineLevelOne->GetItemSet();
+/*N*/ SvxNumBulletItem aNumBullet( (const SvxNumBulletItem&) rSetOutlineLevelOne.Get(EE_PARA_NUMBULLET) );
+/*N*/ EditEngine::ImportBulletItem( aNumBullet, nLevel, pOldBullet, pOldLRSpace );
+/*N*/ rSetOutlineLevelOne.Put( aNumBullet );
+/*N*/
+/*N*/ // SvxNumBulletItems darf es nur in der ersten Gliederungsebene geben!
+/*N*/ if ( rSet.GetItemState( EE_PARA_NUMBULLET ) == SFX_ITEM_ON )
+/*N*/ rSet.ClearItem( EE_PARA_NUMBULLET );
+/*N*/ }
+/*N*/
+/*N*/ if (rSet.GetItemState(EE_PARA_LRSPACE) == SFX_ITEM_ON)
+/*N*/ {
+/*N*/ const SvxLRSpaceItem& rLRItem = (const SvxLRSpaceItem&) rSet.Get(EE_PARA_LRSPACE);
+/*N*/
+/*N*/ if (rLRItem.GetTxtFirstLineOfst() == 0)
+/*N*/ {
+/*N*/ SvxLRSpaceItem aNewLRItem(rLRItem);
+/*N*/ const SvxBulletItem& rBulletItem = (const SvxBulletItem&) rSet.Get(EE_PARA_BULLET);
+/*N*/ short nFirstLineOfst = (short) -rBulletItem.GetWidth();
+/*N*/ aNewLRItem.SetTxtFirstLineOfst(nFirstLineOfst);
+/*N*/ rSet.Put(aNewLRItem);
+/*N*/ }
+/*N*/ }
+/*N*/ }
+/*N*/ else if ( nHelpId == HID_PSEUDOSHEET_TITLE ||
+/*N*/ nHelpId == HID_PSEUDOSHEET_SUBTITLE ||
+/*N*/ aName.Search(aTitleName) != STRING_NOTFOUND ||
+/*N*/ aName.Search(aSubtitleName) != STRING_NOTFOUND )
+/*N*/ {
+/*N*/ // Titel- oder Untertitel-Vorlage
+/*N*/ SfxItemSet& rSet = pSheet->GetItemSet();
+/*N*/
+/*N*/ if (rSet.GetItemState(EE_PARA_BULLETSTATE) != SFX_ITEM_ON ||
+/*N*/ ((const SfxUInt16Item&) rSet.Get(EE_PARA_BULLETSTATE)).GetValue() == 1)
+/*N*/ {
+/*N*/ SfxUInt16Item aBulletStateItem(EE_PARA_BULLETSTATE, 0); // Bullets nicht sichtbar
+/*N*/ rSet.Put(aBulletStateItem);
+/*N*/ }
+/*N*/
+/*N*/ if( nHelpId == HID_PSEUDOSHEET_TITLE ||
+/*N*/ aName.Search(aTitleName) != STRING_NOTFOUND )
+/*N*/ {
+/*N*/ Font aBulletFont( GetBulletFont() );
+/*N*/ aBulletFont.SetSize(Size(0,1552)); // 44 pt
+/*N*/ PutNumBulletItem( pSheet, aBulletFont );
+/*N*/ }
+/*N*/ else if( nHelpId == HID_PSEUDOSHEET_SUBTITLE ||
+/*N*/ aName.Search(aSubtitleName) != STRING_NOTFOUND )
+/*N*/ {
+/*N*/ Font aBulletFont( GetBulletFont() );
+/*N*/ aBulletFont.SetSize(Size(0, 1129)); // 32 pt
+/*N*/ PutNumBulletItem( pSheet, aBulletFont );
+/*N*/ }
+/*N*/ }
+/*N*/ else if ( aName == aStandardName )
+/*N*/ {
+/*N*/ // Standardvorlage
+/*N*/ Font aBulletFont( GetBulletFont() );
+/*N*/ aBulletFont.SetSize(Size(0,846)); // 24 pt
+/*N*/ PutNumBulletItem( pSheet, aBulletFont );
+/*N*/ }
+/*N*/ else if ( rSet.GetItemState( EE_PARA_LRSPACE ) == SFX_ITEM_ON )
+/*N*/ {
+/*N*/ // SvxLRSpaceItem hart gesetzt: NumBulletItem anpassen
+/*N*/ SvxNumBulletItem aNumBullet( (const SvxNumBulletItem&) rSet.Get(EE_PARA_NUMBULLET) );
+/*N*/
+/*N*/ EditEngine::ImportBulletItem( aNumBullet, 0, NULL, &(const SvxLRSpaceItem&) rSet.Get( EE_PARA_LRSPACE ) );
+/*N*/ rSet.Put( aNumBullet );
+/*N*/ }
+/*N*/ }
+/*N*/ }
+
+
+/*************************************************************************
+|*
+|* Neues SvxNumBulletItem fuer das jeweilige StyleSheet setzen
+|*
+\************************************************************************/
+
+/*N*/ void SdStyleSheetPool::PutNumBulletItem( SfxStyleSheetBase* pSheet,
+/*N*/ Font& rBulletFont )
+/*N*/ {
+/*N*/ String aHelpFile;
+/*N*/ ULONG nHelpId = pSheet->GetHelpId( aHelpFile );
+/*N*/ SfxItemSet& rSet = pSheet->GetItemSet();
+/*N*/
+/*N*/ switch ( nHelpId )
+/*N*/ {
+/*N*/ case HID_STANDARD_STYLESHEET_NAME :
+/*N*/ {
+/*N*/ // Standard-Vorlage
+/*N*/ SvxNumberFormat aNumberFormat(SVX_NUM_CHAR_SPECIAL);
+/*N*/ aNumberFormat.SetBulletFont(&rBulletFont);
+/*N*/ aNumberFormat.SetBulletChar( 0x25CF ); // StarBats: 0xF000 + 34
+/*N*/ aNumberFormat.SetBulletRelSize(45);
+/*N*/ aNumberFormat.SetBulletColor(Color(COL_AUTO));
+/*N*/ aNumberFormat.SetStart(1);
+/*N*/ aNumberFormat.SetNumAdjust(SVX_ADJUST_LEFT);
+/*N*/
+/*N*/ SvxNumRule aNumRule( NUM_BULLET_REL_SIZE|NUM_BULLET_COLOR|NUM_CHAR_TEXT_DISTANCE, 10 , FALSE);
+/*N*/ aNumberFormat.SetLSpace( 0 );
+/*N*/ aNumberFormat.SetAbsLSpace( 0 );
+/*N*/ aNumberFormat.SetFirstLineOffset( 0 );
+/*N*/ aNumRule.SetLevel( 0, aNumberFormat );
+/*N*/
+/*N*/ for( USHORT i = 1; i < 10; i++ )
+/*N*/ {
+/*N*/ const short nLSpace = (i + 1) * 600;
+/*N*/ aNumberFormat.SetLSpace(nLSpace);
+/*N*/ aNumberFormat.SetAbsLSpace(nLSpace);
+/*N*/ aNumberFormat.SetFirstLineOffset(-600);
+/*N*/ aNumRule.SetLevel( i, aNumberFormat );
+/*N*/ }
+/*N*/
+/*N*/ rSet.Put( SvxNumBulletItem( aNumRule, EE_PARA_NUMBULLET ) );
+/*N*/ ((SfxStyleSheet*)pSheet)->Broadcast(SfxSimpleHint( SFX_HINT_DATACHANGED ) );
+/*N*/ }
+/*N*/ break;
+/*N*/
+/*N*/ case HID_PSEUDOSHEET_TITLE:
+/*N*/ /* #84013# title gets same bullet as subtitle and not that page symbol anymore */
+/*N*/ case HID_PSEUDOSHEET_SUBTITLE :
+/*N*/ {
+/*N*/ // Untertitel-Vorlage
+/*N*/ SvxNumRule* pDefaultRule = ((SvxNumBulletItem*) rSet.GetPool()->GetSecondaryPool()->GetPoolDefaultItem(EE_PARA_NUMBULLET))->GetNumRule();
+/*N*/ DBG_ASSERT( pDefaultRule, "Wo ist mein Default? [CL]" );
+/*N*/
+/*N*/ if(pDefaultRule)
+/*N*/ {
+/*N*/ SvxNumRule aNumRule(pDefaultRule->GetFeatureFlags(), 9, FALSE);
+/*N*/ for(USHORT i=0; i < aNumRule.GetLevelCount(); i++)
+/*N*/ {
+/*N*/ SvxNumberFormat aFrmt( pDefaultRule->GetLevel(i) );
+/*N*/ aFrmt.SetNumberingType(SVX_NUM_CHAR_SPECIAL);
+/*N*/ aFrmt.SetStart(1);
+/*N*/ aFrmt.SetBulletRelSize(45);
+/*N*/ aFrmt.SetBulletChar( 0x25CF ); // StarBats: 0xF000 + 34
+/*N*/ aFrmt.SetBulletFont(&rBulletFont);
+/*N*/ aNumRule.SetLevel(i, aFrmt);
+/*N*/ }
+/*N*/
+/*N*/ rSet.Put( SvxNumBulletItem( aNumRule, EE_PARA_NUMBULLET ) );
+/*N*/ ((SfxStyleSheet*)pSheet)->Broadcast(SfxSimpleHint( SFX_HINT_DATACHANGED ) );
+/*N*/ }
+/*N*/ }
+/*N*/ break;
+/*N*/
+/*N*/ case HID_PSEUDOSHEET_OUTLINE + 1 :
+/*N*/ {
+/*N*/ // Gliederungs-Vorlage
+/*N*/ SvxNumberFormat aNumberFormat(SVX_NUM_CHAR_SPECIAL);
+/*N*/ aNumberFormat.SetBulletColor(Color(COL_AUTO));
+/*N*/ aNumberFormat.SetStart(1);
+/*N*/ aNumberFormat.SetNumAdjust(SVX_ADJUST_LEFT);
+/*N*/
+/*N*/ SvxNumRule aNumRule( NUM_BULLET_REL_SIZE|NUM_BULLET_COLOR|NUM_CHAR_TEXT_DISTANCE|NUM_SYMBOL_ALIGNMENT,
+/*N*/ 10, FALSE, SVX_RULETYPE_PRESENTATION_NUMBERING );
+/*N*/ for( UINT16 i = 0; i < 10; i++ )
+/*N*/ {
+/*N*/ aNumberFormat.SetBulletChar( 0x25CF ); // StarBats: 0xF000 + 34
+/*N*/ aNumberFormat.SetBulletRelSize(45);
+/*N*/ const short nLSpace = i ? i * 1200 : 1200;
+/*N*/ aNumberFormat.SetLSpace(nLSpace);
+/*N*/ aNumberFormat.SetAbsLSpace(nLSpace);
+/*N*/ USHORT nFirstLineOffset = -600;
+/*N*/
+/*N*/ ULONG nFontSize = 20;
+/*N*/ switch(i)
+/*N*/ {
+/*N*/ case 0:
+/*N*/ case 1:
+/*N*/ {
+/*N*/ nFontSize = 32;
+/*N*/ nFirstLineOffset = -900;
+/*N*/ }
+/*N*/ break;
+/*N*/
+/*N*/ case 2:
+/*N*/ {
+/*N*/ nFontSize = 28;
+/*N*/ nFirstLineOffset = -800;
+/*N*/ aNumberFormat.SetBulletChar( 0x2013 ); // StarBats: 0xF000 + 150
+/*N*/ aNumberFormat.SetBulletRelSize(75);
+/*N*/ }
+/*N*/ break;
+/*N*/
+/*N*/ case 3:
+/*N*/ {
+/*N*/ nFontSize = 24;
+/*N*/ }
+/*N*/ break;
+/*N*/
+/*N*/ case 4:
+/*N*/ {
+/*N*/ aNumberFormat.SetBulletChar( 0x2013 ); // StarBats: 0xF000 + 150
+/*N*/ aNumberFormat.SetBulletRelSize(75);
+/*N*/ }
+/*N*/ break;
+/*N*/ }
+/*N*/
+/*N*/ aNumberFormat.SetFirstLineOffset(nFirstLineOffset);
+/*N*/ nFontSize = (USHORT)((nFontSize * 2540L) / 72); // Pt --> 1/100 mm
+/*N*/ rBulletFont.SetSize(Size(0,846)); // 24 pt
+/*N*/ aNumberFormat.SetBulletFont(&rBulletFont);
+/*N*/ aNumRule.SetLevel( i, aNumberFormat );
+/*N*/ }
+/*N*/
+/*N*/ rSet.Put( SvxNumBulletItem( aNumRule, EE_PARA_NUMBULLET ) );
+/*N*/ ((SfxStyleSheet*)pSheet)->Broadcast(SfxSimpleHint( SFX_HINT_DATACHANGED ) );
+/*N*/ }
+/*N*/ break;
+/*N*/ }
+/*N*/ }
+
+/*************************************************************************
+|*
+|* Standard Bullet-Font erzeugen (ohne Groesse)
+|*
+\************************************************************************/
+
+/*N*/ Font SdStyleSheetPool::GetBulletFont() const
+/*N*/ {
+/*N*/ Font aBulletFont( String( RTL_CONSTASCII_USTRINGPARAM( "StarSymbol" )), Size(0, 1000) );
+/*N*/ aBulletFont.SetCharSet(RTL_TEXTENCODING_UNICODE);
+/*N*/ aBulletFont.SetWeight(WEIGHT_NORMAL);
+/*N*/ aBulletFont.SetUnderline(UNDERLINE_NONE);
+/*N*/ aBulletFont.SetStrikeout(STRIKEOUT_NONE);
+/*N*/ aBulletFont.SetItalic(ITALIC_NONE);
+/*N*/ aBulletFont.SetOutline(FALSE);
+/*N*/ aBulletFont.SetShadow(FALSE);
+/*N*/ aBulletFont.SetColor(Color(COL_AUTO));
+/*N*/ aBulletFont.SetTransparent(TRUE);
+/*N*/
+/*N*/ return aBulletFont;
+/*N*/ }
+
+
+
+
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */