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 */