home *** CD-ROM | disk | FTP | other *** search
-
- #include "includes/Project.h"
- #include "includes/config.h"
-
-
- /*********************************************************************/
-
- BOOL WriteConfig( PrefsData *pd, BOOL test )
- {
- APTR iffhandle;
-
- if( (iffhandle = IFFOpen(test ? TEST_CONFIG : CONFIG_FILE, IFF_WRITE, CHUNK_ID_PROGRAM)) )
- {
- IFFWriteChunk( iffhandle, &version, CHUNK_ID_VERSION , sizeof(UBYTE) );
- IFFWriteChunk( iffhandle, &pd->rpd[0] , CHUNK_ID_DESKTOP , sizeof(ULONG) + strlen(pd->rpd[0].path) );
- IFFWriteChunk( iffhandle, &pd->rpd[1] , CHUNK_ID_LISTER , sizeof(ULONG) + strlen((&pd->rpd[1])->path) );
- IFFWriteChunk( iffhandle, &pd->rpd[2] , CHUNK_ID_REQUESTER, sizeof(ULONG) + strlen((&pd->rpd[2])->path) );
- IFFWriteChunk( iffhandle, &pd->rpd[3] , CHUNK_ID_MAIN , sizeof(ULONG) + strlen((&pd->rpd[3])->path) );
- IFFWriteChunk( iffhandle, &pd->db , CHUNK_ID_DELAY , sizeof(DelayBlock) );
- IFFClose( iffhandle );
- return FALSE;
- }
- return TRUE;
- }
-
-
- BOOL ReadConfig( PrefsData *pd, BOOL test )
- {
- APTR iffhandle;
- UBYTE version_in;
- BOOL ret = FALSE;
-
- if( (iffhandle = IFFOpen(test ? TEST_CONFIG : CONFIG_FILE, IFF_READ, CHUNK_ID_PROGRAM)) )
- {
- if( (IFFNextChunk(iffhandle, 0)) == CHUNK_ID_VERSION )
- {
- IFFReadChunkBytes(iffhandle, &version_in, sizeof(UBYTE));
-
- if( version_in <= version )
- {
- if( IFFNextChunk(iffhandle, CHUNK_ID_DESKTOP) )
- {
- IFFReadChunkBytes(iffhandle, pd->rpd, sizeof(RndPrefsData));
-
- if( IFFNextChunk(iffhandle, CHUNK_ID_LISTER) )
- {
- IFFReadChunkBytes(iffhandle, &pd->rpd[1], sizeof(RndPrefsData));
-
- if( IFFNextChunk(iffhandle, CHUNK_ID_REQUESTER) )
- {
- IFFReadChunkBytes(iffhandle, &pd->rpd[2], sizeof(RndPrefsData));
-
- if( IFFNextChunk(iffhandle, CHUNK_ID_MAIN) )
- {
- IFFReadChunkBytes(iffhandle, &pd->rpd[3], sizeof(RndPrefsData));
-
- if( IFFNextChunk(iffhandle, CHUNK_ID_DELAY) )
- {
- IFFReadChunkBytes(iffhandle, &pd->db, sizeof(DelayBlock));
- ret = TRUE;
- }
- }
- }
- }
- }
- }
- IFFClose( iffhandle );
- }
- }
- return ret;
- }
-
-
-