2 #include <proto/intuition.h>
3 #include <proto/muimaster.h>
4 #include <proto/utility.h>
6 #include <libraries/mui.h>
8 #include "muimiamipanel_intern.h"
9 #include "muimiamipanel_locale.h"
10 #include "muimiamipanel_misc.h"
12 /***********************************************************************/
14 #ifndef MUIA_Window_MenuGadget
15 #define MUIA_Window_MenuGadget 0x8042324E
18 #ifndef MUIA_Window_SnapshotGadget
19 #define MUIA_Window_SnapshotGadget 0x80423C55
22 #ifndef MUIA_Window_ConfigGadget
23 #define MUIA_Window_ConfigGadget 0x8042E262
26 #ifndef MUIA_Window_IconifyGadget
27 #define MUIA_Window_IconifyGadget 0x8042BC26
30 /***********************************************************************/
35 MUIA_Background, MUII_ButtonBack,\
36 MUIA_InputMode, MUIV_InputMode_RelVerify,\
37 MUIA_Font, MUIV_Font_Button,\
38 MUIA_ControlChar, 'm',\
39 MUIA_CycleChain, TRUE,\
40 MUIA_Text_Contents, "_MUI",\
41 MUIA_Text_PreParse, MUIX_C,\
42 MUIA_Text_HiCharIdx, '_',\
43 MUIA_Text_SetMax, TRUE
45 #define ThirdPart(stuff, author, url)\
50 MUIA_Group_HorizSpacing,0,\
51 Child, olabel(stuff, MiamiPanelBaseIntern),\
53 Child, ourlText(url, author, MiamiPanelBaseIntern),\
62 MUIA_Group_HorizSpacing,0,\
63 Child, mui = MUIButton, End,\
64 Child, olabel(MSG_About_OfCourse, MiamiPanelBaseIntern),\
68 /***********************************************************************/
70 static struct MiamiPanelBase_intern
*MiamiPanelBaseIntern
;
72 IPTR MUIPC_About__OM_NEW
74 Class
*CLASS
, Object
*self
, struct opSet
*message
78 struct TagItem
*attrs
= message
->ops_AttrList
;
80 if (self
= (Object
*)DoSuperNewTags
84 MUIA_HelpNode
, "WRID",
85 MUIA_Window_ID
, MAKE_ID('A','B','O','T'),
86 MUIA_Window_Title
, __(MSG_About_WinTitle
),
87 MUIA_Window_IconifyGadget
, FALSE
,
88 MUIA_Window_MenuGadget
, FALSE
,
89 MUIA_Window_SnapshotGadget
, FALSE
,
90 MUIA_Window_ConfigGadget
, FALSE
,
91 MUIA_Window_SizeGadget
, FALSE
,
93 WindowContents
, VGroup
,
94 MUIA_Background
, MUII_TextBack
,
97 MUIA_Text_Contents
, MUIX_C MUIX_B
"MUI.MiamiPanel",
101 MUIA_Text_Contents
, __(MSG_Copyright
),
102 MUIA_Text_PreParse
, MUIX_C MUIX_B
,
107 Child
, obartitle(MSG_About_Information
, MiamiPanelBaseIntern
),
112 /*Child, olabel(MSG_About_Version),
113 Child, LLabel((ULONG)lib_vers),*/
114 Child
, olabel(MSG_About_Author
, MiamiPanelBaseIntern
),
115 Child
, ourlText("mailto:"DEF_EMail
, DEF_Author
, MiamiPanelBaseIntern
),
116 Child
, olabel(MSG_About_Support
, MiamiPanelBaseIntern
),
117 Child
, ourlText(DEF_HomePage
, NULL
, MiamiPanelBaseIntern
),
124 Child
, obartitle(MSG_About_ThirdParts
, MiamiPanelBaseIntern
),
127 MUIA_Group_HorizSpacing
, 0,
128 MUIA_Group_Columns
, 4,
129 ThirdPart(MSG_About_Busy
, "Klaus Melchior"," mailto:kmel@eifel.oche.de"),
130 ThirdPart(MSG_About_Lamp
, "Maik Schreiber", "mailto:BLiZZeR@dame.de"),
139 if ((tn
= __(MSG_About_Translation
)) && *tn
)
141 Object
*sp1
, *tti
, *sp2
= NULL
, *tg
; // gcc
143 if ((sp1
= ohfixspace()) &&
144 (tti
= otextitem()) &&
145 (sp2
= ohfixspace()) &&
146 (tg
= HGroup
, Child
, Label((ULONG
)tn
), Child
, HSpace(0),End
))
148 DoMethod(g
, OM_ADDMEMBER
, (ULONG
)sp1
);
149 DoMethod(g
, OM_ADDMEMBER
, (ULONG
)tti
);
150 DoMethod(g
, OM_ADDMEMBER
, (ULONG
)sp2
);
151 DoMethod(g
, OM_ADDMEMBER
, (ULONG
)tg
);
158 if (sp2
) MUI_DisposeObject(sp2
);
159 MUI_DisposeObject(tti
);
161 MUI_DisposeObject(sp1
);
165 if (space
= ovfixspace()) DoMethod(g
, OM_ADDMEMBER
, (ULONG
)space
);
167 if (app
= (Object
*)GetTagData(MPA_Application
, NULL
, attrs
))
168 DoMethod(mui
, MUIM_Notify
, MUIA_Pressed
, FALSE
, (ULONG
)app
, 2, MUIM_Application_AboutMUI
, GetTagData(MUIA_Window_RefWindow
, NULL
, attrs
));
174 /***********************************************************************/
176 BOOPSI_DISPATCHER(IPTR
, MUIPC_About_Dispatcher
, CLASS
, self
, message
)
178 switch(message
->MethodID
)
180 case OM_NEW
: return MUIPC_About__OM_NEW(CLASS
, self
, (struct opSet
*)message
);
181 default: return DoSuperMethodA(CLASS
, self
, message
);
185 BOOPSI_DISPATCHER_END
187 /***********************************************************************/
190 MUIPC_About_ClassInit(struct MiamiPanelBase_intern
*MiamiPanelBase
)
192 MiamiPanelBaseIntern
= MiamiPanelBase
;
193 return (ULONG
)(MiamiPanelBaseIntern
->mpb_aboutClass
= MUI_CreateCustomClass(NULL
, MUIC_Window
, NULL
, 0, MUIPC_About_Dispatcher
));
196 /***********************************************************************/