1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: edglbldc.hxx,v $
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 ************************************************************************/
33 #include <svtools/svarray.hxx>
37 class SwTOXBaseSection
;
39 enum GlobalDocContentType
{
45 class SwGlblDocContent
47 GlobalDocContentType eType
;
50 const SwTOXBase
* pTOX
;
51 const SwSection
* pSect
;
55 SwGlblDocContent( ULONG nPos
);
56 SwGlblDocContent( const SwTOXBaseSection
* pTOX
);
57 SwGlblDocContent( const SwSection
* pSect
);
60 GlobalDocContentType
GetType() const { return eType
; }
61 const SwSection
* GetSection() const
62 { return GLBLDOC_SECTION
== eType
? PTR
.pSect
: 0; }
63 const SwTOXBase
* GetTOX() const
64 { return GLBLDOC_TOXBASE
== eType
? PTR
.pTOX
: 0; }
65 ULONG
GetDocPos() const { return nDocPos
; }
68 inline int operator==( const SwGlblDocContent
& rCmp
) const
69 { return GetDocPos() == rCmp
.GetDocPos(); }
70 inline int operator<( const SwGlblDocContent
& rCmp
) const
71 { return GetDocPos() < rCmp
.GetDocPos(); }
75 typedef SwGlblDocContent
* SwGlblDocContentPtr
;
76 SV_DECL_PTRARR_SORT_DEL( SwGlblDocContents
, SwGlblDocContentPtr
, 10, 10 )