2 Copyright © 1995-2003, The AROS Development Team. All rights reserved.
6 #define MUIMASTER_YES_INLINE_STDARG
9 #include <aros/debug.h>
11 #include <exec/types.h>
12 #include <intuition/classes.h>
13 #include <intuition/classusr.h>
14 #include <libraries/mui.h>
18 #include "desktop_intern.h"
20 #include <proto/dos.h>
21 #include <proto/intuition.h>
22 #include <proto/utility.h>
24 #include "desktopclass.h"
26 #include "desktop_intern_protos.h"
28 IPTR
desktopNew(Class
* cl
, Object
* obj
, struct opSet
* msg
)
31 struct DesktopClassData
*data
;
32 //struct TagItem *tag;
34 retval
= DoSuperMethodA(cl
, obj
, (Msg
) msg
);
37 obj
= (Object
*) retval
;
38 data
= INST_DATA(cl
, obj
);
44 IPTR
desktopSet(Class
* cl
, Object
* obj
, struct opSet
* msg
)
46 struct DesktopClassData
*data
;
49 *tstate
= msg
->ops_AttrList
;
51 data
= (struct DesktopClassData
*) INST_DATA(cl
, obj
);
53 while ((tag
= NextTagItem(&tstate
)))
58 data
->activeWindow
= (Object
*) tag
->ti_Data
;
65 retval
= DoSuperMethodA(cl
, obj
, (Msg
) msg
);
70 IPTR
desktopGet(Class
* cl
, Object
* obj
, struct opGet
* msg
)
73 struct DesktopClassData
*data
;
75 data
= (struct DesktopClassData
*) INST_DATA(cl
, obj
);
77 switch (msg
->opg_AttrID
)
80 *msg
->opg_Storage
= (IPTR
) data
->activeWindow
;
83 retval
= DoSuperMethodA(cl
, obj
, (Msg
) msg
);
90 IPTR
desktopDispose(Class
* cl
, Object
* obj
, Msg msg
)
94 retval
= DoSuperMethodA(cl
, obj
, msg
);
99 BOOPSI_DISPATCHER(IPTR
, desktopDispatcher
, cl
, obj
, msg
)
103 switch (msg
->MethodID
)
106 retval
= desktopNew(cl
, obj
, (struct opSet
*) msg
);
109 retval
= desktopSet(cl
, obj
, (struct opSet
*) msg
);
112 retval
= desktopGet(cl
, obj
, (struct opGet
*) msg
);
115 retval
= desktopDispose(cl
, obj
, msg
);
118 retval
= DoSuperMethodA(cl
, obj
, msg
);
124 BOOPSI_DISPATCHER_END