## Files

Files

## Functions

GList * | go_get_file_openers ()
GList * | go_get_file_savers ()

## Types and Values

enum | GOFileFormatLevel
enum | GOFileProbeLevel
enum | GOFileSaveScope

## Description

## Functions

### go_get_file_openers ()

    GList *
    go_get_file_openers (void);

#### Returns

list of known GOFileOpener types (do not modify list).

[element-type GOFileOpener][transfer none]

### go_get_file_savers ()

    GList *
    go_get_file_savers (void);

#### Returns

list of known GOFileSaver types (do not modify list).

[element-type GOFileSaver][transfer none]

## Types and Values

### enum GOFileFormatLevel

File format levels. They are ordered. When we save a file, we remember the name, but not if we already have a name at a higher level. When created, workbooks are assigned a name at level GO_FILE_FL_NEW.

#### Members

GO_FILE_FL_NONE | no name assigned, won't happen. |
GO_FILE_FL_WRITE_ONLY | PostScript etc, won't be remembered. |
GO_FILE_FL_NEW | Wb just created. |
GO_FILE_FL_MANUAL | Save gets punted to save as. |
GO_FILE_FL_MANUAL_REMEMBER | Ditto, but remember in history. |
GO_FILE_FL_AUTO | Save will save to this filename. |
GO_FILE_FL_LAST | last value, won't happen. |

### enum GOFileProbeLevel

File probe level tells file opener (its probe method to be exact), how hard it should try to recognize the type of the file. File openers may ignore this or support only some probe levels, but if specifies "reccomened" behaviour. Before opening any file we detect its type by calling probe for every registered file opener (in order of priority) and passing GO_FILE_PROBE_FILE_NAME as probe level. If none of them recogizes the file, we increase probe level and try again...

#### Members

GO_FILE_PROBE_FILE_NAME | Test only file name, don't read file contents |
GO_FILE_PROBE_CONTENT | Read the whole file if it's necessary |
GO_FILE_PROBE_LAST | Invalid |

### enum GOFileSaveScope

GOFileSaveScope specifies what information file saver can save in a file. Many savers can save the whole workbook (with all sheets), but others save only current sheet, usually because of file format limitations.

#### Members

GO_FILE_SAVE_WORKBOOK | save the whole file. |
GO_FILE_SAVE_SHEET | save only current page. |
GO_FILE_SAVE_RANGE | save only a selected range. |
GO_FILE_SAVE_LAST | last value, won't happen. |