#ifndef DATATYPES_TEXTCLASS_H #define DATATYPES_TEXTCLASS_H /* ** $VER: textclass.h 39.3 (3.8.1992) ** Includes Release 44.1 ** ** Interface definitions for DataType text objects. ** ** (C) Copyright 1992-1999 Amiga, Inc. ** All Rights Reserved */ #ifndef UTILITY_TAGITEM_H #include <utility/tagitem.h> #endif #ifndef DATATYPES_DATATYPESCLASS_H #include <datatypes/datatypesclass.h> #endif #ifndef LIBRARIES_IFFPARSE_H #include <libraries/iffparse.h> #endif /*****************************************************************************/ #define TEXTDTCLASS "text.datatype" /*****************************************************************************/ /* Text attributes */ #define TDTA_Buffer (DTA_Dummy + 300) #define TDTA_BufferLen (DTA_Dummy + 301) #define TDTA_LineList (DTA_Dummy + 302) #define TDTA_WordSelect (DTA_Dummy + 303) #define TDTA_WordDelim (DTA_Dummy + 304) #define TDTA_WordWrap (DTA_Dummy + 305) /* Boolean. Should the text be word wrapped. Defaults to false. */ /*****************************************************************************/ /* There is one Line structure for every line of text in our document. */ struct Line { struct MinNode ln_Link; /* to link the lines together */ STRPTR ln_Text; /* pointer to the text for this line */ ULONG ln_TextLen; /* the character length of the text for this line */ UWORD ln_XOffset; /* where in the line the text starts */ UWORD ln_YOffset; /* line the text is on */ UWORD ln_Width; /* Width of line in pixels */ UWORD ln_Height; /* Height of line in pixels */ UWORD ln_Flags; /* info on the line */ BYTE ln_FgPen; /* foreground pen */ BYTE ln_BgPen; /* background pen */ ULONG ln_Style; /* Font style */ APTR ln_Data; /* Link data... */ }; /*****************************************************************************/ /* Line.ln_Flags */ /* Line Feed */ #define LNF_LF (1L << 0) /* Segment is a link */ #define LNF_LINK (1L << 1) /* ln_Data is a pointer to an DataTypes object */ #define LNF_OBJECT (1L << 2) /* Object is selected */ #define LNF_SELECTED (1L << 3) /*****************************************************************************/ /* IFF types that may be text */ #define ID_FTXT MAKE_ID('F','T','X','T') #define ID_CHRS MAKE_ID('C','H','R','S') /*****************************************************************************/ #endif /* DATATYPES_TEXTCLASS_H */