source: trunk/Lucide/SOURCE/plugins/ludoc/ludoc.cpp @ 155

Last change on this file since 155 was 155, checked in by Eugene Romanenko, 14 years ago

extended error reporting

File size: 14.5 KB
Line 
1
2/*
3 *  This file was generated by the SOM Compiler.
4 *  Generated using:
5 *     SOM incremental update: 2.24
6 */
7
8
9/* ***** BEGIN LICENSE BLOCK *****
10 * Version: CDDL 1.0/LGPL 2.1
11 *
12 * The contents of this file are subject to the COMMON DEVELOPMENT AND
13 * DISTRIBUTION LICENSE (CDDL) Version 1.0 (the "License"); you may not use
14 * this file except in compliance with the License. You may obtain a copy of
15 * the License at http://www.sun.com/cddl/
16 *
17 * Software distributed under the License is distributed on an "AS IS" basis,
18 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
19 * for the specific language governing rights and limitations under the
20 * License.
21 *
22 * The Initial Developer of the Original Code is
23 * Eugene Romanenko, netlabs.org.
24 * Portions created by the Initial Developer are Copyright (C) 2006
25 * the Initial Developer. All Rights Reserved.
26 *
27 * Contributor(s):
28 *
29 * Alternatively, the contents of this file may be used under the terms of
30 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
31 * in which case the provisions of the LGPL are applicable instead of those
32 * above. If you wish to allow use of your version of this file only under the
33 * terms of the LGPL, and not to allow others to use your version of this file
34 * under the terms of the CDDL, indicate your decision by deleting the
35 * provisions above and replace them with the notice and other provisions
36 * required by the LGPL. If you do not delete the provisions above, a recipient
37 * may use your version of this file under the terms of any one of the CDDL
38 * or the LGPL.
39 *
40 * ***** END LICENSE BLOCK ***** */
41
42
43
44/*
45 *  This file was generated by the SOM Compiler and Emitter Framework.
46 *  Generated using template emitter:
47 *      SOM Emitter emitxtm: 2.23.1.9
48 */
49
50#ifndef SOM_Module_ludoc_Source
51#define SOM_Module_ludoc_Source
52#endif
53#define LuDocument_Class_Source
54
55#include "ludoc.xih"
56
57
58unsigned _System LibMain( unsigned hmod, unsigned termination )
59{
60    if ( termination ) {
61        /* DLL is detaching from process */
62    } else {
63        /* DLL is attaching to process */
64    }
65    return( 1 );
66}
67
68
69extern "C" LuDocument * _System createObject()
70{
71    return new LuDocument;
72}
73
74extern "C" char * _System getSupportedExtensions()
75{
76    return "";
77}
78
79extern "C" char * _System getDescription()
80{
81    return "NULL plugin, abstract base class for Lucide plugins.";
82}
83
84
85/*
86 * SOM_Scope long  SOMLINK getBpp(LuDocument *somSelf,  Environment *ev)
87 */
88
89/*
90 * The prototype for getBpp was replaced by the following prototype:
91 */
92SOM_Scope short  SOMLINK getBpp(LuDocument *somSelf,  Environment *ev)
93{
94    // Abstract method does nothing
95    return 0;
96}
97
98SOM_Scope boolean  SOMLINK isScalable(LuDocument *somSelf,  Environment *ev)
99{
100    return FALSE;
101}
102
103
104SOM_Scope boolean  SOMLINK isFixedImage(LuDocument *somSelf, 
105                                         Environment *ev)
106{
107    return TRUE;
108}
109
110
111SOM_Scope boolean  SOMLINK isRotable(LuDocument *somSelf,  Environment *ev)
112{
113    return FALSE;
114}
115
116
117SOM_Scope long  SOMLINK getPageCount(LuDocument *somSelf,  Environment *ev)
118{
119    // Abstract method does nothing
120    return 0;
121}
122
123
124SOM_Scope void  SOMLINK getPageSize(LuDocument *somSelf,  Environment *ev,
125                                    long pagenum, double* width,
126                                    double* height)
127{
128    // Abstract method does nothing
129}
130
131
132SOM_Scope boolean  SOMLINK renderPageToPixbuf(LuDocument *somSelf, 
133                                               Environment *ev, 
134                                              long pagenum, long src_x, 
135                                              long src_y, long src_width, 
136                                              long src_height, 
137                                              double scale, long rotation, 
138                                              LuPixbuf* pixbuf, 
139                                              long* errorCode, 
140                                              string* error)
141{
142    // Abstract method does nothing
143    if ( errorCode != NULL ) {
144        *errorCode = LU_LDERR_NO_ERROR;
145    }
146    return FALSE;
147}
148
149
150SOM_Scope boolean  SOMLINK isAsynchRenderingSupported(LuDocument *somSelf, 
151                                                       Environment *ev)
152{
153    return FALSE;
154}
155
156
157
158SOM_Scope void  SOMLINK renderPageToPixbufAsynch(LuDocument *somSelf, 
159                                                  Environment *ev, 
160                                                 long pagenum, 
161                                                 long src_x, 
162                                                 long src_y, 
163                                                 long src_width, 
164                                                 long src_height, 
165                                                 double scale, 
166                                                 long rotation, 
167                                                 LuPixbuf* pixbuf, 
168                                                 LuDocument_asynchCallbackFn fnd, 
169                                                 LuDocument_asynchCallbackFn fna, 
170                                                 somToken fndata, 
171                                                 long* errorCode, 
172                                                 string* error)
173{
174    // Abstract method does nothing
175    if ( errorCode != NULL ) {
176        *errorCode = LU_RERR_NO_ERROR;
177    }
178}
179
180
181SOM_Scope boolean  SOMLINK isRenderIntoPS(LuDocument *somSelf, 
182                                           Environment *ev)
183{
184    return FALSE;
185}
186
187
188SOM_Scope boolean  SOMLINK renderPageToPS(LuDocument *somSelf, 
189                                           Environment *ev, long pagenum, 
190                                          long src_x, long src_y, 
191                                          long src_width, long src_height, 
192                                          double scale, long rotation, 
193                                          unsigned long hps, 
194                                          somMToken rect, long* errorCode, 
195                                          string* error)
196{
197    // Abstract method does nothing
198    if ( errorCode != NULL ) {
199        *errorCode = LU_LDERR_NO_ERROR;
200    }
201    return FALSE;
202}
203
204
205SOM_Scope boolean  SOMLINK isHaveText(LuDocument *somSelf,
206                                      Environment *ev)
207{
208    return FALSE;
209}
210
211
212SOM_Scope LuDocument_LuRectSequence*  SOMLINK getSelectionRectangles(LuDocument *somSelf,
213                                                                    Environment *ev,
214                                                                   long pagenum,
215                                                                   LuRectangle* selection)
216{
217    // Abstract method does nothing
218    return NULL;
219}
220
221
222SOM_Scope void  SOMLINK freeRectangles(Environment *ev,
223                                       LuDocument_LuRectSequence* rectangles)
224{
225    if ( rectangles != NULL )
226    {
227        if ( ( ( rectangles->_maximum != 0 ) ||
228               ( rectangles->_length != 0 ) ) &&
229                   ( rectangles->_buffer != NULL ) )
230        {
231            SOMFree( rectangles->_buffer );
232        }
233        SOMFree( rectangles );
234    }
235}
236
237
238SOM_Scope string  SOMLINK getText(LuDocument *somSelf,  Environment *ev,
239                                  long pagenum, LuRectangle* selection)
240{
241    // Abstract method does nothing
242    return NULL;
243}
244
245
246SOM_Scope boolean  SOMLINK isHaveLinks(LuDocument *somSelf,  Environment *ev)
247{
248    return FALSE;
249}
250
251
252SOM_Scope LuDocument_LuLinkMapSequence*  SOMLINK getLinkMapping(LuDocument *somSelf,
253                                                                 Environment *ev,
254                                                                long pagenum)
255{
256    // Abstract method, returns empty sequence
257    LuDocument_LuLinkMapSequence *mapping = NULL;
258    mapping = (LuDocument_LuLinkMapSequence *)SOMMalloc( sizeof( LuDocument_LuLinkMapSequence ) );
259    mapping->_maximum = 0;
260    mapping->_length = 0;
261    mapping->_buffer = NULL;
262    return mapping;
263}
264
265
266SOM_Scope void  SOMLINK freeLinkMapping(Environment *ev,
267                                        LuDocument_LuLinkMapSequence* mapping)
268{
269    if ( mapping != NULL )
270    {
271        if ( ( ( mapping->_maximum != 0 ) ||
272               ( mapping->_length != 0 ) ) &&
273                   ( mapping->_buffer != NULL ) )
274        {
275            for ( int i = 0; i < mapping->_length; i++ )
276            {
277                if ( mapping->_buffer[ i ].link.title != NULL ) {
278                    SOMFree( mapping->_buffer[ i ].link.title );
279                }
280                if ( mapping->_buffer[ i ].link.uri != NULL ) {
281                    SOMFree( mapping->_buffer[ i ].link.uri );
282                }
283            }
284
285            SOMFree( mapping->_buffer );
286        }
287        SOMFree( mapping );
288    }
289}
290
291
292SOM_Scope boolean  SOMLINK isSaveable(LuDocument *somSelf,  Environment *ev)
293{
294    return FALSE;
295}
296
297
298SOM_Scope boolean  SOMLINK saveAs(LuDocument *somSelf,  Environment *ev,
299                                  string filename)
300{
301    // Abstract method does nothing
302    return FALSE;
303}
304
305
306SOM_Scope boolean  SOMLINK isPostScriptExportable(LuDocument *somSelf,
307                                           Environment *ev)
308{
309    return FALSE;
310}
311
312
313SOM_Scope boolean  SOMLINK exportToPostScript(LuDocument *somSelf, 
314                                               Environment *ev, 
315                                              string filename, 
316                                              long first_page, 
317                                              long last_page, 
318                                              double width, double height, 
319                                              boolean* brkExport)
320{
321    // Abstract method does nothing
322    return FALSE;
323}
324
325
326SOM_Scope boolean  SOMLINK isHaveFontInfo(LuDocument *somSelf,
327                                           Environment *ev)
328{
329    return FALSE;
330}
331
332
333SOM_Scope LuDocument_LuFontInfoSequence*  SOMLINK getFontInfo(LuDocument *somSelf,
334                                                               Environment *ev)
335{
336    // Abstract method does nothing
337    return NULL;
338}
339
340
341SOM_Scope void  SOMLINK freeFontInfo(Environment *ev,
342                                     LuDocument_LuFontInfoSequence* fonts)
343{
344    if ( fonts != NULL )
345    {
346        if ( ( ( fonts->_maximum != 0 ) ||
347               ( fonts->_length != 0 ) ) &&
348                   ( fonts->_buffer != NULL ) )
349        {
350            for ( int i = 0; i < fonts->_length; i++ )
351            {
352                if ( fonts->_buffer[ i ].name != NULL ) {
353                    SOMFree( fonts->_buffer[ i ].name );
354                }
355                if ( fonts->_buffer[ i ].type != NULL ) {
356                    SOMFree( fonts->_buffer[ i ].type );
357                }
358            }
359
360            SOMFree( fonts->_buffer );
361        }
362        SOMFree( fonts );
363    }
364}
365
366
367SOM_Scope boolean  SOMLINK isHaveIndex(LuDocument *somSelf,  Environment *ev)
368{
369    return FALSE;
370}
371
372
373SOM_Scope LuIndexNode*  SOMLINK getIndex(LuDocument *somSelf,
374                                          Environment *ev)
375{
376    // Abstract method does nothing
377    return NULL;
378}
379
380
381SOM_Scope LuDocumentInfo*  SOMLINK getDocumentInfo(LuDocument *somSelf,
382                                                    Environment *ev)
383{
384    LuDocumentInfo *info = (LuDocumentInfo *)SOMMalloc( sizeof( LuDocumentInfo ) );
385    memset( info, 0, sizeof( LuDocumentInfo ) );
386    return info;
387}
388
389
390SOM_Scope void  SOMLINK freeDocumentInfo(Environment *ev, LuDocumentInfo* info)
391{
392    if ( info != NULL )
393    {
394        if ( info->fields_mask & LU_DOCUMENT_INFO_TITLE ) {
395            SOMFree( info->title );
396        }
397        if ( info->fields_mask & LU_DOCUMENT_INFO_FORMAT ) {
398            SOMFree( info->format );
399        }
400        if ( info->fields_mask & LU_DOCUMENT_INFO_AUTHOR ) {
401            SOMFree( info->author );
402        }
403        if ( info->fields_mask & LU_DOCUMENT_INFO_SUBJECT ) {
404            SOMFree( info->subject );
405        }
406        if ( info->fields_mask & LU_DOCUMENT_INFO_KEYWORDS ) {
407            SOMFree( info->keywords );
408        }
409        if ( info->fields_mask & LU_DOCUMENT_INFO_CREATOR ) {
410            SOMFree( info->creator );
411        }
412        if ( info->fields_mask & LU_DOCUMENT_INFO_PRODUCER ) {
413            SOMFree( info->producer );
414        }
415
416        SOMFree( info );
417    }
418}
419
420
421SOM_Scope boolean  SOMLINK getThumbnailSize(LuDocument *somSelf,
422                                             Environment *ev,
423                                            long pagenum, 
424                                            short suggested_width,
425                                            short* width, short* height)
426{
427    // Abstract method does nothing
428    return FALSE;
429}
430
431
432SOM_Scope LuPixbuf*  SOMLINK getThumbnail(LuDocument *somSelf,
433                                           Environment *ev, long pagenum,
434                                          short suggested_width)
435{
436    // Abstract method does nothing
437    return NULL;
438}
439
440
441SOM_Scope LuDocument_LuRectSequence*  SOMLINK searchText(LuDocument *somSelf, 
442                                                          Environment *ev, 
443                                                         long pagenum, 
444                                                         string text, 
445                                                         boolean caseSensitive )
446{
447    // Abstract method does nothing
448    return NULL;
449}
450
451
452SOM_Scope boolean  SOMLINK isCreateFileThumbnail(LuDocument *somSelf, 
453                                                  Environment *ev)
454{
455    return FALSE;
456}
457
458
459SOM_Scope void SOMLINK somDefaultInit(LuDocument *somSelf, som3InitCtrl* ctrl)
460{
461    somInitCtrl globalCtrl;
462    somBooleanVector myMask;
463    LuDocument_BeginInitializer_somDefaultInit;
464    LuDocument_Init_SOMObject_somDefaultInit(somSelf, ctrl);
465}
466
467
468SOM_Scope boolean  SOMLINK loadFile(LuDocument *somSelf,  Environment *ev, 
469                                    string filename, string password, 
470                                    long* errorCode, string* error)
471{
472    // Abstract method does nothing
473    if ( errorCode != NULL ) {
474        *errorCode = LU_LDERR_NO_ERROR;
475    }
476    return FALSE;
477}
478
Note: See TracBrowser for help on using the repository browser.