1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28#ifndef __com_sun_star_script_vba_XVBAEventProcessor_idl__ 29#define __com_sun_star_script_vba_XVBAEventProcessor_idl__ 30 31#include <com/sun/star/uno/XInterface.idl> 32#include <com/sun/star/lang/IllegalArgumentException.idl> 33#include <com/sun/star/util/VetoException.idl> 34 35//============================================================================= 36 37module com { module sun { module star { module script { module vba { 38 39//============================================================================= 40 41/** Executes VBA event handlers. 42 */ 43interface XVBAEventProcessor 44{ 45 //------------------------------------------------------------------------- 46 47 /** Returns whether a VBA event handler exists. 48 49 @param nEventId 50 The identifier of the event. Must be a constant from <type>VBAEventId</type>. 51 52 @param aArgs 53 Additional arguments needed to identify some event handlers, e.g. a 54 sheet index for spreadsheet events. 55 56 @return 57 <TRUE/>, if the VBA event handler exists. 58 59 @throws <type scope="::com::sun::star::lang">IllegalArgumentException</type> 60 if the passed event identifier is not supported, or if the passed 61 specifier is required but invalid. 62 **/ 63 boolean hasVbaEventHandler( [in] long nEventId, [in] sequence< any > aArgs ) 64 raises (::com::sun::star::lang::IllegalArgumentException); 65 66 //------------------------------------------------------------------------- 67 68 /** Executes a VBA event handler. 69 70 @param nEventId 71 The identifier of the event. Must be a constant from <type>VBAEventId</type>. 72 73 @param aArgs 74 The input arguments needed to create the argument list of the VBA 75 event handler. 76 77 @return 78 <TRUE/>, if event handing is enabled, and the event handler macro 79 exists and has been invoked. 80 81 @throws <type scope="::com::sun::star::lang">IllegalArgumentException</type> 82 if the passed event identifier is not supported, or if the passed 83 arguments do not conform to the arguments expected by the specified 84 event. 85 86 @throws <type scope="::com::sun::star::util">VetoException</type> 87 if the VBA event handler has indicated to veto the event. 88 **/ 89 boolean processVbaEvent( [in] long nEventId, [in] sequence< any > aArgs ) 90 raises (::com::sun::star::lang::IllegalArgumentException, 91 ::com::sun::star::util::VetoException); 92 93 //------------------------------------------------------------------------- 94}; 95 96//============================================================================= 97 98}; }; }; }; }; 99 100//============================================================================= 101 102#endif 103