gsf 3.0.9-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/Rakefile +55 -0
- data/lib/gsf.rb +53 -0
- data/lib/gsf/input.rb +26 -0
- data/lib/gsf/loader.rb +57 -0
- data/test/gsf-test-utils.rb +22 -0
- data/test/run-test.rb +46 -0
- data/test/test-input-stdio.rb +25 -0
- data/vendor/local/bin/gsf-office-thumbnailer.exe +0 -0
- data/vendor/local/bin/gsf-vba-dump.exe +0 -0
- data/vendor/local/bin/gsf.exe +0 -0
- data/vendor/local/bin/libgsf-1-114.dll +0 -0
- data/vendor/local/bin/libgsf-win32-1-114.dll +0 -0
- data/vendor/local/include/libgsf-1/gsf-win32/gsf-input-win32.h +41 -0
- data/vendor/local/include/libgsf-1/gsf-win32/gsf-output-win32.h +41 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-blob.h +39 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-clip-data.h +72 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-doc-meta-data.h +66 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-docprop-vector.h +47 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-fwd.h +121 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-impl-utils.h +156 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-infile-impl.h +50 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-infile-msole.h +45 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-infile-msvba.h +49 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-infile-stdio.h +43 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-infile-tar.h +40 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-infile-zip.h +43 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-infile.h +46 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input-bzip.h +34 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input-gio.h +44 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input-gzip.h +43 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input-http.h +45 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input-impl.h +68 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input-iochannel.h +35 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input-memory.h +46 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input-proxy.h +46 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input-stdio.h +48 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input-textline.h +46 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-input.h +69 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-libxml.h +225 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-meta-names.h +482 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-msole-utils.h +70 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-open-pkg-utils.h +95 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-opendoc-utils.h +162 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-outfile-impl.h +46 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-outfile-msole.h +47 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-outfile-stdio.h +49 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-outfile-zip.h +61 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-outfile.h +49 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-output-bzip.h +43 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-output-csv.h +84 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-output-gio.h +44 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-output-gzip.h +43 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-output-iconv.h +47 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-output-impl.h +37 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-output-iochannel.h +43 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-output-memory.h +44 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-output-stdio.h +52 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-output.h +99 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-shared-memory.h +51 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-structured-blob.h +45 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-timestamp.h +70 -0
- data/vendor/local/include/libgsf-1/gsf/gsf-utils.h +340 -0
- data/vendor/local/include/libgsf-1/gsf/gsf.h +98 -0
- data/vendor/local/lib/libgsf-1.a +0 -0
- data/vendor/local/lib/libgsf-1.dll.a +0 -0
- data/vendor/local/lib/libgsf-1.la +41 -0
- data/vendor/local/lib/libgsf-win32-1.a +0 -0
- data/vendor/local/lib/libgsf-win32-1.dll.a +0 -0
- data/vendor/local/lib/libgsf-win32-1.la +41 -0
- data/vendor/local/lib/pkgconfig/libgsf-1.pc +11 -0
- data/vendor/local/lib/pkgconfig/libgsf-win32-1.pc +11 -0
- data/vendor/local/share/gtk-doc/html/gsf/annotation-glossary.html +56 -0
- data/vendor/local/share/gtk-doc/html/gsf/api.html +107 -0
- data/vendor/local/share/gtk-doc/html/gsf/dependencies.html +109 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-Compression.html +369 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-GIO.html +307 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-GIOChannel.html +119 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-Infile-reading-structed-files.html +397 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-Input-from-unstructured-files.html +887 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-MS-OLE2.html +894 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-OASIS-Open-Document.html +398 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-Outfile-writing-structed-files.html +237 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-Output-to-unstructured-files.html +830 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-Reading-and-Writing-from-local-files-and-directories.html +593 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-Text.html +523 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-XML-and-libxml.html +2032 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-Zip.html +338 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-blobs.html +56 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-clip-data.html +444 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-index.html +875 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-memory.html +332 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-metadata.html +1762 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-users.html +73 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf-utils.html +2503 -0
- data/vendor/local/share/gtk-doc/html/gsf/gsf.devhelp2 +440 -0
- data/vendor/local/share/gtk-doc/html/gsf/history.html +45 -0
- data/vendor/local/share/gtk-doc/html/gsf/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/gsf/index.html +98 -0
- data/vendor/local/share/gtk-doc/html/gsf/index.sgml +572 -0
- data/vendor/local/share/gtk-doc/html/gsf/intro.html +39 -0
- data/vendor/local/share/gtk-doc/html/gsf/io.html +38 -0
- data/vendor/local/share/gtk-doc/html/gsf/left-insensitive.png +0 -0
- data/vendor/local/share/gtk-doc/html/gsf/left.png +0 -0
- data/vendor/local/share/gtk-doc/html/gsf/misc.html +33 -0
- data/vendor/local/share/gtk-doc/html/gsf/parsers.html +59 -0
- data/vendor/local/share/gtk-doc/html/gsf/right-insensitive.png +0 -0
- data/vendor/local/share/gtk-doc/html/gsf/right.png +0 -0
- data/vendor/local/share/gtk-doc/html/gsf/sources.html +50 -0
- data/vendor/local/share/gtk-doc/html/gsf/style.css +461 -0
- data/vendor/local/share/gtk-doc/html/gsf/up-insensitive.png +0 -0
- data/vendor/local/share/gtk-doc/html/gsf/up.png +0 -0
- data/vendor/local/share/license/libgsf/AUTHORS +3 -0
- data/vendor/local/share/license/libgsf/COPYING +340 -0
- data/vendor/local/share/license/libgsf/COPYING.LIB +504 -0
- data/vendor/local/share/locale/as/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/bs/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/ca/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/cs/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/da/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/de/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/el/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/en_GB/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/eo/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/es/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/eu/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/fi/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/fr/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/gl/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/he/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/hu/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/id/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/it/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/ja/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/ko/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/lt/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/lv/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/ml/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/nb/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/nn/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/oc/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/pa/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/pl/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/pt/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/pt_BR/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/ro/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/ru/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/sk/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/sl/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/sr/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/sr@latin/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/sv/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/ta/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/tg/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/th/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/tr/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/uk/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/zh_CN/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/zh_HK/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/locale/zh_TW/LC_MESSAGES/libgsf.mo +0 -0
- data/vendor/local/share/man/man1/gsf-office-thumbnailer.1 +71 -0
- data/vendor/local/share/man/man1/gsf-vba-dump.1 +61 -0
- data/vendor/local/share/man/man1/gsf.1 +91 -0
- data/vendor/local/share/thumbnailers/gsf-office.thumbnailer +4 -0
- metadata +235 -0
@@ -0,0 +1,66 @@
|
|
1
|
+
/* vim: set sw=8: -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
2
|
+
/*
|
3
|
+
* gsf-doc-meta-data.h: get, set, remove custom meta properties associated with documents
|
4
|
+
*
|
5
|
+
* Copyright (C) 2002-2006 Dom Lachowicz (cinamod@hotmail.com)
|
6
|
+
* Jody Goldberg (jody@gnome.org)
|
7
|
+
*
|
8
|
+
* This program is free software; you can redistribute it and/or
|
9
|
+
* modify it under the terms of version 2.1 of the GNU Lesser General Public
|
10
|
+
* License as published by the Free Software Foundation.
|
11
|
+
*
|
12
|
+
* This program is distributed in the hope that it will be useful,
|
13
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
14
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
15
|
+
* GNU General Public License for more details.
|
16
|
+
*
|
17
|
+
* You should have received a copy of the GNU Lesser General Public License
|
18
|
+
* along with this program; if not, write to the Free Software
|
19
|
+
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
|
20
|
+
* USA
|
21
|
+
*/
|
22
|
+
|
23
|
+
#ifndef GSF_DOC_META_DATA_H
|
24
|
+
#define GSF_DOC_META_DATA_H
|
25
|
+
|
26
|
+
#include <gsf/gsf-fwd.h>
|
27
|
+
|
28
|
+
G_BEGIN_DECLS
|
29
|
+
|
30
|
+
#define GSF_DOC_META_DATA_TYPE (gsf_doc_meta_data_get_type ())
|
31
|
+
#define GSF_DOC_META_DATA(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSF_DOC_META_DATA_TYPE, GsfDocMetaData))
|
32
|
+
#define IS_GSF_DOC_META_DATA(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSF_DOC_META_DATA_TYPE))
|
33
|
+
|
34
|
+
GType gsf_doc_meta_data_get_type (void) G_GNUC_CONST;
|
35
|
+
/* void gsf_doc_meta_data_register_type (GTypeModule *module); glib dynamic types are not thread safe */
|
36
|
+
|
37
|
+
GsfDocMetaData *gsf_doc_meta_data_new (void);
|
38
|
+
GsfDocProp *gsf_doc_meta_data_lookup (GsfDocMetaData const *meta,
|
39
|
+
char const *name);
|
40
|
+
void gsf_doc_meta_data_insert (GsfDocMetaData *meta,
|
41
|
+
char *name, GValue *value);
|
42
|
+
void gsf_doc_meta_data_remove (GsfDocMetaData *meta,
|
43
|
+
char const *name);
|
44
|
+
GsfDocProp *gsf_doc_meta_data_steal (GsfDocMetaData *meta,
|
45
|
+
char const *name);
|
46
|
+
void gsf_doc_meta_data_store (GsfDocMetaData *meta,
|
47
|
+
GsfDocProp *prop);
|
48
|
+
void gsf_doc_meta_data_foreach (GsfDocMetaData const *meta,
|
49
|
+
GHFunc func, gpointer user_data);
|
50
|
+
gsize gsf_doc_meta_data_size (GsfDocMetaData const *meta);
|
51
|
+
void gsf_doc_meta_dump (GsfDocMetaData const *meta);
|
52
|
+
|
53
|
+
GType gsf_doc_prop_get_type (void);
|
54
|
+
GsfDocProp *gsf_doc_prop_new (char *name);
|
55
|
+
void gsf_doc_prop_free (GsfDocProp *prop);
|
56
|
+
char const *gsf_doc_prop_get_name (GsfDocProp const *prop);
|
57
|
+
GValue const *gsf_doc_prop_get_val (GsfDocProp const *prop);
|
58
|
+
void gsf_doc_prop_set_val (GsfDocProp *prop, GValue *val);
|
59
|
+
GValue *gsf_doc_prop_swap_val (GsfDocProp *prop, GValue *val);
|
60
|
+
char const *gsf_doc_prop_get_link (GsfDocProp const *prop);
|
61
|
+
void gsf_doc_prop_set_link (GsfDocProp *prop, char *link);
|
62
|
+
void gsf_doc_prop_dump (GsfDocProp const *prop);
|
63
|
+
|
64
|
+
G_END_DECLS
|
65
|
+
|
66
|
+
#endif /* GSF_DOC_META_DATA_H */
|
@@ -0,0 +1,47 @@
|
|
1
|
+
/* vim: set sw=8: -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
2
|
+
/*
|
3
|
+
* gsf-docprop-vectors.h: A type implementing OLE Document Property vectors
|
4
|
+
*
|
5
|
+
* Copyright (C) 2004-2006 Frank Chiulli (fc-linux@cox.net)
|
6
|
+
*
|
7
|
+
* This program is free software; you can redistribute it and/or
|
8
|
+
* modify it under the terms of version 2.1 of the GNU Lesser General Public
|
9
|
+
* License as published by the Free Software Foundation.
|
10
|
+
*
|
11
|
+
* This program is distributed in the hope that it will be useful,
|
12
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14
|
+
* GNU General Public License for more details.
|
15
|
+
*
|
16
|
+
* You should have received a copy of the GNU Lesser General Public License
|
17
|
+
* along with this program; if not, write to the Free Software
|
18
|
+
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
|
19
|
+
* USA
|
20
|
+
*/
|
21
|
+
|
22
|
+
#ifndef GSF_DOCPROP_VECTOR_H
|
23
|
+
#define GSF_DOCPROP_VECTOR_H
|
24
|
+
|
25
|
+
#include <gsf/gsf-fwd.h>
|
26
|
+
|
27
|
+
G_BEGIN_DECLS
|
28
|
+
|
29
|
+
#define GSF_DOCPROP_VECTOR_TYPE (gsf_docprop_vector_get_type ())
|
30
|
+
#define GSF_DOCPROP_VECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST((o), GSF_DOCPROP_VECTOR, GsfDocPropVector))
|
31
|
+
#define IS_GSF_DOCPROP_VECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GSF_DOCPROP_VECTOR_TYPE))
|
32
|
+
|
33
|
+
typedef struct _GsfDocPropVector GsfDocPropVector;
|
34
|
+
GType gsf_docprop_vector_get_type (void) G_GNUC_CONST;
|
35
|
+
/* void gsf_docprop_vector_register_type (GTypeModule *module); glib dynamic types are not thread safe */
|
36
|
+
|
37
|
+
GsfDocPropVector *gsf_docprop_vector_new (void);
|
38
|
+
void gsf_docprop_vector_append (GsfDocPropVector *vector, GValue *value);
|
39
|
+
gchar *gsf_docprop_vector_as_string (GsfDocPropVector const *vector);
|
40
|
+
|
41
|
+
#define VAL_IS_GSF_DOCPROP_VECTOR(v) (G_TYPE_CHECK_VALUE_TYPE((v), GSF_DOCPROP_VECTOR_TYPE))
|
42
|
+
GsfDocPropVector *gsf_value_get_docprop_vector (GValue const *value);
|
43
|
+
GValueArray *gsf_value_get_docprop_varray (GValue const *value);
|
44
|
+
|
45
|
+
G_END_DECLS
|
46
|
+
|
47
|
+
#endif /* GSF_DOCPROP_VECTOR_H */
|
@@ -0,0 +1,121 @@
|
|
1
|
+
/*
|
2
|
+
* gsf-fwd.h:
|
3
|
+
*
|
4
|
+
* Copyright (C) 2002-2006 Jody Goldberg (jody@gnome.org)
|
5
|
+
* Copyright (C) 2013 Morten Welinder (terra@gnome.org)
|
6
|
+
*
|
7
|
+
* This program is free software; you can redistribute it and/or
|
8
|
+
* modify it under the terms of version 2.1 of the GNU Lesser General Public
|
9
|
+
* License as published by the Free Software Foundation.
|
10
|
+
*
|
11
|
+
* This program is distributed in the hope that it will be useful,
|
12
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14
|
+
* GNU General Public License for more details.
|
15
|
+
*
|
16
|
+
* You should have received a copy of the GNU Lesser General Public License
|
17
|
+
* along with this program; if not, write to the Free Software
|
18
|
+
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
|
19
|
+
* USA
|
20
|
+
*/
|
21
|
+
|
22
|
+
#ifndef GSF_FWD_H
|
23
|
+
#define GSF_FWD_H
|
24
|
+
|
25
|
+
#include <glib.h>
|
26
|
+
#include <glib-object.h>
|
27
|
+
|
28
|
+
G_BEGIN_DECLS
|
29
|
+
|
30
|
+
/**
|
31
|
+
* GsfInput:
|
32
|
+
*
|
33
|
+
* Class representing an input stream.
|
34
|
+
*/
|
35
|
+
typedef struct _GsfInput GsfInput;
|
36
|
+
|
37
|
+
/**
|
38
|
+
* GsfInfil:
|
39
|
+
*
|
40
|
+
* Class representing an input file.
|
41
|
+
*/
|
42
|
+
typedef struct _GsfInfile GsfInfile;
|
43
|
+
|
44
|
+
/**
|
45
|
+
* GsfOutput:
|
46
|
+
*
|
47
|
+
* Class representing an output stream, counterpart to #GsfInput.
|
48
|
+
*/
|
49
|
+
typedef struct _GsfOutput GsfOutput;
|
50
|
+
|
51
|
+
/**
|
52
|
+
* GsfOutfile:
|
53
|
+
*
|
54
|
+
* Class representing an output file, counterpart to #GsfInfile.
|
55
|
+
*/
|
56
|
+
typedef struct _GsfOutfile GsfOutfile;
|
57
|
+
|
58
|
+
/**
|
59
|
+
* GsfDocProp:
|
60
|
+
*
|
61
|
+
* Class representing a properties of a document.
|
62
|
+
*/
|
63
|
+
typedef struct _GsfDocProp GsfDocProp;
|
64
|
+
|
65
|
+
/**
|
66
|
+
* GsfDocMetaData:
|
67
|
+
*
|
68
|
+
* Class representing information about a document, such as creator and time of
|
69
|
+
* last modification.
|
70
|
+
*/
|
71
|
+
typedef struct _GsfDocMetaData GsfDocMetaData;
|
72
|
+
|
73
|
+
/**
|
74
|
+
* GsfTimestamp:
|
75
|
+
* @date : #GDate in local timezone
|
76
|
+
* @seconds : #glong number of seconds since @date.
|
77
|
+
* @time_zone : possibly blank #GString of the timezone
|
78
|
+
* @timet : as from mktime.
|
79
|
+
*
|
80
|
+
* A point in time.
|
81
|
+
*/
|
82
|
+
typedef struct _GsfTimestamp GsfTimestamp;
|
83
|
+
|
84
|
+
/**
|
85
|
+
* gsf_off_t:
|
86
|
+
*
|
87
|
+
* Data type to represent offsets (positions) within a data stream.
|
88
|
+
*
|
89
|
+
* FIXME:
|
90
|
+
* gsf_off_t is really supposed to be the widest type off_t can be configured
|
91
|
+
* to on the platform
|
92
|
+
*/
|
93
|
+
typedef gint64 gsf_off_t;
|
94
|
+
|
95
|
+
/**
|
96
|
+
* GSF_OFF_T_FORMAT:
|
97
|
+
*
|
98
|
+
* The printf(3) conversion specifier to be used for printing values of type
|
99
|
+
* #gsf_off_t.
|
100
|
+
*/
|
101
|
+
#define GSF_OFF_T_FORMAT G_GINT64_FORMAT
|
102
|
+
|
103
|
+
typedef struct _GsfXMLIn GsfXMLIn;
|
104
|
+
typedef struct _GsfXMLInDoc GsfXMLInDoc;
|
105
|
+
typedef struct _GsfXMLInNode GsfXMLInNode;
|
106
|
+
typedef struct _GsfXMLInNS GsfXMLInNS;
|
107
|
+
typedef struct _GsfXMLBlob GsfXMLBlob;
|
108
|
+
typedef struct _GsfXMLOut GsfXMLOut;
|
109
|
+
typedef struct GsfXMLOutClass_ GsfXMLOutClass;
|
110
|
+
|
111
|
+
typedef struct _GsfBlob GsfBlob;
|
112
|
+
|
113
|
+
#if GLIB_CHECK_VERSION(2,32,0)
|
114
|
+
#define GSF_DEPRECATED_FOR(f) G_DEPRECATED_FOR(f)
|
115
|
+
#else
|
116
|
+
#define GSF_DEPRECATED_FOR(f)
|
117
|
+
#endif
|
118
|
+
|
119
|
+
G_END_DECLS
|
120
|
+
|
121
|
+
#endif /* GSF_H */
|
@@ -0,0 +1,156 @@
|
|
1
|
+
/* vim: set sw=8: -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
2
|
+
/*
|
3
|
+
* gsf-impl-utils.h:
|
4
|
+
*
|
5
|
+
* Copyright (C) 2002-2006 Jody Goldberg (jody@gnome.org)
|
6
|
+
*
|
7
|
+
* This program is free software; you can redistribute it and/or
|
8
|
+
* modify it under the terms of version 2.1 of the GNU Lesser General Public
|
9
|
+
* License as published by the Free Software Foundation.
|
10
|
+
*
|
11
|
+
* This program is distributed in the hope that it will be useful,
|
12
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14
|
+
* GNU General Public License for more details.
|
15
|
+
*
|
16
|
+
* You should have received a copy of the GNU Lesser General Public License
|
17
|
+
* along with this program; if not, write to the Free Software
|
18
|
+
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
|
19
|
+
* USA
|
20
|
+
*/
|
21
|
+
|
22
|
+
#ifndef GSF_IMPL_UTILS_H
|
23
|
+
#define GSF_IMPL_UTILS_H
|
24
|
+
|
25
|
+
#include <gsf/gsf.h>
|
26
|
+
#include <glib-object.h>
|
27
|
+
|
28
|
+
G_BEGIN_DECLS
|
29
|
+
|
30
|
+
/* We need to do this with a version check as this header gets installed.
|
31
|
+
*
|
32
|
+
* DEPRECATED in favour of G_PARAM_STATIC_STRINGS
|
33
|
+
**/
|
34
|
+
#if GLIB_CHECK_VERSION(2,7,0)
|
35
|
+
#define GSF_PARAM_STATIC (G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB)
|
36
|
+
#else
|
37
|
+
#define GSF_PARAM_STATIC 0
|
38
|
+
#endif
|
39
|
+
|
40
|
+
/*************************************************************************/
|
41
|
+
|
42
|
+
#define GSF_CLASS_FULL(name, prefix, base_init, base_finalize, \
|
43
|
+
class_init, class_finalize, instance_init, parent_type, \
|
44
|
+
abstract, interface_decl) \
|
45
|
+
GType \
|
46
|
+
prefix ## _get_type (void) \
|
47
|
+
{ \
|
48
|
+
static GType type = 0; \
|
49
|
+
if (G_UNLIKELY (type == 0)) { \
|
50
|
+
static GTypeInfo const object_info = { \
|
51
|
+
sizeof (name ## Class), \
|
52
|
+
(GBaseInitFunc) base_init, \
|
53
|
+
(GBaseFinalizeFunc) base_finalize, \
|
54
|
+
(GClassInitFunc) class_init, \
|
55
|
+
(GClassFinalizeFunc) class_finalize, \
|
56
|
+
NULL, /* class_data */ \
|
57
|
+
sizeof (name), \
|
58
|
+
0, /* n_preallocs */ \
|
59
|
+
(GInstanceInitFunc) instance_init, \
|
60
|
+
NULL \
|
61
|
+
}; \
|
62
|
+
type = g_type_register_static (parent_type, #name, \
|
63
|
+
&object_info, (GTypeFlags) abstract); \
|
64
|
+
interface_decl \
|
65
|
+
} \
|
66
|
+
return type; \
|
67
|
+
}
|
68
|
+
|
69
|
+
/**
|
70
|
+
* GSF_CLASS:
|
71
|
+
* @name: Name of the class.
|
72
|
+
* @prefix: Symbol prefix designating the namespace to be used for
|
73
|
+
* implementing the class.
|
74
|
+
* @class_init: Initialisation function of type #GClassInitFunc for the class.
|
75
|
+
* @instance_init: Initialisation function of type #GInstanceInitFunc
|
76
|
+
* for an instance of the class.
|
77
|
+
* @parent: Parent class to this class.
|
78
|
+
*
|
79
|
+
* Set up a GSF class.
|
80
|
+
*
|
81
|
+
*/
|
82
|
+
#define GSF_CLASS(name, prefix, class_init, instance_init, parent) \
|
83
|
+
GSF_CLASS_FULL(name, prefix, NULL, NULL, class_init, NULL, \
|
84
|
+
instance_init, parent, 0, {})
|
85
|
+
#define GSF_CLASS_ABSTRACT(name, prefix, class_init, instance_init, parent) \
|
86
|
+
GSF_CLASS_FULL(name, prefix, NULL, NULL, class_init, NULL, \
|
87
|
+
instance_init, parent, G_TYPE_FLAG_ABSTRACT, {})
|
88
|
+
|
89
|
+
#define GSF_INTERFACE_FULL(type, init_func, iface_type) { \
|
90
|
+
static GInterfaceInfo const iface = { \
|
91
|
+
(GInterfaceInitFunc) init_func, NULL, NULL }; \
|
92
|
+
g_type_add_interface_static (type, iface_type, &iface); \
|
93
|
+
}
|
94
|
+
|
95
|
+
#define GSF_INTERFACE(init_func, iface_type) \
|
96
|
+
GSF_INTERFACE_FULL(type, init_func, iface_type)
|
97
|
+
|
98
|
+
/*************************************************************************/
|
99
|
+
|
100
|
+
#define GSF_DYNAMIC_CLASS_FULL(name, prefix, base_init, base_finalize, \
|
101
|
+
class_init, class_finalize, instance_init, parent_type, \
|
102
|
+
abstract, interface_decl) \
|
103
|
+
static GType prefix ## _type; \
|
104
|
+
\
|
105
|
+
GType prefix ## _get_type (void); \
|
106
|
+
void prefix ## _register_type (GTypeModule *module); \
|
107
|
+
\
|
108
|
+
GType \
|
109
|
+
prefix ## _get_type (void) \
|
110
|
+
{ \
|
111
|
+
g_return_val_if_fail (prefix ## _type != 0, 0); \
|
112
|
+
return prefix ## _type; \
|
113
|
+
} \
|
114
|
+
void \
|
115
|
+
prefix ## _register_type (GTypeModule *module) \
|
116
|
+
{ \
|
117
|
+
GTypeInfo const type_info = { \
|
118
|
+
sizeof (name ## Class), \
|
119
|
+
(GBaseInitFunc) base_init, \
|
120
|
+
(GBaseFinalizeFunc) base_finalize, \
|
121
|
+
(GClassInitFunc) class_init, \
|
122
|
+
(GClassFinalizeFunc) class_finalize, \
|
123
|
+
NULL, /* class_data */ \
|
124
|
+
sizeof (name), \
|
125
|
+
0, /* n_preallocs */ \
|
126
|
+
(GInstanceInitFunc) instance_init, \
|
127
|
+
NULL \
|
128
|
+
}; \
|
129
|
+
GType type; \
|
130
|
+
\
|
131
|
+
g_return_if_fail (prefix ## _type == 0); \
|
132
|
+
\
|
133
|
+
prefix ## _type = type = g_type_module_register_type (module, \
|
134
|
+
parent_type, #name, &type_info, (GTypeFlags) abstract); \
|
135
|
+
interface_decl \
|
136
|
+
}
|
137
|
+
|
138
|
+
#define GSF_DYNAMIC_CLASS(name, prefix, class_init, instance_init, parent) \
|
139
|
+
GSF_DYNAMIC_CLASS_FULL(name, prefix, NULL, NULL, class_init, NULL, \
|
140
|
+
instance_init, parent, 0, {})
|
141
|
+
#define GSF_DYNAMIC_CLASS_ABSTRACT(name, prefix, class_init, instance_init, parent) \
|
142
|
+
GSF_DYNAMIC_CLASS_FULL(name, prefix, NULL, NULL, class_init, NULL, \
|
143
|
+
instance_init, parent, G_TYPE_FLAG_ABSTRACT, {})
|
144
|
+
|
145
|
+
#define GSF_DYNAMIC_INTERFACE_FULL(type, init_func, iface_type, module) { \
|
146
|
+
GInterfaceInfo const iface = { \
|
147
|
+
(GInterfaceInitFunc) init_func, NULL, NULL }; \
|
148
|
+
g_type_module_add_interface (module, type, iface_type, &iface); \
|
149
|
+
}
|
150
|
+
|
151
|
+
#define GSF_DYNAMIC_INTERFACE(init_func, iface_type, module) \
|
152
|
+
GSF_DYNAMIC_INTERFACE_FULL(type, init_func, iface_type, module)
|
153
|
+
|
154
|
+
G_END_DECLS
|
155
|
+
|
156
|
+
#endif /* GSF_IMPL_UTILS_H */
|
@@ -0,0 +1,50 @@
|
|
1
|
+
/* vim: set sw=8: -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
2
|
+
/*
|
3
|
+
* gsf-infile-impl.h:
|
4
|
+
*
|
5
|
+
* Copyright (C) 2002-2006 Jody Goldberg (jody@gnome.org)
|
6
|
+
*
|
7
|
+
* This program is free software; you can redistribute it and/or
|
8
|
+
* modify it under the terms of version 2.1 of the GNU Lesser General Public
|
9
|
+
* License as published by the Free Software Foundation.
|
10
|
+
*
|
11
|
+
* This program is distributed in the hope that it will be useful,
|
12
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14
|
+
* GNU General Public License for more details.
|
15
|
+
*
|
16
|
+
* You should have received a copy of the GNU Lesser General Public License
|
17
|
+
* along with this program; if not, write to the Free Software
|
18
|
+
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
|
19
|
+
* USA
|
20
|
+
*/
|
21
|
+
|
22
|
+
#ifndef GSF_INFILE_IMPL_H
|
23
|
+
#define GSF_INFILE_IMPL_H
|
24
|
+
|
25
|
+
#include <gsf/gsf-fwd.h>
|
26
|
+
#include <gsf/gsf-input-impl.h>
|
27
|
+
#include <gsf/gsf-infile.h>
|
28
|
+
|
29
|
+
G_BEGIN_DECLS
|
30
|
+
|
31
|
+
struct _GsfInfile {
|
32
|
+
GsfInput parent;
|
33
|
+
};
|
34
|
+
|
35
|
+
typedef struct {
|
36
|
+
GsfInputClass input_class;
|
37
|
+
int (*num_children) (GsfInfile *infile);
|
38
|
+
char const *(*name_by_index) (GsfInfile *infile, int i);
|
39
|
+
GsfInput *(*child_by_index) (GsfInfile *infile,
|
40
|
+
int i, GError **err);
|
41
|
+
GsfInput *(*child_by_name) (GsfInfile *infile,
|
42
|
+
char const *name, GError **err);
|
43
|
+
} GsfInfileClass;
|
44
|
+
|
45
|
+
#define GSF_INFILE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), GSF_INFILE_TYPE, GsfInfileClass))
|
46
|
+
#define GSF_IS_INFILE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GSF_INFILE_TYPE))
|
47
|
+
|
48
|
+
G_END_DECLS
|
49
|
+
|
50
|
+
#endif /* GSF_INFILE_IMPL_H */
|
@@ -0,0 +1,45 @@
|
|
1
|
+
/* vim: set sw=8: -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
2
|
+
/*
|
3
|
+
* gsf-infile-msole.h:
|
4
|
+
*
|
5
|
+
* Copyright (C) 2002-2006 Jody Goldberg (jody@gnome.org)
|
6
|
+
*
|
7
|
+
* This program is free software; you can redistribute it and/or
|
8
|
+
* modify it under the terms of version 2.1 of the GNU Lesser General Public
|
9
|
+
* License as published by the Free Software Foundation.
|
10
|
+
*
|
11
|
+
* This program is distributed in the hope that it will be useful,
|
12
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14
|
+
* GNU General Public License for more details.
|
15
|
+
*
|
16
|
+
* You should have received a copy of the GNU Lesser General Public License
|
17
|
+
* along with this program; if not, write to the Free Software
|
18
|
+
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
|
19
|
+
* USA
|
20
|
+
*/
|
21
|
+
|
22
|
+
#ifndef GSF_INFILE_MSOLE_H
|
23
|
+
#define GSF_INFILE_MSOLE_H
|
24
|
+
|
25
|
+
#include <gsf/gsf-fwd.h>
|
26
|
+
#include <gsf/gsf-infile.h>
|
27
|
+
|
28
|
+
G_BEGIN_DECLS
|
29
|
+
|
30
|
+
typedef struct _GsfInfileMSOle GsfInfileMSOle;
|
31
|
+
|
32
|
+
#define GSF_INFILE_MSOLE_TYPE (gsf_infile_msole_get_type ())
|
33
|
+
#define GSF_INFILE_MSOLE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSF_INFILE_MSOLE_TYPE, GsfInfileMSOle))
|
34
|
+
#define GSF_IS_INFILE_MSOLE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSF_INFILE_MSOLE_TYPE))
|
35
|
+
|
36
|
+
GType gsf_infile_msole_get_type (void) G_GNUC_CONST;
|
37
|
+
/* void gsf_infile_msole_register_type (GTypeModule *module); glib dynamic types are not thread safe */
|
38
|
+
|
39
|
+
GsfInfile *gsf_infile_msole_new (GsfInput *source, GError **err);
|
40
|
+
gboolean gsf_infile_msole_get_class_id (GsfInfileMSOle const *ole,
|
41
|
+
guint8 *res);
|
42
|
+
|
43
|
+
G_END_DECLS
|
44
|
+
|
45
|
+
#endif /* GSF_INFILE_MSOLE_H */
|