/* ** Little tool to show the UserData custom class. */ #include "demo.h" #include "UserData_mcc.h" int main(int argc,char *argv[]) { Object *app,*window,*sasg; init(); app = ApplicationObject, MUIA_Application_Title , "ShowUserData", MUIA_Application_Version , "$VER: ShowUserData 13.17 (27.12.95)", MUIA_Application_Copyright , "©1994 by Stefan Stuntz", MUIA_Application_Author , "Stefan Stuntz", MUIA_Application_Description, "Show the UserData custom class", MUIA_Application_Base , "SHOWUSERDATA", SubWindow, window = WindowObject, MUIA_Window_Title, "Show the UserData public custom class", MUIA_Window_ID , MAKE_ID('S','A','S','G'), WindowContents, VGroup, Child, sasg = MUI_NewObject(MUIC_UserData, MUIA_UserData_First , "Jo", MUIA_UserData_Name , "User", MUIA_UserData_Street , "Fakestreet 12", MUIA_UserData_City , "Faketown, FT 1234", MUIA_UserData_Country, "Wonderland", MUIA_UserData_Phone , "+1-234-567-8901", MUIA_UserData_EMail , "jouser@fake.wonder.land", TAG_DONE), End, End, End; if (!app) fail(app,"Failed to create Application."); /* ** Install notification events... */ DoMethod(window,MUIM_Notify,MUIA_Window_CloseRequest,TRUE, app,2,MUIM_Application_ReturnID,MUIV_Application_ReturnID_Quit); /* ** This is the ideal input loop for an object oriented MUI application. ** Everything is encapsulated in classes, no return ids need to be used, ** we just check if the program shall terminate. ** Note that MUIM_Application_NewInput expects sigs to contain the result ** from Wait() (or 0). This makes the input loop significantly faster. */ set(window,MUIA_Window_Open,TRUE); { ULONG sigs = 0; while (DoMethod(app,MUIM_Application_NewInput,&sigs) != MUIV_Application_ReturnID_Quit) { if (sigs) { sigs = Wait(sigs | SIGBREAKF_CTRL_C); if (sigs & SIGBREAKF_CTRL_C) break; } } } set(window,MUIA_Window_Open,FALSE); /* ** Shut down... */ fail(app,NULL); }