diff options
Diffstat (limited to 'offapi/com')
-rw-r--r-- | offapi/com/sun/star/script/makefile.mk | 4 | ||||
-rwxr-xr-x | offapi/com/sun/star/script/vba/VBAEventId.idl | 140 | ||||
-rwxr-xr-x | offapi/com/sun/star/script/vba/VBAEventProcessor.idl | 49 | ||||
-rwxr-xr-x | offapi/com/sun/star/script/vba/VBASpreadsheetEventProcessor.idl | 50 | ||||
-rwxr-xr-x | offapi/com/sun/star/script/vba/VBATextEventProcessor.idl | 50 | ||||
-rw-r--r-- | offapi/com/sun/star/script/vba/XVBACompatibility.idl (renamed from offapi/com/sun/star/script/XVBACompat.idl) | 27 | ||||
-rwxr-xr-x | offapi/com/sun/star/script/vba/XVBAEventProcessor.idl | 106 | ||||
-rw-r--r-- | offapi/com/sun/star/script/vba/XVBAModuleInfo.idl (renamed from offapi/com/sun/star/script/XVBAModuleInfo.idl) | 48 | ||||
-rwxr-xr-x | offapi/com/sun/star/script/vba/makefile.mk | 52 |
9 files changed, 487 insertions, 39 deletions
diff --git a/offapi/com/sun/star/script/makefile.mk b/offapi/com/sun/star/script/makefile.mk index 24d5fcc83af4..da8e9110d1fa 100644 --- a/offapi/com/sun/star/script/makefile.mk +++ b/offapi/com/sun/star/script/makefile.mk @@ -49,10 +49,8 @@ IDLFILES=\ XPersistentLibraryContainer.idl\ XStorageBasedLibraryContainer.idl\ ModuleSizeExceededRequest.idl\ - XVBACompat.idl\ - XVBAModuleInfo.idl\ ModuleInfo.idl\ - ModuleType.idl\ + ModuleType.idl # ------------------------------------------------------------------ diff --git a/offapi/com/sun/star/script/vba/VBAEventId.idl b/offapi/com/sun/star/script/vba/VBAEventId.idl new file mode 100755 index 000000000000..fda83a18d495 --- /dev/null +++ b/offapi/com/sun/star/script/vba/VBAEventId.idl @@ -0,0 +1,140 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_script_vba_VBAEventId_idl__ +#define __com_sun_star_script_vba_VBAEventId_idl__ + +//============================================================================= + +module com { module sun { module star { module script { module vba { + +//============================================================================= + +/** Constants used to identify VBA document events. + + <p>If one of these events is fired, a specific VBA macro in a specific + document code module will be executed.</p> + + <p>Each event expects some specific arguments to be passed to + <member>XVBAEventProcessor::processVbaEvent</member>.</p> + + @see XVBAEventProcessor + */ +constants VBAEventId +{ + //========================================================================= + + /** An identifier not corresponding to any VBA document event. */ + const long NO_EVENT = -1; + + //========================================================================= + // Global events (identifiers from 1 to 999) + + /** New document opened from template. No arguments. */ + const long AUTO_NEW = 1; + /** Document opened (loaded). No arguments. */ + const long AUTO_OPEN = 2; + /** Document about to be closed. No arguments. */ + const long AUTO_CLOSE = 3; + /** Application start. No arguments. */ + const long AUTO_EXEC = 4; + /** Application exit. No arguments. */ + const long AUTO_EXIT = 5; + + //========================================================================= + // MS Word (identifiers from 1001 to 1999) + + /** New text document opened from template. No arguments. */ + const long DOCUMENT_NEW = 1001; + /** Text document opened (loaded). No arguments. */ + const long DOCUMENT_OPEN = 1002; + /** Document about to be closed. No arguments. */ + const long DOCUMENT_CLOSE = 1003; + + //========================================================================= + // MS Excel (identifiers from 2001 to 2999) + + //------------------------------------------------------------------------- + // document events (2001-2099) + + /** Document activated. No arguments. */ + const long WORKBOOK_ACTIVATE = 2001; + /** Document deactivated. No arguments. */ + const long WORKBOOK_DEACTIVATE = 2002; + /** Document opened (loaded). No arguments. */ + const long WORKBOOK_OPEN = 2003; + /** Document about to be closed. Arguments: [out] boolean bCancel. */ + const long WORKBOOK_BEFORECLOSE = 2004; + /** Document about to be printed. Arguments: [out] boolean bCancel. */ + const long WORKBOOK_BEFOREPRINT = 2005; + /** Document about to be saved. Arguments: boolean bSaveAs, [out] boolean bCancel. */ + const long WORKBOOK_BEFORESAVE = 2006; + /** Document has been saved. Arguments: boolean bSuccess. */ + const long WORKBOOK_AFTERSAVE = 2007; + /** New sheet inserted. Arguments: short nSheet. */ + const long WORKBOOK_NEWSHEET = 2008; + /** Document window has been activated. No arguments. */ + const long WORKBOOK_WINDOWACTIVATE = 2009; + /** Document window has been deactivated. No arguments. */ + const long WORKBOOK_WINDOWDEACTIVATE = 2010; + /** Document window has been resized. No arguments. */ + const long WORKBOOK_WINDOWRESIZE = 2011; + + //------------------------------------------------------------------------- + // sheet events (2101-2199) + + /** Worksheet has been activated (made visible). Arguments: short nSheet. */ + const long WORKSHEET_ACTIVATE = 2101; + /** Worksheet has been activated (made visible). Arguments: short nSheet. */ + const long WORKSHEET_DEACTIVATE = 2102; + /** Double click in the sheet. Arguments: XRange/XSheetCellRangeContainer aRange, [out] boolean bCancel. */ + const long WORKSHEET_BEFOREDOUBLECLICK = 2103; + /** Right click in the sheet. Arguments: XRange/XSheetCellRangeContainer aRange, [out] boolean bCancel. */ + const long WORKSHEET_BEFORERIGHTCLICK = 2104; + /** Cells in sheet have been recalculated. Arguments: short nSheet. */ + const long WORKSHEET_CALCULATE = 2105; + /** Cells in sheet have been changed. Arguments: XRange/XSheetCellRangeContainer aRange. */ + const long WORKSHEET_CHANGE = 2106; + /** Selection in sheet has been changed. Arguments: XRange/XSheetCellRangeContainer aRange. */ + const long WORKSHEET_SELECTIONCHANGE = 2107; + /** Hyperlink has been clicked. Arguments: XCell aCell. */ + const long WORKSHEET_FOLLOWHYPERLINK = 2108; + + //========================================================================= + + /** Implementations are allowed to use identifiers above this value for any + internal purpose. */ + const long USERDEFINED_START = 1000000; +}; + +//============================================================================= + +}; }; }; }; }; + +//============================================================================= + +#endif diff --git a/offapi/com/sun/star/script/vba/VBAEventProcessor.idl b/offapi/com/sun/star/script/vba/VBAEventProcessor.idl new file mode 100755 index 000000000000..d993b37ae250 --- /dev/null +++ b/offapi/com/sun/star/script/vba/VBAEventProcessor.idl @@ -0,0 +1,49 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_script_vba_VBAEventProcessor_idl__ +#define __com_sun_star_script_vba_VBAEventProcessor_idl__ + +#include <com/sun/star/script/vba/XVBAEventProcessor.idl> + +//============================================================================= + +module com { module sun { module star { module script { module vba { + +//============================================================================= + +service VBAEventProcessor : XVBAEventProcessor +{ +}; + +//============================================================================= + +}; }; }; }; }; + +//============================================================================= + +#endif diff --git a/offapi/com/sun/star/script/vba/VBASpreadsheetEventProcessor.idl b/offapi/com/sun/star/script/vba/VBASpreadsheetEventProcessor.idl new file mode 100755 index 000000000000..ce202da4f54c --- /dev/null +++ b/offapi/com/sun/star/script/vba/VBASpreadsheetEventProcessor.idl @@ -0,0 +1,50 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_script_vba_VBASpreadsheetEventProcessor_idl__ +#define __com_sun_star_script_vba_VBASpreadsheetEventProcessor_idl__ + +#include <com/sun/star/script/vba/VBAEventProcessor.idl> + +//============================================================================= + +module com { module sun { module star { module script { module vba { + +//============================================================================= + +service VBASpreadsheetEventProcessor +{ + service VBAEventProcessor; +}; + +//============================================================================= + +}; }; }; }; }; + +//============================================================================= + +#endif diff --git a/offapi/com/sun/star/script/vba/VBATextEventProcessor.idl b/offapi/com/sun/star/script/vba/VBATextEventProcessor.idl new file mode 100755 index 000000000000..fd3c7f895d8d --- /dev/null +++ b/offapi/com/sun/star/script/vba/VBATextEventProcessor.idl @@ -0,0 +1,50 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_script_vba_VBATextEventProcessor_idl__ +#define __com_sun_star_script_vba_VBATextEventProcessor_idl__ + +#include <com/sun/star/script/vba/VBAEventProcessor.idl> + +//============================================================================= + +module com { module sun { module star { module script { module vba { + +//============================================================================= + +service VBATextEventProcessor +{ + service VBAEventProcessor; +}; + +//============================================================================= + +}; }; }; }; }; + +//============================================================================= + +#endif diff --git a/offapi/com/sun/star/script/XVBACompat.idl b/offapi/com/sun/star/script/vba/XVBACompatibility.idl index 09da54eb27cd..bfa9d01655fa 100644 --- a/offapi/com/sun/star/script/XVBACompat.idl +++ b/offapi/com/sun/star/script/vba/XVBACompatibility.idl @@ -2,13 +2,10 @@ * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * - * Copyright 2008 by Sun Microsystems, Inc. + * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite * - * $RCSfile: XLibraryContainer.idl,v $ - * $Revision: 1.4 $ - * * This file is part of OpenOffice.org. * * OpenOffice.org is free software: you can redistribute it and/or modify @@ -27,23 +24,27 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef __com_sun_star_script_XVBACompat_idl__ -#define __com_sun_star_script_XVBACompat_idl__ -#ifndef __com_sun_star_uno_XInterface_idl__ +#ifndef __com_sun_star_script_vba_XVBACompatibility_idl__ +#define __com_sun_star_script_vba_XVBACompatibility_idl__ + #include <com/sun/star/uno/XInterface.idl> -#endif //============================================================================= -module com { module sun { module star { module script { +module com { module sun { module star { module script { module vba { -interface XVBACompat: com::sun::star::uno::XInterface +interface XVBACompatibility { + //------------------------------------------------------------------------- -//============================================================================= - [attribute ] boolean VBACompatModeOn; + [attribute] boolean VBACompatibilityMode; -}; }; }; }; + //------------------------------------------------------------------------- }; + +}; }; }; }; }; + +//============================================================================= + #endif diff --git a/offapi/com/sun/star/script/vba/XVBAEventProcessor.idl b/offapi/com/sun/star/script/vba/XVBAEventProcessor.idl new file mode 100755 index 000000000000..4a3534de8412 --- /dev/null +++ b/offapi/com/sun/star/script/vba/XVBAEventProcessor.idl @@ -0,0 +1,106 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_script_vba_XVBAEventProcessor_idl__ +#define __com_sun_star_script_vba_XVBAEventProcessor_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> +#include <com/sun/star/script/provider/ScriptFrameworkErrorException.idl> +#include <com/sun/star/util/VetoException.idl> + +//============================================================================= + +module com { module sun { module star { module script { module vba { + +//============================================================================= + +/** Executes VBA event handlers. + */ +interface XVBAEventProcessor +{ + //------------------------------------------------------------------------- + + /** Returns whether a VBA event handler exists. + + @param nEventId + The identifier of the event. Must be a constant from <type>VBAEventId</type>. + + @param aArgs + Additional arguments needed to identify some event handlers, e.g. a + sheet index for spreadsheet events. + + @return + <TRUE/>, if the VBA event handler exists. + + @throws <type scope="::com::sun::star::lang">IllegalArgumentException</type> + if the passed event identifier is not supported, or if the passed + specifier is required but invalid. + **/ + boolean hasVbaEventHandler( [in] long nEventId, [in] sequence< any > aArgs ) + raises (::com::sun::star::lang::IllegalArgumentException); + + //------------------------------------------------------------------------- + + /** Executes a VBA event handler. + + @param nEventId + The identifier of the event. Must be a constant from <type>VBAEventId</type>. + + @param aArgs + The input arguments needed to create the argument list of the VBA + event handler. + + @throws <type scope="::com::sun::star::lang">IllegalArgumentException</type> + if the passed event identifier is not supported, or if the passed + arguments do not conform to the arguments expected by the specified + event. + + @throws <type scope="::com::sun::star::script::provider">ScriptFrameworkErrorException</type> + if the VBA event handler could not be invoked. Reasons may be, that + handling of VBA events is not enabled, that the VBA event handler + macro has not been found, or that the execution of the macro has + been aborted with an error. + + @throws <type scope="::com::sun::star::util">VetoException</type> + if the VBA event handler has indicated to veto the event. + **/ + void processVbaEvent( [in] long nEventId, [in] sequence< any > aArgs ) + raises (::com::sun::star::lang::IllegalArgumentException, + ::com::sun::star::script::provider::ScriptFrameworkErrorException, + ::com::sun::star::util::VetoException); + + //------------------------------------------------------------------------- +}; + +//============================================================================= + +}; }; }; }; }; + +//============================================================================= + +#endif diff --git a/offapi/com/sun/star/script/XVBAModuleInfo.idl b/offapi/com/sun/star/script/vba/XVBAModuleInfo.idl index f9c4e64223c3..9954281a5a71 100644 --- a/offapi/com/sun/star/script/XVBAModuleInfo.idl +++ b/offapi/com/sun/star/script/vba/XVBAModuleInfo.idl @@ -2,13 +2,10 @@ * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * - * Copyright 2008 by Sun Microsystems, Inc. + * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite * - * $RCSfile: XLibraryContainer.idl,v $ - * $Revision: 1.4 $ - * * This file is part of OpenOffice.org. * * OpenOffice.org is free software: you can redistribute it and/or modify @@ -27,47 +24,52 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef __com_sun_star_script_XVBACompat_idl__ -#define __com_sun_star_script_XVBACompat_idl__ -#ifndef __com_sun_star_uno_XInterface_idl__ +#ifndef __com_sun_star_script_vba_XVBAModuleInfo_idl__ +#define __com_sun_star_script_vba_XVBAModuleInfo_idl__ + #include <com/sun/star/uno/XInterface.idl> -#endif -#ifndef __com_sun_star_script_ModuleInfo_idl__ #include <com/sun/star/script/ModuleInfo.idl> -#endif -#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ #include <com/sun/star/lang/IllegalArgumentException.idl> -#endif -#ifndef __com_sun_star_container_ElementExistException_idl__ #include <com/sun/star/container/ElementExistException.idl> -#endif -#ifndef __com_sun_star_lang_WrappedTargetException_idl__ #include <com/sun/star/lang/WrappedTargetException.idl> -#endif -#ifndef __com_sun_star_container_NoSuchElementException_idl__ #include <com/sun/star/container/NoSuchElementException.idl> -#endif //============================================================================= -module com { module sun { module star { module script { +module com { module sun { module star { module script { module vba { -interface XVBAModuleInfo: com::sun::star::uno::XInterface +interface XVBAModuleInfo { + //------------------------------------------------------------------------- - com::sun::star::script::ModuleInfo getModuleInfo( [in] string ModuleName ) + com::sun::star::script::ModuleInfo getModuleInfo( [in] string ModuleName ) raises( com::sun::star::container::NoSuchElementException, com::sun::star::lang::WrappedTargetException ); - boolean hasModuleInfo( [in] string ModuleName ); + + //------------------------------------------------------------------------- + + boolean hasModuleInfo( [in] string ModuleName ); + + //------------------------------------------------------------------------- + void insertModuleInfo( [in] string ModuleName, [in] com::sun::star::script::ModuleInfo ModuleInfo ) raises( com::sun::star::lang::IllegalArgumentException, com::sun::star::container::ElementExistException, com::sun::star::lang::WrappedTargetException ); + + //------------------------------------------------------------------------- + void removeModuleInfo( [in] string ModuleName ) raises( com::sun::star::container::NoSuchElementException, com::sun::star::lang::WrappedTargetException ); -}; }; }; }; + + //------------------------------------------------------------------------- }; + +}; }; }; }; }; + +//============================================================================= + #endif diff --git a/offapi/com/sun/star/script/vba/makefile.mk b/offapi/com/sun/star/script/vba/makefile.mk new file mode 100755 index 000000000000..4657b587d7d8 --- /dev/null +++ b/offapi/com/sun/star/script/vba/makefile.mk @@ -0,0 +1,52 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +PRJ=..$/..$/..$/..$/.. + +PRJNAME=offapi + +TARGET=cssscriptvba +PACKAGE=com$/sun$/star$/script$/vba + +# --- Settings ----------------------------------------------------- +.INCLUDE : $(PRJ)$/util$/makefile.pmk + +# ------------------------------------------------------------------------ + +IDLFILES=\ + VBAEventId.idl \ + VBAEventProcessor.idl \ + VBASpreadsheetEventProcessor.idl \ + VBATextEventProcessor.idl \ + XVBACompatibility.idl \ + XVBAEventProcessor.idl \ + XVBAModuleInfo.idl + +# ------------------------------------------------------------------ + +.INCLUDE : target.mk +.INCLUDE : $(PRJ)$/util$/target.pmk |