update dev300-m57
[ooovba.git] / sc / inc / stlpool.hxx
blob510448d859a8338c33a37350b0b2134c94330852
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: stlpool.hxx,v $
10 * $Revision: 1.6.32.1 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef SC_STLPOOL_HXX
32 #define SC_STLPOOL_HXX
34 #include <svtools/style.hxx>
37 class ScStyleSheet;
38 class ScDocument;
40 class ScStyleSheetPool : public SfxStyleSheetPool
42 public:
43 ScStyleSheetPool( SfxItemPool& rPool,
44 ScDocument* pDocument );
46 void SetDocument( ScDocument* pDocument );
47 ScDocument* GetDocument() const { return pDoc; }
49 virtual void Remove( SfxStyleSheetBase* pStyle );
51 void SetActualStyleSheet ( SfxStyleSheetBase* pActStyleSheet )
52 { pActualStyleSheet = pActStyleSheet; }
54 SfxStyleSheetBase* GetActualStyleSheet ()
55 { return pActualStyleSheet; }
57 void CreateStandardStyles();
58 void CopyStdStylesFrom( ScStyleSheetPool* pSrcPool );
59 //UNUSED2008-05 void UpdateStdNames();
61 void CopyStyleFrom( ScStyleSheetPool* pSrcPool,
62 const String& rName, SfxStyleFamily eFamily );
64 ScStyleSheet* FindCaseIns( const String& rName, SfxStyleFamily eFam );
66 //UNUSED2009-05 void SetForceStdName( const String* pSet );
67 const String* GetForceStdName() const { return pForceStdName; }
69 virtual SfxStyleSheetBase& Make( const String&, SfxStyleFamily eFam,
70 USHORT nMask = 0xffff, USHORT nPos = 0xffff );
72 protected:
73 virtual ~ScStyleSheetPool();
75 using SfxStyleSheetPool::Create; // calcwarnings: Create(const SfxStyleSheet&) - ever used?
77 virtual SfxStyleSheetBase* Create( const String& rName,
78 SfxStyleFamily eFamily,
79 USHORT nMask);
80 virtual SfxStyleSheetBase* Create( const SfxStyleSheetBase& rStyle );
82 private:
83 SfxStyleSheetBase* pActualStyleSheet;
84 ScDocument* pDoc;
85 const String* pForceStdName;
88 #endif // SC_STLPOOL_HXX