fios.h
changeset 4223 0f9535dda7ed
parent 4218 384c7451e3bb
child 4300 687a17c9c557
--- a/fios.h	Sat Aug 05 00:53:09 2006 +0000
+++ b/fios.h	Sat Aug 05 00:59:45 2006 +0000
@@ -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>