Update ooo320-m1
[ooovba.git] / forms / source / inc / resettable.hxx
blobc487856debea97378c1538028c97809887e1eb48
1 /*************************************************************************
2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
3 *
4 * Copyright 2009 by Sun Microsystems, Inc.
6 * OpenOffice.org - a multi-platform office productivity suite
8 * This file is part of OpenOffice.org.
10 * OpenOffice.org is free software: you can redistribute it and/or modify
11 * it under the terms of the GNU Lesser General Public License version 3
12 * only, as published by the Free Software Foundation.
14 * OpenOffice.org is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU Lesser General Public License version 3 for more details
18 * (a copy is included in the LICENSE file that accompanied this code).
20 * You should have received a copy of the GNU Lesser General Public License
21 * version 3 along with OpenOffice.org. If not, see
22 * <http://www.openoffice.org/license.html>
23 * for a copy of the LGPLv3 License.
24 ************************************************************************/
26 #ifndef FORMS_RESETTABLE_HXX
27 #define FORMS_RESETTABLE_HXX
29 /** === begin UNO includes === **/
30 #include <com/sun/star/form/XResetListener.hpp>
31 /** === end UNO includes === **/
33 #include <cppuhelper/interfacecontainer.hxx>
35 namespace cppu
37 class OWeakObject;
40 //........................................................................
41 namespace frm
43 //........................................................................
45 //====================================================================
46 //= ResetHelper
47 //====================================================================
48 class ResetHelper
50 public:
51 ResetHelper( ::cppu::OWeakObject& _parent, ::osl::Mutex& _mutex )
52 :m_rParent( _parent )
53 ,m_aResetListeners( _mutex )
57 // XReset equivalents
58 void addResetListener( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XResetListener >& _listener );
59 void removeResetListener( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XResetListener >& _listener );
61 // calling listeners
62 bool approveReset();
63 void notifyResetted();
64 void disposing();
66 private:
67 ::cppu::OWeakObject& m_rParent;
68 ::cppu::OInterfaceContainerHelper m_aResetListeners;
71 //........................................................................
72 } // namespace frm
73 //........................................................................
75 #endif // FORMS_RESETTABLE_HXX