#ifdef __cplusplus extern "C" { #endif /* __cplusplus */
@Jacek Piszczek, post #2
Dodać do jakich inkludów dokładniej?
Co próbujesz zrobić? Jakiś błąd dostajesz?
@ede, post #3
@ede, post #3
@Jacek Piszczek, post #5
/* compile with "ppc-morphos-g++-9 -noixemul -o helloworld_mui helloworld_mui.cpp" */ #include <proto/muimaster.h> #include <proto/intuition.h> #include <proto/alib.h> // bez tych dwóch inkludów nie kompiluje się jako C++ #include <proto/exec.h> // Object *App, *Win; Object* build_gui(void) { App = MUI_NewObject(MUIC_Application, MUIA_Application_Author, (ULONG)"Grzegorz Kraszewski", MUIA_Application_Base, (ULONG)"HELLOWORLD", MUIA_Application_Copyright, (ULONG)"Š 2010 Grzegorz Kraszewski", MUIA_Application_Description, (ULONG)"Hello World in MUI.", MUIA_Application_Title, (ULONG)"Hello World", MUIA_Application_Version, (ULONG)"$VER: HelloWorld 1.0 (16.11.2010)", MUIA_Application_Window, (ULONG)(Win = MUI_NewObject(MUIC_Window, MUIA_Window_Title, (ULONG)"Hello World", MUIA_Window_RootObject, MUI_NewObject(MUIC_Group, MUIA_Group_Child, MUI_NewObject(MUIC_Text, MUIA_Text_Contents, (ULONG)"Hello world!", TAG_END), TAG_END), TAG_END)), TAG_END); } void notifications(void) { DoMethod(Win, MUIM_Notify, MUIA_Window_CloseRequest, TRUE, App, 2, MUIM_Application_ReturnID, MUIV_Application_ReturnID_Quit); } void main_loop(void) { ULONG signals = 0; SetAttrs(Win, MUIA_Window_Open, TRUE, TAG_END); // set(Win, MUIA_Window_Open, TRUE); - tak jest w oryginale while (DoMethod(App, MUIM_Application_NewInput, &signals) != MUIV_Application_ReturnID_Quit) { signals = Wait(signals | SIGBREAKF_CTRL_C); if (signals & SIGBREAKF_CTRL_C) break; } SetAttrs(Win, MUIA_Window_Open, FALSE, TAG_END); // set(Win, MUIA_Window_Open, FALSE); - tak jest w oryginale } int main(void) { if (App = build_gui()) { notifications(); main_loop(); MUI_DisposeObject(App); } return 0; }
@ede, post #6
Object* build_gui(void) { return MUI_NewObject(MUIC_Application, MUIA_Application_Author, (ULONG)"Grzegorz Kraszewski", MUIA_Application_Base, (ULONG)"HELLOWORLD", MUIA_Application_Copyright, (ULONG)"Š 2010 Grzegorz Kraszewski", MUIA_Application_Description, (ULONG)"Hello World in MUI.", MUIA_Application_Title, (ULONG)"Hello World", MUIA_Application_Version, (ULONG)"$VER: HelloWorld 1.0 (16.11.2010)", MUIA_Application_Window, (ULONG)(Win = MUI_NewObject(MUIC_Window, MUIA_Window_Title, (ULONG)"Hello World", MUIA_Window_RootObject, MUI_NewObject(MUIC_Group, MUIA_Group_Child, MUI_NewObject(MUIC_Text, MUIA_Text_Contents, (ULONG)"Hello world!", TAG_END), TAG_END), TAG_END)), TAG_END); }
@Jacek Piszczek, post #7
while (DoMethod(App, MUIM_Application_NewInput, &signals) != MUIV_Application_ReturnID_Quit)
while (DoMethod(App, MUIM_Application_NewInput, &signals) != (ULONG)MUIV_Application_ReturnID_Quit)
if (App = build_gui())
App = build_gui(); if (App)
if (App = build_gui())
if (App != NULL)