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: odma_lib.hxx,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 ************************************************************************/
37 typedef ODMSTATUS (WINAPI
*TODMRegisterApp
) ( ODMHANDLE FAR
*pOdmHandle
,
43 typedef void (WINAPI
*TODMUnRegisterApp
)(ODMHANDLE odmHandle
);
46 typedef ODMSTATUS (WINAPI
*TODMSelectDoc
)( ODMHANDLE odmHandle
,
51 typedef ODMSTATUS (WINAPI
*TODMOpenDoc
)( ODMHANDLE odmHandle
,
54 LPSTR lpszDocLocation
);
56 typedef ODMSTATUS (WINAPI
*TODMSaveDoc
)( ODMHANDLE odmHandle
,
60 typedef ODMSTATUS (WINAPI
*TODMCloseDoc
)( ODMHANDLE odmHandle
,
67 typedef ODMSTATUS (WINAPI
*TODMNewDoc
)( ODMHANDLE odmHandle
,
71 LPSTR lpszDocLocation
);
73 typedef ODMSTATUS (WINAPI
*TODMSaveAs
)( ODMHANDLE odmHandle
,
77 ODMSAVEASCALLBACK pcbCallBack
,
78 LPVOID pInstanceData
);
80 typedef ODMSTATUS (WINAPI
*TODMActivate
)( ODMHANDLE odmHandle
,
84 typedef ODMSTATUS (WINAPI
*TODMGetDocInfo
)( ODMHANDLE odmHandle
,
90 typedef ODMSTATUS (WINAPI
*TODMSetDocInfo
)( ODMHANDLE odmHandle
,
95 typedef ODMSTATUS (WINAPI
*TODMGetDMSInfo
)( ODMHANDLE odmHandle
,
98 LPDWORD pdwExtensions
);
100 /* Query Enhancements */
101 typedef WORD (WINAPI
*TODMGetDMSCount
)();
103 typedef WORD (WINAPI
*TODMGetDMSList
)( LPSTR buffer
,
106 typedef ODMSTATUS (WINAPI
*TODMGetDMS
)( LPCSTR lpszAppId
,
109 typedef ODMSTATUS (WINAPI
*TODMSetDMS
)( LPCSTR lpszAppId
,
112 typedef ODMSTATUS (WINAPI
*TODMQueryExecute
)( ODMHANDLE odmHandle
,
118 typedef ODMSTATUS (WINAPI
*TODMQueryGetResults
)(ODMHANDLE odmHandle
,
125 typedef ODMSTATUS (WINAPI
*TODMQueryClose
)( ODMHANDLE odmHandle
,
128 /* ODMA 2.0 Enhancements */
129 typedef ODMSTATUS (WINAPI
*TODMCloseDocEx
)( ODMHANDLE odmHandle
,
137 typedef ODMSTATUS (WINAPI
*TODMSaveAsEx
)( ODMHANDLE odmHandle
,
141 ODMSAVEASCALLBACK pcbCallBack
,
142 LPVOID pInstanceData
,
145 typedef ODMSTATUS (WINAPI
*TODMSaveDocEx
)( ODMHANDLE odmHandle
,
150 typedef ODMSTATUS (WINAPI
*TODMSelectDocEx
)( ODMHANDLE odmHandle
,
155 LPSTR lpszFormatFilter
);
157 typedef ODMSTATUS (WINAPI
*TODMQueryCapability
)(ODMHANDLE odmHandle
,
163 typedef ODMSTATUS (WINAPI
*TODMSetDocEvent
)( ODMHANDLE odmHandle
,
171 typedef ODMSTATUS (WINAPI
*TODMGetAlternateContent
)(ODMHANDLE odmHandle
,
175 LPSTR lpszDocLocation
);
177 typedef ODMSTATUS (WINAPI
*TODMSetAlternateContent
)(ODMHANDLE odmHandle
,
181 LPSTR lpszDocLocation
);
183 typedef ODMSTATUS (WINAPI
*TODMGetDocRelation
)( ODMHANDLE odmHandle
,
188 LPSTR lpszPreviousId
);
190 typedef ODMSTATUS (WINAPI
*TODMSetDocRelation
)( ODMHANDLE odmHandle
,
195 LPSTR lpszPreviousId
);
197 // now we define some macros
199 #define NODMRegisterApp(a,b,c,d,e) (*(::odma::pODMRegisterApp))(a,b,c,d,e)
200 #define NODMUnRegisterApp(a) (*(::odma::pODMUnRegisterApp))(a)
201 #define NODMSelectDoc(a,b,c) (*(::odma::pODMSelectDoc))(a,b,c)
202 #define NODMOpenDoc(a,b,c,d) (*(::odma::pODMOpenDoc))(a,b,c,d)
203 #define NODMSaveDoc(a,b,c) (*(::odma::pODMSaveDoc))(a,b,c)
204 #define NODMCloseDoc(a,b,c,d,e,f) (*(::odma::pODMCloseDoc))(a,b,c,d,e,f)
205 #define NODMNewDoc(a,b,c,d,e) (*(::odma::pODMNewDoc))(a,b,c,d,e)
206 #define NODMSaveAs(a,b,c,d,e,f) (*(::odma::pODMSaveAs))(a,b,c,d,e,f)
207 #define NODMActivate(a,b,c) (*(::odma::pODMActivate))(a,b,c)
208 #define NODMGetDocInfo(a,b,c,d,e) (*(::odma::pODMGetDocInfo))(a,b,c,d,e)
209 #define NODMSetDocInfo(a,b,c,d) (*(::odma::pODMSetDocInfo))(a,b,c,d)
210 #define NODMGetDMSInfo(a,b,c,d) (*(::odma::pODMGetDMSInfo))(a,b,c,d)
211 #define NODMGetDMSCount() (*(::odma::pODMGetDMSCount))()
212 #define NODMGetDMSList(a,b) (*(::odma::pODMGetDMSList))(a,b)
213 #define NODMGetDMS(a,b) (*(::odma::pODMGetDMS))(a,b)
214 #define NODMSetDMS(a,b) (*(::odma::pODMSetDMS))(a,b)
215 #define NODMQueryExecute(a,b,c,d,e) (*(::odma::pODMQueryExecute))(a,b,c,d,e)
216 #define NODMQueryGetResults(a,b,c,d,e,f) (*(::odma::pODMQueryGetResults))(a,b,c,d,e,f)
217 #define NODMQueryClose(a,b) (*(::odma::pODMQueryClose))(a,b)
218 #define NODMCloseDocEx(a,b,c,d,e,f,g) (*(::odma::pODMCloseDocEx))(a,b,c,d,e,f,g)
219 #define NODMSaveAsEx(a,b,c,d,e,f,g) (*(::odma::pODMSaveAsEx))(a,b,c,d,e,f,g)
220 #define NODMSaveDocEx(a,b,c,d) (*(::odma::pODMSaveDocEx))(a,b,c,d)
221 #define NODMSelectDocEx(a,b,c,d,e,f) (*(::odma::pODMSelectDocEx))(a,b,c,d,e,f)
222 #define NODMQueryCapability(a,b,c,d,e) (*(::odma::pODMQueryCapability))(a,b,c,d,e)
223 #define NODMSetDocEvent(a,b,c,d,e,f,g) (*(::odma::pODMSetDocEvent))(a,b,c,d,e,f,g)
224 #define NODMGetAlternateContent(a,b,c,d,e) (*(::odma::pODMGetAlternateContent))(a,b,c,d,e)
225 #define NODMSetAlternateContent(a,b,c,d,e) (*(::odma::pODMSetAlternateContent))(a,b,c,d,e)
226 #define NODMGetDocRelation(a,b,c,d,e,f) (*(::odma::pODMGetDocRelation))(a,b,c,d,e,f)
227 #define NODMSetDocRelation(a,b,c,d,e,f) (*(::odma::pODMSetDocRelation))(a,b,c,d,e,f)
229 sal_Bool
DMSsAvailable();
231 extern TODMRegisterApp pODMRegisterApp
;
232 extern TODMUnRegisterApp pODMUnRegisterApp
;
233 extern TODMSelectDoc pODMSelectDoc
;
234 extern TODMOpenDoc pODMOpenDoc
;
235 extern TODMSaveDoc pODMSaveDoc
;
236 extern TODMCloseDoc pODMCloseDoc
;
237 extern TODMNewDoc pODMNewDoc
;
238 extern TODMSaveAs pODMSaveAs
;
239 extern TODMActivate pODMActivate
;
240 extern TODMGetDocInfo pODMGetDocInfo
;
241 extern TODMSetDocInfo pODMSetDocInfo
;
242 extern TODMGetDMSInfo pODMGetDMSInfo
;
243 extern TODMGetDMSCount pODMGetDMSCount
;
244 extern TODMGetDMSList pODMGetDMSList
;
245 extern TODMGetDMS pODMGetDMS
;
246 extern TODMSetDMS pODMSetDMS
;
247 extern TODMQueryExecute pODMQueryExecute
;
248 extern TODMQueryGetResults pODMQueryGetResults
;
249 extern TODMQueryClose pODMQueryClose
;
250 extern TODMCloseDocEx pODMCloseDocEx
;
251 extern TODMSaveAsEx pODMSaveAsEx
;
252 extern TODMSaveDocEx pODMSaveDocEx
;
253 extern TODMSelectDocEx pODMSelectDocEx
;
254 extern TODMQueryCapability pODMQueryCapability
;
255 extern TODMSetDocEvent pODMSetDocEvent
;
256 extern TODMGetAlternateContent pODMGetAlternateContent
;
257 extern TODMSetAlternateContent pODMSetAlternateContent
;
258 extern TODMGetDocRelation pODMGetDocRelation
;
259 extern TODMSetDocRelation pODMSetDocRelation
;
263 #endif // ODMA_LIB_HXX