home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 3 / AACD03.BIN / AACD / Programming / Triton / Source / classes / displayobject.def < prev    next >
Text File  |  1998-05-23  |  2KB  |  39 lines

  1. #ifndef TRCL_DISPLAYOBJECT_DEFINED
  2. #define TRCL_DISPLAYOBJECT_DEFINED
  3.  
  4.   #include "object.def"
  5.  
  6.   struct TROD_DisplayObject
  7.   {
  8.     struct TROD_Object    O;                /* Superclass object data */
  9.     ULONG                 ID;               /* The object's ID */
  10.     ULONG                 MinWidth;         /* The precalculated minimum width */
  11.     ULONG                 MinHeight;        /* The precalculated minimum height */
  12.     ULONG                 Left;             /* The X coordinate of the object */
  13.     ULONG                 Top;              /* The Y coordinate of the object */
  14.     ULONG                 Width;            /* The width of the object */
  15.     ULONG                 Height;           /* The height of the object */
  16.     ULONG                 Flags;            /* See below for flags */
  17.     BOOL                  XResize;          /* Horizontally resizable? */
  18.     BOOL                  YResize;          /* Vertically resizable? */
  19.     STRPTR                QuickHelpString;  /* QuickHelp string */
  20.     WORD                  Shortcut;         /* The object's shortcut */
  21.     ULONG                 BackfillType;     /* The object's backfill type */
  22.     BOOL                  Installed;        /* Does the object have an on-screen representation? */
  23.  
  24.     ULONG                 PrivData;         /* Private data */
  25.   };
  26.  
  27.   extern TR_METHOD(DisplayObject,NEW,NewData);
  28.   extern TR_METHOD(DisplayObject,INSTALL,InstallData);
  29.   extern TR_SIMPLEMETHOD(DisplayObject,REMOVE);
  30.   extern TR_METHOD(DisplayObject,SETATTRIBUTE,SetAttributeData);
  31.   extern TR_SIMPLEMETHOD(DisplayObject,GETATTRIBUTE);
  32.   extern TR_METHOD(DisplayObject,HIT,HitData);
  33.  
  34.   // Flag macros
  35.   #define TR_DO_DISABLED  (DISPLAYOBJECT->Flags&TROB_DISPLAYOBJECT_DISABLED?TRUE:FALSE)
  36.   #define TR_DO_SPACE     (DISPLAYOBJECT->Flags&TROB_DISPLAYOBJECT_SPACE?TRUE:FALSE)
  37.  
  38. #endif
  39.