1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2008 by Sun Microsystems, Inc.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * $RCSfile: $
10  * $Revision: $
11  *
12  * This file is part of OpenOffice.org.
13  *
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.
17  *
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).
23  *
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.
28  *
29  ************************************************************************/
30 #ifndef _FRMSIDEBARWINCONTAINER_HXX
31 #define _FRMSIDEBARWINCONTAINER_HXX
32 
33 #include <sal/types.h>
34 #include <vector>
35 
36 class SwFrm;
37 class SwFmtFld;
38 class Window;
39 
40 namespace sw { namespace sidebarwindows {
41 
42 class SwSidebarWin;
43 class FrmSidebarWinContainer;
44 
45 class SwFrmSidebarWinContainer
46 {
47     public:
48         SwFrmSidebarWinContainer();
49         ~SwFrmSidebarWinContainer();
50 
51         bool insert( const SwFrm& rFrm,
52                      const SwFmtFld& rFmtFld,
53                      SwSidebarWin& rSidebarWin );
54 
55         bool remove( const SwFrm& rFrm,
56                      const SwSidebarWin& rSidebarWin );
57 
58         bool empty( const SwFrm& rFrm );
59 
60         SwSidebarWin* get( const SwFrm& rFrm,
61                            const sal_Int32 nIndex );
62 
63         void getAll( const SwFrm& rFrm,
64                      std::vector< Window* >* pSidebarWins );
65 
66     private:
67         FrmSidebarWinContainer* mpFrmSidebarWinContainer;
68 };
69 
70 } } // eof of namespace sw::sidebarwindows::
71 
72 #endif
73 
74