gsf 3.0.9-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +55 -0
  3. data/lib/gsf.rb +53 -0
  4. data/lib/gsf/input.rb +26 -0
  5. data/lib/gsf/loader.rb +57 -0
  6. data/test/gsf-test-utils.rb +22 -0
  7. data/test/run-test.rb +46 -0
  8. data/test/test-input-stdio.rb +25 -0
  9. data/vendor/local/bin/gsf-office-thumbnailer.exe +0 -0
  10. data/vendor/local/bin/gsf-vba-dump.exe +0 -0
  11. data/vendor/local/bin/gsf.exe +0 -0
  12. data/vendor/local/bin/libgsf-1-114.dll +0 -0
  13. data/vendor/local/bin/libgsf-win32-1-114.dll +0 -0
  14. data/vendor/local/include/libgsf-1/gsf-win32/gsf-input-win32.h +41 -0
  15. data/vendor/local/include/libgsf-1/gsf-win32/gsf-output-win32.h +41 -0
  16. data/vendor/local/include/libgsf-1/gsf/gsf-blob.h +39 -0
  17. data/vendor/local/include/libgsf-1/gsf/gsf-clip-data.h +72 -0
  18. data/vendor/local/include/libgsf-1/gsf/gsf-doc-meta-data.h +66 -0
  19. data/vendor/local/include/libgsf-1/gsf/gsf-docprop-vector.h +47 -0
  20. data/vendor/local/include/libgsf-1/gsf/gsf-fwd.h +121 -0
  21. data/vendor/local/include/libgsf-1/gsf/gsf-impl-utils.h +156 -0
  22. data/vendor/local/include/libgsf-1/gsf/gsf-infile-impl.h +50 -0
  23. data/vendor/local/include/libgsf-1/gsf/gsf-infile-msole.h +45 -0
  24. data/vendor/local/include/libgsf-1/gsf/gsf-infile-msvba.h +49 -0
  25. data/vendor/local/include/libgsf-1/gsf/gsf-infile-stdio.h +43 -0
  26. data/vendor/local/include/libgsf-1/gsf/gsf-infile-tar.h +40 -0
  27. data/vendor/local/include/libgsf-1/gsf/gsf-infile-zip.h +43 -0
  28. data/vendor/local/include/libgsf-1/gsf/gsf-infile.h +46 -0
  29. data/vendor/local/include/libgsf-1/gsf/gsf-input-bzip.h +34 -0
  30. data/vendor/local/include/libgsf-1/gsf/gsf-input-gio.h +44 -0
  31. data/vendor/local/include/libgsf-1/gsf/gsf-input-gzip.h +43 -0
  32. data/vendor/local/include/libgsf-1/gsf/gsf-input-http.h +45 -0
  33. data/vendor/local/include/libgsf-1/gsf/gsf-input-impl.h +68 -0
  34. data/vendor/local/include/libgsf-1/gsf/gsf-input-iochannel.h +35 -0
  35. data/vendor/local/include/libgsf-1/gsf/gsf-input-memory.h +46 -0
  36. data/vendor/local/include/libgsf-1/gsf/gsf-input-proxy.h +46 -0
  37. data/vendor/local/include/libgsf-1/gsf/gsf-input-stdio.h +48 -0
  38. data/vendor/local/include/libgsf-1/gsf/gsf-input-textline.h +46 -0
  39. data/vendor/local/include/libgsf-1/gsf/gsf-input.h +69 -0
  40. data/vendor/local/include/libgsf-1/gsf/gsf-libxml.h +225 -0
  41. data/vendor/local/include/libgsf-1/gsf/gsf-meta-names.h +482 -0
  42. data/vendor/local/include/libgsf-1/gsf/gsf-msole-utils.h +70 -0
  43. data/vendor/local/include/libgsf-1/gsf/gsf-open-pkg-utils.h +95 -0
  44. data/vendor/local/include/libgsf-1/gsf/gsf-opendoc-utils.h +162 -0
  45. data/vendor/local/include/libgsf-1/gsf/gsf-outfile-impl.h +46 -0
  46. data/vendor/local/include/libgsf-1/gsf/gsf-outfile-msole.h +47 -0
  47. data/vendor/local/include/libgsf-1/gsf/gsf-outfile-stdio.h +49 -0
  48. data/vendor/local/include/libgsf-1/gsf/gsf-outfile-zip.h +61 -0
  49. data/vendor/local/include/libgsf-1/gsf/gsf-outfile.h +49 -0
  50. data/vendor/local/include/libgsf-1/gsf/gsf-output-bzip.h +43 -0
  51. data/vendor/local/include/libgsf-1/gsf/gsf-output-csv.h +84 -0
  52. data/vendor/local/include/libgsf-1/gsf/gsf-output-gio.h +44 -0
  53. data/vendor/local/include/libgsf-1/gsf/gsf-output-gzip.h +43 -0
  54. data/vendor/local/include/libgsf-1/gsf/gsf-output-iconv.h +47 -0
  55. data/vendor/local/include/libgsf-1/gsf/gsf-output-impl.h +37 -0
  56. data/vendor/local/include/libgsf-1/gsf/gsf-output-iochannel.h +43 -0
  57. data/vendor/local/include/libgsf-1/gsf/gsf-output-memory.h +44 -0
  58. data/vendor/local/include/libgsf-1/gsf/gsf-output-stdio.h +52 -0
  59. data/vendor/local/include/libgsf-1/gsf/gsf-output.h +99 -0
  60. data/vendor/local/include/libgsf-1/gsf/gsf-shared-memory.h +51 -0
  61. data/vendor/local/include/libgsf-1/gsf/gsf-structured-blob.h +45 -0
  62. data/vendor/local/include/libgsf-1/gsf/gsf-timestamp.h +70 -0
  63. data/vendor/local/include/libgsf-1/gsf/gsf-utils.h +340 -0
  64. data/vendor/local/include/libgsf-1/gsf/gsf.h +98 -0
  65. data/vendor/local/lib/libgsf-1.a +0 -0
  66. data/vendor/local/lib/libgsf-1.dll.a +0 -0
  67. data/vendor/local/lib/libgsf-1.la +41 -0
  68. data/vendor/local/lib/libgsf-win32-1.a +0 -0
  69. data/vendor/local/lib/libgsf-win32-1.dll.a +0 -0
  70. data/vendor/local/lib/libgsf-win32-1.la +41 -0
  71. data/vendor/local/lib/pkgconfig/libgsf-1.pc +11 -0
  72. data/vendor/local/lib/pkgconfig/libgsf-win32-1.pc +11 -0
  73. data/vendor/local/share/gtk-doc/html/gsf/annotation-glossary.html +56 -0
  74. data/vendor/local/share/gtk-doc/html/gsf/api.html +107 -0
  75. data/vendor/local/share/gtk-doc/html/gsf/dependencies.html +109 -0
  76. data/vendor/local/share/gtk-doc/html/gsf/gsf-Compression.html +369 -0
  77. data/vendor/local/share/gtk-doc/html/gsf/gsf-GIO.html +307 -0
  78. data/vendor/local/share/gtk-doc/html/gsf/gsf-GIOChannel.html +119 -0
  79. data/vendor/local/share/gtk-doc/html/gsf/gsf-Infile-reading-structed-files.html +397 -0
  80. data/vendor/local/share/gtk-doc/html/gsf/gsf-Input-from-unstructured-files.html +887 -0
  81. data/vendor/local/share/gtk-doc/html/gsf/gsf-MS-OLE2.html +894 -0
  82. data/vendor/local/share/gtk-doc/html/gsf/gsf-OASIS-Open-Document.html +398 -0
  83. data/vendor/local/share/gtk-doc/html/gsf/gsf-Outfile-writing-structed-files.html +237 -0
  84. data/vendor/local/share/gtk-doc/html/gsf/gsf-Output-to-unstructured-files.html +830 -0
  85. data/vendor/local/share/gtk-doc/html/gsf/gsf-Reading-and-Writing-from-local-files-and-directories.html +593 -0
  86. data/vendor/local/share/gtk-doc/html/gsf/gsf-Text.html +523 -0
  87. data/vendor/local/share/gtk-doc/html/gsf/gsf-XML-and-libxml.html +2032 -0
  88. data/vendor/local/share/gtk-doc/html/gsf/gsf-Zip.html +338 -0
  89. data/vendor/local/share/gtk-doc/html/gsf/gsf-blobs.html +56 -0
  90. data/vendor/local/share/gtk-doc/html/gsf/gsf-clip-data.html +444 -0
  91. data/vendor/local/share/gtk-doc/html/gsf/gsf-index.html +875 -0
  92. data/vendor/local/share/gtk-doc/html/gsf/gsf-memory.html +332 -0
  93. data/vendor/local/share/gtk-doc/html/gsf/gsf-metadata.html +1762 -0
  94. data/vendor/local/share/gtk-doc/html/gsf/gsf-users.html +73 -0
  95. data/vendor/local/share/gtk-doc/html/gsf/gsf-utils.html +2503 -0
  96. data/vendor/local/share/gtk-doc/html/gsf/gsf.devhelp2 +440 -0
  97. data/vendor/local/share/gtk-doc/html/gsf/history.html +45 -0
  98. data/vendor/local/share/gtk-doc/html/gsf/home.png +0 -0
  99. data/vendor/local/share/gtk-doc/html/gsf/index.html +98 -0
  100. data/vendor/local/share/gtk-doc/html/gsf/index.sgml +572 -0
  101. data/vendor/local/share/gtk-doc/html/gsf/intro.html +39 -0
  102. data/vendor/local/share/gtk-doc/html/gsf/io.html +38 -0
  103. data/vendor/local/share/gtk-doc/html/gsf/left-insensitive.png +0 -0
  104. data/vendor/local/share/gtk-doc/html/gsf/left.png +0 -0
  105. data/vendor/local/share/gtk-doc/html/gsf/misc.html +33 -0
  106. data/vendor/local/share/gtk-doc/html/gsf/parsers.html +59 -0
  107. data/vendor/local/share/gtk-doc/html/gsf/right-insensitive.png +0 -0
  108. data/vendor/local/share/gtk-doc/html/gsf/right.png +0 -0
  109. data/vendor/local/share/gtk-doc/html/gsf/sources.html +50 -0
  110. data/vendor/local/share/gtk-doc/html/gsf/style.css +461 -0
  111. data/vendor/local/share/gtk-doc/html/gsf/up-insensitive.png +0 -0
  112. data/vendor/local/share/gtk-doc/html/gsf/up.png +0 -0
  113. data/vendor/local/share/license/libgsf/AUTHORS +3 -0
  114. data/vendor/local/share/license/libgsf/COPYING +340 -0
  115. data/vendor/local/share/license/libgsf/COPYING.LIB +504 -0
  116. data/vendor/local/share/locale/as/LC_MESSAGES/libgsf.mo +0 -0
  117. data/vendor/local/share/locale/bs/LC_MESSAGES/libgsf.mo +0 -0
  118. data/vendor/local/share/locale/ca/LC_MESSAGES/libgsf.mo +0 -0
  119. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/libgsf.mo +0 -0
  120. data/vendor/local/share/locale/cs/LC_MESSAGES/libgsf.mo +0 -0
  121. data/vendor/local/share/locale/da/LC_MESSAGES/libgsf.mo +0 -0
  122. data/vendor/local/share/locale/de/LC_MESSAGES/libgsf.mo +0 -0
  123. data/vendor/local/share/locale/el/LC_MESSAGES/libgsf.mo +0 -0
  124. data/vendor/local/share/locale/en_GB/LC_MESSAGES/libgsf.mo +0 -0
  125. data/vendor/local/share/locale/eo/LC_MESSAGES/libgsf.mo +0 -0
  126. data/vendor/local/share/locale/es/LC_MESSAGES/libgsf.mo +0 -0
  127. data/vendor/local/share/locale/eu/LC_MESSAGES/libgsf.mo +0 -0
  128. data/vendor/local/share/locale/fi/LC_MESSAGES/libgsf.mo +0 -0
  129. data/vendor/local/share/locale/fr/LC_MESSAGES/libgsf.mo +0 -0
  130. data/vendor/local/share/locale/gl/LC_MESSAGES/libgsf.mo +0 -0
  131. data/vendor/local/share/locale/he/LC_MESSAGES/libgsf.mo +0 -0
  132. data/vendor/local/share/locale/hu/LC_MESSAGES/libgsf.mo +0 -0
  133. data/vendor/local/share/locale/id/LC_MESSAGES/libgsf.mo +0 -0
  134. data/vendor/local/share/locale/it/LC_MESSAGES/libgsf.mo +0 -0
  135. data/vendor/local/share/locale/ja/LC_MESSAGES/libgsf.mo +0 -0
  136. data/vendor/local/share/locale/ko/LC_MESSAGES/libgsf.mo +0 -0
  137. data/vendor/local/share/locale/lt/LC_MESSAGES/libgsf.mo +0 -0
  138. data/vendor/local/share/locale/lv/LC_MESSAGES/libgsf.mo +0 -0
  139. data/vendor/local/share/locale/ml/LC_MESSAGES/libgsf.mo +0 -0
  140. data/vendor/local/share/locale/nb/LC_MESSAGES/libgsf.mo +0 -0
  141. data/vendor/local/share/locale/nn/LC_MESSAGES/libgsf.mo +0 -0
  142. data/vendor/local/share/locale/oc/LC_MESSAGES/libgsf.mo +0 -0
  143. data/vendor/local/share/locale/pa/LC_MESSAGES/libgsf.mo +0 -0
  144. data/vendor/local/share/locale/pl/LC_MESSAGES/libgsf.mo +0 -0
  145. data/vendor/local/share/locale/pt/LC_MESSAGES/libgsf.mo +0 -0
  146. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/libgsf.mo +0 -0
  147. data/vendor/local/share/locale/ro/LC_MESSAGES/libgsf.mo +0 -0
  148. data/vendor/local/share/locale/ru/LC_MESSAGES/libgsf.mo +0 -0
  149. data/vendor/local/share/locale/sk/LC_MESSAGES/libgsf.mo +0 -0
  150. data/vendor/local/share/locale/sl/LC_MESSAGES/libgsf.mo +0 -0
  151. data/vendor/local/share/locale/sr/LC_MESSAGES/libgsf.mo +0 -0
  152. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/libgsf.mo +0 -0
  153. data/vendor/local/share/locale/sv/LC_MESSAGES/libgsf.mo +0 -0
  154. data/vendor/local/share/locale/ta/LC_MESSAGES/libgsf.mo +0 -0
  155. data/vendor/local/share/locale/tg/LC_MESSAGES/libgsf.mo +0 -0
  156. data/vendor/local/share/locale/th/LC_MESSAGES/libgsf.mo +0 -0
  157. data/vendor/local/share/locale/tr/LC_MESSAGES/libgsf.mo +0 -0
  158. data/vendor/local/share/locale/uk/LC_MESSAGES/libgsf.mo +0 -0
  159. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/libgsf.mo +0 -0
  160. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/libgsf.mo +0 -0
  161. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/libgsf.mo +0 -0
  162. data/vendor/local/share/man/man1/gsf-office-thumbnailer.1 +71 -0
  163. data/vendor/local/share/man/man1/gsf-vba-dump.1 +61 -0
  164. data/vendor/local/share/man/man1/gsf.1 +91 -0
  165. data/vendor/local/share/thumbnailers/gsf-office.thumbnailer +4 -0
  166. 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 */