/* * TEST.C * * TEST GADGET COMPILATION * * WARNING WARNING. Non DICE C users must open appropriate libraries */ #include "x.c" main() { struct Screen *scr; struct Window *win; struct Gadget *glist; if (scr = LockPubScreen(NULL)) { if (glist = InitGads(scr)) { win = OpenWindowTags(NULL, WA_Flags, WFLG_DRAGBAR|WFLG_DEPTHGADGET|WFLG_CLOSEGADGET| WFLG_SIZEGADGET|WFLG_SMART_REFRESH|WFLG_ACTIVATE, WA_IDCMP, IDCMP_NEWSIZE|IDCMP_MOUSEBUTTONS|IDCMP_GADGETDOWN| IDCMP_GADGETUP|IDCMP_MENUPICK|IDCMP_VANILLAKEY| IDCMP_RAWKEY|IDCMP_CHANGEWINDOW|IDCMP_CLOSEWINDOW| IDCMP_REFRESHWINDOW, WA_Left, WIN_LEFT, WA_Top, WIN_TOP, WA_Width, WIN_WIDTH, WA_Height, WIN_HEIGHT, WA_Title, "TEST", WA_MinWidth, 32, WA_MinHeight, 32, WA_MaxWidth, -1, WA_MaxHeight, -1, WA_AutoAdjust, 1, WA_PubScreen, NULL, WA_PubScreenFallBack, 1, WA_Gadgets, glist, TAG_END ); if (win) { struct IntuiMessage *im; short notDone = 1; GT_RefreshWindow(win, NULL); while (notDone) { WaitPort(win->UserPort); while (im = GT_GetIMsg(win->UserPort)) { switch(im->Class) { case IDCMP_CLOSEWINDOW: notDone = 0; break; case IDCMP_REFRESHWINDOW: GT_BeginRefresh(win); GT_EndRefresh(win, TRUE); break; case IDCMP_GADGETUP: puts("Gadget was Hit"); break; default: break; } GT_ReplyIMsg(im); } } CloseWindow(win); } } FreeGads(); } return(0); }