1 #ifndef GADGETS_LAYOUT_H
    2 #define GADGETS_LAYOUT_H
    3 
    4 /*
    5 	layout.gadget definitions (V45)
    6 
    7 	Copyright © 2002 The MorphOS Development Team, All Rights Reserved.
    8 */
    9 
   10 #ifndef REACTION_REACTION_H
   11 # include <reaction/reaction.h>
   12 #endif
   13 
   14 #ifndef INTUITION_GADGETCLASS_H
   15 # include <intuition/gadgetclass.h>
   16 #endif
   17 
   18 #ifndef IMAGES_BEVEL_H
   19 # include <images/bevel.h>
   20 #endif
   21 
   22 #pragma pack(2)
   23 
   24 
   25 struct WeightObject
   26 {
   27 	ULONG wb_SuccHeight;
   28 	ULONG wb_PredHeight;
   29 	ULONG wb_Reserved1;
   30 
   31 	ULONG wb_SuccWidth;
   32 	ULONG wb_PredWidth;
   33 	ULONG wb_Reserved2;
   34 };
   35 
   36 struct LayoutLimits
   37 {
   38 	UWORD MinWidth;
   39 	UWORD MinHeight;
   40 	UWORD MaxWidth;
   41 	UWORD MaxHeight;
   42 };
   43 
   44 
   45 /* Attributes defined by layout.gadget */
   46 
   47 #define LAYOUT_Dummy            (REACTION_Dummy + 0x7000)
   48 #define LAYOUT_Orientation      (LAYOUT_Dummy + 1)
   49 #define LAYOUT_FixedHoriz       (LAYOUT_Dummy + 2)
   50 #define LAYOUT_FixedVert        (LAYOUT_Dummy + 3)
   51 #define LAYOUT_HorizAlignment   (LAYOUT_Dummy + 4)
   52 #define LAYOUT_VertAlignment    (LAYOUT_Dummy + 5)
   53 #define LAYOUT_ShrinkWrap       (LAYOUT_Dummy + 6)
   54 #define LAYOUT_EvenSize         (LAYOUT_Dummy + 7)
   55 
   56 #define LAYOUT_InnerSpacing     (LAYOUT_Dummy + 9)
   57 #define LAYOUT_HorizSpacing     (LAYOUT_InnerSpacing)
   58 #define LAYOUT_VertSpacing      (LAYOUT_InnerSpacing)
   59 
   60 #define INTERSPACING  4
   61 #define INTERSPACE    INTERSPACING
   62 
   63 #define LAYOUT_TopSpacing       (LAYOUT_Dummy + 10)
   64 #define LAYOUT_BottomSpacing    (LAYOUT_Dummy + 11)
   65 #define LAYOUT_LeftSpacing      (LAYOUT_Dummy + 12)
   66 #define LAYOUT_RightSpacing     (LAYOUT_Dummy + 13)
   67 #define LAYOUT_BevelState       (LAYOUT_Dummy + 14)
   68 #define LAYOUT_BevelStyle       (LAYOUT_Dummy + 15)
   69 #define LAYOUT_Label            (LAYOUT_Dummy + 16)
   70 #define LAYOUT_LabelImage       (LAYOUT_Dummy + 17)
   71 #define LAYOUT_LabelPlace       (LAYOUT_Dummy + 18)
   72 
   73 #define LAYOUT_RemoveChild      (LAYOUT_Dummy + 19)
   74 #define LAYOUT_AddChild         (LAYOUT_Dummy + 20)
   75 #define LAYOUT_AddImage         (LAYOUT_Dummy + 21)
   76 #define LAYOUT_ModifyChild      (LAYOUT_Dummy + 22)
   77 
   78 #define LAYOUT_RelVerify        (LAYOUT_Dummy + 23)
   79 #define LAYOUT_RelCode          (LAYOUT_Dummy + 24)
   80 #define LAYOUT_Parent           (LAYOUT_Dummy + 25)
   81 #define LAYOUT_DeferLayout      (LAYOUT_Dummy + 26)
   82 #define LAYOUT_RequestLayout    (LAYOUT_Dummy + 27)
   83 #define LAYOUT_RequestRefresh   (LAYOUT_Dummy + 28)
   84 #define LAYOUT_TextPen          (LAYOUT_Dummy + 29)
   85 #define LAYOUT_FillPen          (LAYOUT_Dummy + 30)
   86 #define LAYOUT_FillPattern      (LAYOUT_Dummy + 31)
   87 #define LAYOUT_PageBackFill     (LAYOUT_Dummy + 32)
   88 #define LAYOUT_BackFill         (GA_BackFill)
   89 #define LAYOUT_TabVerify        (LAYOUT_Dummy + 33)
   90 #define LAYOUT_LabelColumn      (LAYOUT_Dummy + 34)
   91 #define LAYOUT_LabelWidth       (LAYOUT_Dummy + 35)
   92 #define LAYOUT_AlignLabels      (LAYOUT_Dummy + 36)
   93 #define LAYOUT_SpaceInner       (LAYOUT_Dummy + 37)
   94 #define LAYOUT_SpaceOuter       (LAYOUT_Dummy + 38)
   95 #define LAYOUT_RelAddress       (LAYOUT_Dummy + 39)
   96 #define LAYOUT_HelpHit          (LAYOUT_Dummy + 40)
   97 #define LAYOUT_HelpGadget       (LAYOUT_Dummy + 41)
   98 #define LAYOUT_DisposeLabels    (LAYOUT_Dummy)
   99 #define LAYOUT_Inverted         (LAYOUT_Dummy + 42)
  100 #define LAYOUT_WeightBar        (LAYOUT_Dummy + 43)
  101 
  102 
  103 /* Child tags */
  104 
  105 #define CHILD_Dummy             (LAYOUT_Dummy + 0x100)
  106 #define CHILD_MinWidth          (CHILD_Dummy + 1)
  107 #define CHILD_MinHeight         (CHILD_Dummy + 2)
  108 #define CHILD_MaxWidth          (CHILD_Dummy + 3)
  109 #define CHILD_MaxHeight         (CHILD_Dummy + 4)
  110 #define CHILD_WeightedWidth     (CHILD_Dummy + 5)
  111 #define CHILD_WeightedHeight    (CHILD_Dummy + 6)
  112 #define CHILD_ReplaceObject     (CHILD_Dummy + 7)
  113 #define CHILD_ReplaceImage      (LAYOUT_Dummy + 8)	/*** ?!?BUG?!? ***/
  114 #define CHILD_CacheDomain       (CHILD_Dummy + 9)
  115 #define CHILD_WeightMinimum     (CHILD_Dummy + 10)
  116 #define CHILD_NominalSize       (CHILD_Dummy + 11)
  117 #define CHILD_Label             (CHILD_Dummy + 12)
  118 #define CHILD_NoDispose         (CHILD_Dummy + 13)
  119 #define CHILD_ScaleHeight       (CHILD_Dummy + 14)
  120 #define CHILD_ScaleWidth        (CHILD_Dummy + 15)
  121 #define CHILD_DataType          (CHILD_Dummy + 16)
  122 
  123 
  124 /* Blank CHILD_Label value */
  125 
  126 #define LCLABEL_NOLABEL  ((Object *) 1L)
  127 
  128 
  129 /* LAYOUT_Orientation values */
  130 
  131 #define LAYOUT_HORIZONTAL  0
  132 #define LAYOUT_VERTICAL    1
  133 
  134 #define LAYOUT_ORIENT_HORIZ  LAYOUT_HORIZONTAL
  135 #define LAYOUT_ORIENT_VERT   LAYOUT_VERTICAL
  136 
  137 
  138 /* LAYOUT_HorizAlignment values */
  139 
  140 #define LALIGN_LEFT    0
  141 #define LALIGN_RIGHT   1
  142 /*#define LALIGN_CENTER  2*/
  143 
  144 #define LAYOUT_ALIGN_LEFT    LALIGN_LEFT
  145 #define LAYOUT_ALIGN_RIGHT   LALIGN_RIGHT
  146 /*#define LAYOUT_ALIGN_CENTER  LALIGN_CENTER*/
  147 
  148 
  149 /* LAYOUT_VertAlignment values */
  150 
  151 #define LALIGN_TOP     0
  152 #define LALIGN_BOTTOM  1
  153 #define LALIGN_CENTER  2
  154 
  155 #define LAYOUT_ALIGN_TOP     LALIGN_TOP
  156 #define LAYOUT_ALIGN_BOTTOM  LALIGN_BOTTOM
  157 #define LAYOUT_ALIGN_CENTER  LALIGN_CENTER
  158 
  159 /* Language fix */
  160 
  161 #define LALIGN_CENTRE        LALIGN_CENTER
  162 #define LAYOUT_ALIGN_CENTRE  LAYOUT_ALIGN_CENTER
  163 
  164 
  165 /* Page tags  */
  166 
  167 #define PAGE_Dummy        (LAYOUT_Dummy + 0x200)
  168 #define PAGE_Add          (PAGE_Dummy + 1)
  169 #define PAGE_Remove       (PAGE_Dummy + 2)
  170 #define PAGE_Current      (PAGE_Dummy + 3)
  171 #define PAGE_FixedVert    (PAGE_Dummy + 4)
  172 #define PAGE_FixedHoriz   (PAGE_Dummy + 5)
  173 #define PAGE_Transparent  (PAGE_Dummy + 6)
  174 
  175 
  176 #pragma pack()
  177 
  178 #endif  /* GADGETS_LAYOUT_H */