home *** CD-ROM | disk | FTP | other *** search
-
- #ifndef __dl_save_h
- #define __dl_save_h
- #ifdef __cplusplus
- extern "C" {
- #endif
- #ifndef __stdlib_h
- #include <stdlib.h>
- #endif
- #ifndef __dl_event_h
- #include "Event.h"
- #endif
- typedef BOOL (*save_filesaver)(char *f, void *ref);
- typedef int (*save_ramsaver)(
- task_handle sourcetask,
- void *ref,
- task_handle desttask,
- void *destbuffer,
- unsigned int buffersize,
- int progress
- );
- typedef enum
- {
- save_SAVEOK = 0,
- save_RECEIVERFAILED,
- save_FILESAVERFAILED,
- save_RAMSAVERFAILED
- } save_result;
- typedef void (*save_resulthandler)(save_result result, void *ref);
- typedef struct
- {
- window_handle window;
- union
- {
- unsigned int value;
- struct
- {
- unsigned int is_menu : 1;
- unsigned int is_save_window : 1;
- unsigned int we_are_dragging : 1;
- unsigned int quit_after_save : 1;
- unsigned int release_after : 1;
- unsigned int padding : 27;
- } data;
- } flags;
- icon_handle dragsprite;
- icon_handle okbutton;
- icon_handle cancelbutton;
- icon_handle filenameicon;
- save_filesaver filesaver;
- save_ramsaver ramsaver;
- save_resulthandler resulthandler;
- size_t estimatedsize;
- int filetype;
- void *ref;
- int ram_progress;
- unsigned int last_message_ref;
- } save_saveblock;
- save_saveblock *Save_InitSaveWindowHandler(
- window_handle window,
- BOOL is_menu,
- BOOL is_save_window,
- BOOL release_after,
- icon_handle dragsprite,
- icon_handle okbutton,
- icon_handle cancelbutton,
- icon_handle filenameicon,
- save_filesaver filesaver,
- save_ramsaver ramsaver,
- save_resulthandler resulthandler,
- size_t estimatedsize,
- int filetype,
- void *ref
- );
- void Save_ReleaseSaveHandlers(save_saveblock *saveblock);
- void Save_SetFiletype(save_saveblock *saveblock, int filetype);
- #ifdef __cplusplus
- }
- #endif
- #endif
-