1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: addin.h,v $
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 ************************************************************************/
46 typedef unsigned char BOOL
;
47 typedef unsigned char BYTE
;
48 typedef unsigned short USHORT
;
49 typedef unsigned long ULONG
;
54 /* enable all new interface features */
58 /* all character string returns are limited to 255+1 chars */
59 #define SO_CHARSTRING_MAX 256
60 #define SO_StringCopy( dst, src ) \
61 (strncpy( dst, src, SO_CHARSTRING_MAX ), dst[SO_CHARSTRING_MAX-1] = '\0')
75 #define CALLTYPE __cdecl
80 #define PASCAL _pascal
82 #define CALLTYPE FAR PASCAL
90 typedef void (CALLTYPE
* AdvData
)( double& nHandle
, void* pData
);
92 extern void CALLTYPE
GetFunctionCount( USHORT
& nCount
);
94 extern void CALLTYPE
GetFunctionData( USHORT
& nNo
,
98 char* pInternalName
);
100 extern void CALLTYPE
IsAsync( USHORT
& nNo
, ParamType
* peType
);
102 extern void CALLTYPE
Advice( USHORT
& nNo
, AdvData
& pfCallback
);
104 extern void CALLTYPE
Unadvice( double& nHandle
);
107 /* new in StarOffice 5.0 */
109 extern void CALLTYPE
GetParameterDescription( USHORT
& nNo
, USHORT
& nParam
,
110 char* pName
, char* pDesc
);
112 /* new in StarOffice 5.1 */
114 extern void CALLTYPE
SetLanguage( USHORT
& nLanguage
);
121 typedef void (CALLTYPE
* AdvData
)( double* nHandle
, void* pData
);
123 extern void CALLTYPE
GetFunctionCount( USHORT
* nCount
);
125 extern void CALLTYPE
GetFunctionData( USHORT
* nNo
,
127 USHORT
* nParamCount
,
129 char * pInternalName
);
131 extern void CALLTYPE
IsAsync( USHORT
* nNo
, ParamType
* peType
);
133 extern void CALLTYPE
Advice( USHORT
* nNo
, AdvData
* pfCallback
);
135 extern void CALLTYPE
Unadvice( double * nHandle
);
137 /* new in StarOffice 5.0 */
139 extern void CALLTYPE
GetParameterDescription( USHORT
* nNo
, USHORT
* nParam
,
140 char* pName
, char* pDesc
);
143 /* new in StarOffice 5.1 */
145 extern void CALLTYPE
SetLanguage( USHORT
* nLanguage
);