merge the formfield patch from ooo-build
[ooovba.git] / svx / source / inc / formtoolbars.hxx
blob2083e2baa83a2411c773bbc259a5088ac19a36ef
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: formtoolbars.hxx,v $
10 * $Revision: 1.8 $
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 SVX_SOURCE_INC_FORMTOOLBARS_HXX
32 #define SVX_SOURCE_INC_FORMTOOLBARS_HXX
34 #include "fmdocumentclassification.hxx"
35 #include <com/sun/star/frame/XLayoutManager.hpp>
37 #include <tools/solar.h>
39 #include <svx/svxdllapi.h>
41 //........................................................................
42 namespace svxform
44 //........................................................................
46 //====================================================================
47 //= FormToolboxes
48 //====================================================================
49 class FormToolboxes
51 private:
52 ::com::sun::star::uno::Reference< ::com::sun::star::frame::XLayoutManager >
53 m_xLayouter;
55 public:
56 /** constructs an instance
57 @param _rxFrame
58 the frame to analyze
60 SVX_DLLPUBLIC FormToolboxes(
61 const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& _rxFrame
64 public:
65 /** retrieves the URI for the toolbox associated with the given slot, depending
66 on the type of our document
68 SVX_DLLPUBLIC ::rtl::OUString
69 getToolboxResourceName( USHORT _nSlotId ) const;
71 /** toggles the toolbox associated with the given slot
73 SVX_DLLPUBLIC void toggleToolbox( USHORT _nSlotId ) const;
75 /** determines whether the toolbox associated with the given slot is currently visible
77 SVX_DLLPUBLIC bool isToolboxVisible( USHORT _nSlotId ) const;
79 /** ensures that a given toolbox is visible
81 inline void showToolbox( USHORT _SlotId ) const
83 if ( !isToolboxVisible( _SlotId ) )
84 toggleToolbox( _SlotId );
88 //........................................................................
89 } // namespace svxform
90 //........................................................................
92 #endif // SVX_SOURCE_INC_FORMTOOLBARS_HXX