Removed tree functionality from List class.
[cake.git] / workbench / libs / muimaster / classes / list.h
blobd5c1464b6b4d59e6523adacda0a700fd5aa5940d
1 #ifndef _MUI_CLASSES_LIST_H
2 #define _MUI_CLASSES_LIST_H
4 /*
5 Copyright © 2002-2003, The AROS Development Team. All rights reserved.
6 $Id$
7 */
9 /****************************************************************************/
10 /*** Name *******************************************************************/
11 #define MUIC_List "List.mui"
13 /*** Identifier base (for Zune extensions) **********************************/
14 #define MUIB_List (MUIB_ZUNE | 0x00001400)
16 /*** Methods ****************************************************************/
17 #define MUIM_List_Clear (MUIB_MUI|0x0042ad89) /* MUI: V4 */
18 #define MUIM_List_CreateImage (MUIB_MUI|0x00429804) /* MUI: V11 */
19 #define MUIM_List_DeleteImage (MUIB_MUI|0x00420f58) /* MUI: V11 */
20 #define MUIM_List_Exchange (MUIB_MUI|0x0042468c) /* MUI: V4 */
21 #define MUIM_List_GetEntry (MUIB_MUI|0x004280ec) /* MUI: V4 */
22 #define MUIM_List_Insert (MUIB_MUI|0x00426c87) /* MUI: V4 */
23 #define MUIM_List_InsertSingle (MUIB_MUI|0x004254d5) /* MUI: V7 */
24 #define MUIM_List_Jump (MUIB_MUI|0x0042baab) /* MUI: V4 */
25 #define MUIM_List_Move (MUIB_MUI|0x004253c2) /* MUI: V9 */
26 #define MUIM_List_NextSelected (MUIB_MUI|0x00425f17) /* MUI: V6 */
27 #define MUIM_List_Redraw (MUIB_MUI|0x00427993) /* MUI: V4 */
28 #define MUIM_List_Remove (MUIB_MUI|0x0042647e) /* MUI: V4 */
29 #define MUIM_List_Select (MUIB_MUI|0x004252d8) /* MUI: V4 */
30 #define MUIM_List_Sort (MUIB_MUI|0x00422275) /* MUI: V4 */
31 #define MUIM_List_TestPos (MUIB_MUI|0x00425f48) /* MUI: V11 */
32 struct MUIP_List_Clear {STACKED ULONG MethodID;};
33 struct MUIP_List_CreateImage {STACKED ULONG MethodID; STACKED Object *obj; STACKED ULONG flags;};
34 struct MUIP_List_DeleteImage {STACKED ULONG MethodID; STACKED APTR listimg;};
35 struct MUIP_List_Exchange {STACKED ULONG MethodID; STACKED LONG pos1; STACKED LONG pos2;};
36 struct MUIP_List_GetEntry {STACKED ULONG MethodID; STACKED LONG pos; STACKED APTR *entry;};
37 struct MUIP_List_Insert {STACKED ULONG MethodID; STACKED APTR *entries; STACKED LONG count; STACKED LONG pos;};
38 struct MUIP_List_InsertSingle {STACKED ULONG MethodID; STACKED APTR entry; STACKED LONG pos;};
39 struct MUIP_List_Jump {STACKED ULONG MethodID; STACKED LONG pos;};
40 struct MUIP_List_Move {STACKED ULONG MethodID; STACKED LONG from; STACKED LONG to;};
41 struct MUIP_List_NextSelected {STACKED ULONG MethodID; STACKED LONG *pos;};
42 struct MUIP_List_Redraw {STACKED ULONG MethodID; STACKED LONG pos;};
43 struct MUIP_List_Remove {STACKED ULONG MethodID; STACKED LONG pos;};
44 struct MUIP_List_Select {STACKED ULONG MethodID; STACKED LONG pos; STACKED LONG seltype; STACKED LONG *state;};
45 struct MUIP_List_Sort {STACKED ULONG MethodID;};
46 struct MUIP_List_TestPos {STACKED ULONG MethodID; STACKED LONG x; STACKED LONG y; STACKED struct MUI_List_TestPos_Result *res;};
48 #define MUIM_List_Construct (MUIB_List | 0x00000000) /* Zune: V1 same like NList, PRIV for now! */
49 #define MUIM_List_Destruct (MUIB_List | 0x00000001) /* Zune: V1 same like NList, PRIV for now! */
50 #define MUIM_List_Compare (MUIB_List | 0x00000002) /* Zune: v1 same like NList, PRIV for now! */
51 #define MUIM_List_Display (MUIB_List | 0x00000003) /* Zune: V1 same like NList, PRIV for now! */
52 #define MUIM_List_SelectChange (MUIB_List | 0x00000004) /* Zune: V1 same like NLIST, PRIV for now! */
53 struct MUIP_List_Construct {STACKED ULONG MethodID; STACKED APTR entry; STACKED APTR pool;};
54 struct MUIP_List_Destruct {STACKED ULONG MethodID; STACKED APTR entry; STACKED APTR pool;};
55 struct MUIP_List_Compare {STACKED ULONG MethodID; STACKED APTR entry1; STACKED APTR entry2; STACKED LONG sort_type1; STACKED LONG sort_type2;};
56 struct MUIP_List_Display {STACKED ULONG MethodID; STACKED APTR entry; STACKED LONG entry_pos; STACKED STRPTR *strings; STACKED STRPTR *preparses;};
57 struct MUIP_List_SelectChange {STACKED ULONG MethodID; STACKED LONG pos; STACKED LONG state; STACKED ULONG flags;};
59 /*** Attributes *************************************************************/
60 #define MUIA_List_Active (MUIB_MUI|0x0042391c) /* MUI: V4 isg LONG */
61 #define MUIA_List_AdjustHeight (MUIB_MUI|0x0042850d) /* MUI: V4 i.. BOOL */
62 #define MUIA_List_AdjustWidth (MUIB_MUI|0x0042354a) /* MUI: V4 i.. BOOL */
63 #define MUIA_List_AutoVisible (MUIB_MUI|0x0042a445) /* MUI: V11 isg BOOL */
64 #define MUIA_List_CompareHook (MUIB_MUI|0x00425c14) /* MUI: V4 is. struct Hook * */
65 #define MUIA_List_ConstructHook (MUIB_MUI|0x0042894f) /* MUI: V4 is. struct Hook * */
66 #define MUIA_List_DestructHook (MUIB_MUI|0x004297ce) /* MUI: V4 is. struct Hook * */
67 #define MUIA_List_DisplayHook (MUIB_MUI|0x0042b4d5) /* MUI: V4 is. struct Hook * */
68 #define MUIA_List_DragSortable (MUIB_MUI|0x00426099) /* MUI: V11 isg BOOL */
69 #define MUIA_List_DropMark (MUIB_MUI|0x0042aba6) /* MUI: V11 ..g LONG */
70 #define MUIA_List_Entries (MUIB_MUI|0x00421654) /* MUI: V4 ..g LONG */
71 #define MUIA_List_First (MUIB_MUI|0x004238d4) /* MUI: V4 ..g LONG */
72 #define MUIA_List_Format (MUIB_MUI|0x00423c0a) /* MUI: V4 isg STRPTR */
73 #define MUIA_List_InsertPosition (MUIB_MUI|0x0042d0cd) /* MUI: V9 ..g LONG */
74 #define MUIA_List_MinLineHeight (MUIB_MUI|0x0042d1c3) /* MUI: V4 i.. LONG */
75 #define MUIA_List_MultiTestHook (MUIB_MUI|0x0042c2c6) /* MUI: V4 is. struct Hook * */
76 #define MUIA_List_Pool (MUIB_MUI|0x00423431) /* MUI: V13 i.. APTR */
77 #define MUIA_List_PoolPuddleSize (MUIB_MUI|0x0042a4eb) /* MUI: V13 i.. ULONG */
78 #define MUIA_List_PoolThreshSize (MUIB_MUI|0x0042c48c) /* MUI: V13 i.. ULONG */
79 #define MUIA_List_Quiet (MUIB_MUI|0x0042d8c7) /* MUI: V4 .s. BOOL */
80 #define MUIA_List_ShowDropMarks (MUIB_MUI|0x0042c6f3) /* MUI: V11 isg BOOL */
81 #define MUIA_List_SourceArray (MUIB_MUI|0x0042c0a0) /* MUI: V4 i.. APTR */
82 #define MUIA_List_Title (MUIB_MUI|0x00423e66) /* MUI: V6 isg char * */
83 #define MUIA_List_Visible (MUIB_MUI|0x0042191f) /* MUI: V4 ..g LONG */
84 #define MUIA_List_Prop_Entries (MUIB_MUI|0x0042a8f5) /* .sg LONG PRIV */
85 #define MUIA_List_Prop_Visible (MUIB_MUI|0x004273e9) /* .sg LONG PRIV */
86 #define MUIA_List_Prop_First (MUIB_MUI|0x00429df3) /* .sg LONG PRIV */
88 #define MUIA_List_VertProp_Entries MUIA_List_Prop_Entries /* PRIV */
89 #define MUIA_List_VertProp_Visible MUIA_List_Prop_Visible /* PRIV */
90 #define MUIA_List_VertProp_First MUIA_List_Prop_First /* PRIV */
91 #define MUIA_List_HorizProp_Entries (MUIB_List | 0x00000000) /* ... LONG PRIV */
92 #define MUIA_List_HorizProp_Visible (MUIB_List | 0x00000001) /* ... LONG PRIV */
93 #define MUIA_List_HorizProp_First (MUIB_List | 0x00000002) /* ... LONG PRIV */
95 /* Structure of the List Position Text (MUIM_List_TestPos) */
96 struct MUI_List_TestPos_Result
98 LONG entry; /* entry number, maybe -1 if testpos is not over valid entry */
99 WORD column; /* the number of the column, maybe -1 (unvalid) */
100 UWORD flags; /* some flags, see below */
101 WORD xoffset; /* x offset (in pixels) of testpos relative to the start of the column */
102 WORD yoffset; /* y offset (in pixels) of testpos relative from center of line
103 ( <0 => testpos was above, >0 => testpos was below center) */
106 #define MUI_LPR_ABOVE (1<<0)
107 #define MUI_LPR_BELOW (1<<1)
108 #define MUI_LPR_LEFT (1<<2)
109 #define MUI_LPR_RIGHT (1<<3)
111 enum
113 MUIV_List_Active_Off = -1,
114 MUIV_List_Active_Top = -2,
115 MUIV_List_Active_Bottom = -3,
116 MUIV_List_Active_Up = -4,
117 MUIV_List_Active_Down = -5,
118 MUIV_List_Active_PageUp = -6,
119 MUIV_List_Active_PageDown = -7,
122 #define MUIV_List_ConstructHook_String -1
123 #define MUIV_List_CopyHook_String -1
124 #define MUIV_List_CursorType_None 0
125 #define MUIV_List_CursorType_Bar 1
126 #define MUIV_List_CursorType_Rect 2
127 #define MUIV_List_DestructHook_String -1
129 enum
131 MUIV_List_Insert_Top = 0,
132 MUIV_List_Insert_Active = -1,
133 MUIV_List_Insert_Sorted = -2,
134 MUIV_List_Insert_Bottom = -3
137 enum
139 MUIV_List_Remove_First = 0,
140 MUIV_List_Remove_Active = -1,
141 MUIV_List_Remove_Last = -2,
142 MUIV_List_Remove_Selected = -3,
145 enum
147 MUIV_List_Select_Active = -1,
148 MUIV_List_Select_All = -2,
150 MUIV_List_Select_Off = 0,
151 MUIV_List_Select_On = 1,
152 MUIV_List_Select_Toggle = 2,
153 MUIV_List_Select_Ask = 3,
156 enum
158 MUIV_List_GetEntry_Active = -1,
161 enum
163 MUIV_List_Redraw_Active = -1,
164 MUIV_List_Redraw_All = -2,
167 enum
169 MUIV_List_Move_Top = 0,
170 MUIV_List_Move_Active = -1,
171 MUIV_List_Move_Bottom = -2,
172 MUIV_List_Move_Next = -3, /* for 2nd parameter only */
173 MUIV_List_Move_Previous = -4, /* for 2nd parameter only */
176 enum
178 MUIV_List_Exchange_Top = 0,
179 MUIV_List_Exchange_Active = -1,
180 MUIV_List_Exchange_Bottom = -2,
181 MUIV_List_Exchange_Next = -3, /* for 2nd parameter only */
182 MUIV_List_Exchange_Previous = -4, /* for 2nd parameter only */
185 enum
187 MUIV_List_Jump_Top = 0,
188 MUIV_List_Jump_Active = -1,
189 MUIV_List_Jump_Bottom = -2,
190 MUIV_List_Jump_Down = -3,
191 MUIV_List_Jump_Up = -4,
194 #define MUIV_List_NextSelected_Start (-1)
195 #define MUIV_List_NextSelected_End (-1)
198 #define MUIV_NList_SelectChange_Flag_Multi (1 << 0)
201 extern const struct __MUIBuiltinClass _MUI_List_desc; /* PRIV */
205 /****************************************************************************/
206 /*** Name *******************************************************************/
207 #define MUIC_Floattext "Floattext.mui"
209 /*** Identifier base (for Zune extensions) **********************************/
210 #define MUIB_Floattext (MUIB_ZUNE | 0x00001500)
212 /*** Attributes *************************************************************/
213 #define MUIA_Floattext_Justify (MUIB_MUI|0x0042dc03) /* MUI: V4 isg BOOL */
214 #define MUIA_Floattext_SkipChars (MUIB_MUI|0x00425c7d) /* MUI: V4 is. STRPTR */
215 #define MUIA_Floattext_TabSize (MUIB_MUI|0x00427d17) /* MUI: V4 is. LONG */
216 #define MUIA_Floattext_Text (MUIB_MUI|0x0042d16a) /* MUI: V4 isg STRPTR */
221 /****************************************************************************/
222 /*** Name *******************************************************************/
223 #define MUIC_Scrmodelist "Scrmodelist.mui"
225 /*** Identifier base (for Zune extensions) **********************************/
226 #define MUIB_Scrmodelist (MUIB_ZUNE | 0x00001700)
232 #endif /* _MUI_CLASSES_LIST_H */