| GOffice Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | ||||
GOFileOpener; GOFileOpenerClass; void (*GOFileOpenerOpenFunc) (GOFileOpener const *fo,GOIOContext *io_context,GoView *view,GsfInput *input); void (*GOFileOpenerOpenFuncWithEnc) (GOFileOpener const *fo,gchar const *enc,GOIOContext *io_context,GoView *view,GsfInput *input); gboolean (*GOFileOpenerProbeFunc) (GOFileOpener const *fo,GsfInput *input,GOFileProbeLevel pl); gboolean go_file_opener_can_probe (GOFileOpener const *fo,GOFileProbeLevel pl); GOFileOpener * go_file_opener_for_id (char const *id); char const * go_file_opener_get_description (GOFileOpener const *fo); char const * go_file_opener_get_id (GOFileOpener const *fo); GSList const * go_file_opener_get_mimes (GOFileOpener const *fo); GSList const * go_file_opener_get_suffixes (GOFileOpener const *fo); gboolean go_file_opener_is_encoding_dependent (GOFileOpener const *fo); GOFileOpener * go_file_opener_new (char const *id,char const *description,GSList *suffixes,GSList *mimes,GOFileOpenerProbeFunc probe_func,GOFileOpenerOpenFunc open_func); GOFileOpener * go_file_opener_new_with_enc (char const *id,char const *description,GSList *suffixes,GSList *mimes,GOFileOpenerProbeFunc probe_func,GOFileOpenerOpenFuncWithEnc open_func); void go_file_opener_open (GOFileOpener const *fo,gchar const *opt_enc,GOIOContext *io_context,GoView *view,GsfInput *input); gboolean go_file_opener_probe (GOFileOpener const *fo,GsfInput *input,GOFileProbeLevel pl); void go_file_opener_register (GOFileOpener *fo,gint priority); void go_file_opener_unregister (GOFileOpener *fo);
typedef struct {
GObjectClass parent_class;
/* private */
gboolean (*can_probe) (GOFileOpener const *fo,
GOFileProbeLevel pl);
gboolean (*probe) (GOFileOpener const *fo,
GsfInput *input,
GOFileProbeLevel pl);
void (*open) (GOFileOpener const *fo,
gchar const *opt_enc,
GOIOContext *io_context,
GoView *view,
GsfInput *input);
} GOFileOpenerClass;
File opener base class.
GObjectClass |
parent class. |
returns TRUE if the files can be probed.
|
|
| probes the file. | |
| opens and reads the file. |
void (*GOFileOpenerOpenFunc) (GOFileOpener const *fo,GOIOContext *io_context,GoView *view,GsfInput *input);
|
|
|
|
|
|
|
void (*GOFileOpenerOpenFuncWithEnc) (GOFileOpener const *fo,gchar const *enc,GOIOContext *io_context,GoView *view,GsfInput *input);
|
|
|
|
|
|
|
|
|
gboolean (*GOFileOpenerProbeFunc) (GOFileOpener const *fo,GsfInput *input,GOFileProbeLevel pl);
|
|
|
|
|
|
Returns : |
gboolean go_file_opener_can_probe (GOFileOpener const *fo,GOFileProbeLevel pl);
|
|
|
|
Returns : |
GOFileOpener * go_file_opener_for_id (char const *id);
Searches for file opener with given id, registered using
go_file_opener_register
|
File opener's ID |
Returns : |
GOFileOpener object or NULL if opener cannot be found. [transfer none]
|
char const * go_file_opener_get_description (GOFileOpener const *fo);
|
|
Returns : |
char const * go_file_opener_get_id (GOFileOpener const *fo);
|
|
Returns : |
GSList const * go_file_opener_get_mimes (GOFileOpener const *fo);
|
GOFileOpener |
Returns : |
the supported mime types. [element-type char][transfer none char] |
GSList const * go_file_opener_get_suffixes (GOFileOpener const *fo);
|
GOFileOpener |
Returns : |
the suffixes for the supporte file types. [element-type char][transfer none char] |
gboolean go_file_opener_is_encoding_dependent
(GOFileOpener const *fo);
|
|
Returns : |
GOFileOpener * go_file_opener_new (char const *id,char const *description,GSList *suffixes,GSList *mimes,GOFileOpenerProbeFunc probe_func,GOFileOpenerOpenFunc open_func);
Creates new GOFileOpener object. Optional id will be used
after registering it with go_file_opener_register function.
|
Optional ID of the opener (or NULL) |
|
Description of supported file format |
|
List of suffixes to associate with the opener. [element-type char] |
|
List of mime types to associate with the opener. [element-type char] |
|
Optional pointer to "probe" function (or NULL). [scope async] |
|
Pointer to "open" function. [scope async] |
Returns : |
newly created GOFileOpener object. [transfer full] |
GOFileOpener * go_file_opener_new_with_enc (char const *id,char const *description,GSList *suffixes,GSList *mimes,GOFileOpenerProbeFunc probe_func,GOFileOpenerOpenFuncWithEnc open_func);
Creates new GOFileOpener object. Optional id will be used
after registering it with go_file_opener_register function.
|
Optional ID of the opener (or NULL) |
|
Description of supported file format |
|
List of suffixes to associate with the opener. [element-type char] |
|
List of mime types to associate with the opener. [element-type char] |
|
Optional pointer to "probe" function (or NULL). [scope async] |
|
Pointer to "open" function. [scope async] |
Returns : |
newly created GOFileOpener object. [transfer full] |
void go_file_opener_open (GOFileOpener const *fo,gchar const *opt_enc,GOIOContext *io_context,GoView *view,GsfInput *input);
Reads content of file_name file into workbook wbv is attached to.
Results are reported using io_context object, use
go_io_error_occurred to find out if operation was successful.
The state of wbv and its workbook is undefined if operation fails, you
should destroy them in that case.
|
GOFileOpener object |
|
Optional encoding |
|
Context for i/o operation |
|
GoView |
|
Gsf input stream |
gboolean go_file_opener_probe (GOFileOpener const *fo,GsfInput *input,GOFileProbeLevel pl);
Checks if a given file is supported by the opener.
|
GOFileOpener |
|
GsfInput |
|
GOFileProbeLevel |
Returns : |
TRUE, if the opener can read given file and FALSE otherwise.
|
void go_file_opener_register (GOFileOpener *fo,gint priority);
Adds fo opener to the list of available file openers, making it
available for Gnumeric i/o routines. The opener is registered with given
priority. The priority is used to determine the order in which openers
will be tried when reading a file. The higher the priority, the sooner it
will be tried. Default XML-based Gnumeric file opener is registered at
priority 50. Recommended range for priority is [0, 100].
Reference count for the opener is incremented inside the function, but
you don't have to (and shouldn't) call g_object_unref on it if it's
floating object (for example, when you pass object newly created with
go_file_opener_new and not referenced anywhere).
|
GOFileOpener object |
|
Opener's priority |
void go_file_opener_unregister (GOFileOpener *fo);
Removes fo opener from list of available file openers. Reference count
for the opener is decremented inside the function.
|
GOFileOpener object previously registered using go_file_opener_register |