diff options
author | Darkvater <darkvater@openttd.org> | 2006-08-05 00:59:45 +0000 |
---|---|---|
committer | Darkvater <darkvater@openttd.org> | 2006-08-05 00:59:45 +0000 |
commit | a9251d2d02a17467343284442ee6857012e27c31 (patch) | |
tree | 6c1c325e24d7182ffd6868b3118786d9a3bcf41d /fios.h | |
parent | 198f6caf20bf425bd1d3c8b91291f58213f6b60b (diff) | |
download | openttd-a9251d2d02a17467343284442ee6857012e27c31.tar.xz |
(svn r5767) - Cleanup: Improve upon the header file mess regarding fios. Move all relevant types from hal.h into fios.h, eliminate the unneccessary passing of a global variable, and extern variables in header files (declare in fios.c and misc_gui.c
Diffstat (limited to 'fios.h')
-rw-r--r-- | fios.h | 44 |
1 files changed, 44 insertions, 0 deletions
@@ -3,6 +3,50 @@ #ifndef FIOS_H #define FIOS_H +/* Deals with finding savegames */ +typedef struct { + byte type; + uint64 mtime; + char title[64]; + char name[256 - 12 - 64]; +} FiosItem; + +enum { + FIOS_TYPE_DRIVE = 0, + FIOS_TYPE_PARENT = 1, + FIOS_TYPE_DIR = 2, + FIOS_TYPE_FILE = 3, + FIOS_TYPE_OLDFILE = 4, + FIOS_TYPE_SCENARIO = 5, + FIOS_TYPE_OLD_SCENARIO = 6, + FIOS_TYPE_DIRECT = 7, + FIOS_TYPE_INVALID = 255, +}; + +/* Variables to display file lists */ +extern FiosItem *_fios_list; // defined in misc_gui.c +extern int _fios_num; // defined in fios.c, read_only version of _fios_count +extern int _saveload_mode; // defined in misc_gui.c + +// Get a list of savegames +FiosItem *FiosGetSavegameList(int mode); +// Get a list of scenarios +FiosItem *FiosGetScenarioList(int mode); +// Free the list of savegames +void FiosFreeSavegameList(void); +// Browse to. Returns a filename w/path if we reached a file. +char *FiosBrowseTo(const FiosItem *item); +// Return path, free space and stringID +StringID FiosGetDescText(const char **path, uint32 *total_free); +// Delete a name +bool FiosDelete(const char *name); +// Make a filename from a name +void FiosMakeSavegameName(char *buf, const char *name, size_t size); +// Allocate a new FiosItem +FiosItem *FiosAlloc(void); + +int CDECL compare_FiosItems(const void *a, const void *b); + /* Implementation of opendir/readdir/closedir for Windows */ #if defined(WIN32) #include <windows.h> |