2 Copyright © 2002-2006, The AROS Development Team. All rights reserved.
6 #include <graphics/gfx.h>
7 #include <graphics/view.h>
8 #include <clib/alib_protos.h>
9 #include <proto/exec.h>
10 #include <proto/graphics.h>
11 #include <proto/utility.h>
12 #include <proto/intuition.h>
13 #include <proto/muimaster.h>
16 #include "muimaster_intern.h"
19 extern struct Library
*MUIMasterBase
;
21 struct MUI_SettingsData
26 static IPTR
ListDisplayFunc(struct Hook
*hook
, char **array
, char *entry
)
35 /**************************************************************************
37 **************************************************************************/
38 IPTR
Settings__OM_NEW(struct IClass
* cl
, Object
* obj
, struct opSet
* msg
)
40 struct MUI_Settings
*data
;
41 struct TagItem
*tag
, *tags
;
43 static const struct Hook list_display_hook
=
45 {NULL
, NULL
}, HookEntry
, ListDisplayFunc
, NULL
48 obj
= (Object
*)DoSuperNewTags(cl
, obj
, NULL
,
51 Child
, ListviewObject
,
52 MUIA_Listview_List
, listobj
= ListObject
,
54 MUIA_List_AdjustWidth
, TRUE
,
55 MUIA_List_Format
, "DELTA=2,DELTA=5,",
56 MUIA_List_DisplayHook
, &list_display_hook
,
58 End
, /* ListviewObject */
60 Child
, MUI_NewObject(MUIC_Popimage
,
62 MUIA_Imageadjust_Type
, MUIV_Imageadjust_Type_All
,
63 TAG_DONE
), /* Popframe really */
64 Child
, MUI_NewObject(MUIC_Popimage
,
66 MUIA_Imageadjust_Type
, MUIV_Imageadjust_Type_All
,
70 Child
, MUI_NewObject(MUIC_Settingsgroup
,
73 TAG_MORE
, msg
->ops_AttrList
);
77 data
= INST_DATA(cl
, obj
);
79 /* parse initial taglist */
81 for (tags
= msg
->ops_AttrList
; (tag
= NextTagItem(&tags
));)
91 BOOPSI_DISPATCHER(IPTR
, Settings_Dispatcher
, cl
, obj
, msg
)
93 switch (msg
->MethodID
)
96 return Settings__OM_NEW(cl
, obj
, (struct opSet
*)msg
);
99 return DoSuperMethodA(cl
, obj
, msg
);
101 BOOPSI_DISPATCHER_END
106 const struct __MUIBuiltinClass _MUI_Settings_desc
=
110 sizeof(struct MUI_SettingsData
),
111 (void *) Settings_Dispatcher