/* *%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% * SCR_Page.h * Scripts, Beaudet Christophe *%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% * */ #ifndef __SCR_Page_h__Types #define __SCR_Page_h__Types #ifndef __Only_Types__ #define __SCR_Page_h__Undef #define __Only_Types__ #endif /* !__Only_Types__ */ /* *================================================================================================= * Includes. *================================================================================================= */ #ifdef __SCR_Mode_h__Undef #undef __Only_Types__ #undef __SCR_Mode_h__Undef #endif /* __SCR_Mode_h__Undef */ /* *================================================================================================= * Constants. *================================================================================================= */ /* * To export code. */ #undef CPA_EXPORT #if defined(CPA_WANTS_IMPORT) #define CPA_EXPORT __declspec(dllimport) #elif defined(CPA_WANTS_EXPORT) #define CPA_EXPORT __declspec(dllexport) #else /* CPA_WANTS_IMPORT */ #define CPA_EXPORT #endif /* CPA_WANTS_IMPORT */ /* *================================================================================================= * Types. *================================================================================================= */ /* * Structure that describes a memory page. */ typedef struct SCR_tdst_Page_Description_ { SCR_tdst_DyAr_Header stHeader; /* Header of element */ struct SCR_tdst_Page_Description_ *p_stNext; /* Next page */ struct SCR_tdst_Page_Description_ *p_stPrev; /* Previous page */ char *d_cBuffer; /* Buffer of page */ int iNumOfChars; /* Number of characters in page */ } SCR_tdst_Page_Description; #endif /* !__SCR_Mode_h__Types */ /* *================================================================================================= * Protos. *================================================================================================= */ #if !defined(__SCR_Page_h__Protos) && !defined(__Only_Types__) #define __SCR_Page_h__Protos extern SCR_tdst_Page_Description *fnp_st_Page_Allocate(void); extern void fn_v_Page_Free(SCR_tdst_Page_Description *); extern void fn_v_Page_DeleteAll(SCR_tdst_File_Description *); extern void fn_v_Page_LinkAfter(SCR_tdst_File_Description *, SCR_tdst_Page_Description *, SCR_tdst_Page_Description *); extern void fn_v_Page_Unlink(SCR_tdst_File_Description *, SCR_tdst_Page_Description *); extern void fn_v_Page_Split(SCR_tdst_File_Description *, SCR_tdst_Page_Description *); extern void fn_v_Page_InsertChar(SCR_tdst_File_Description *, char); extern void fn_v_Page_DeleteChar(SCR_tdst_File_Description *); extern void fn_v_Page_ToNextChar(SCR_tdst_File_Description *); extern void fn_v_Page_ToPrevChar(SCR_tdst_File_Description *); extern void fn_v_Page_LoadFile(SCR_tdst_File_Description *); extern void fn_v_Page_SaveFile(SCR_tdst_File_Description *); extern void fn_v_Page_Seek(SCR_tdst_File_Description *, long, int); #endif /* !__SCR_Page_h__Protos && !__Only_Types__ */