Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!rutgers!uwvax!umn-d-ub!nic.MR.NET!shamash!nis!ems!pwcs!stag!daemon From: to_stdnet@stag.UUCP Newsgroups: comp.sys.atari.st Subject: Re: GEM programming Message-ID: <612@stag.UUCP> Date: 6 Oct 88 16:37:33 GMT Sender: daemon@stag.UUCP Lines: 31 From: emh@omni.UUCP (Eric Hopper) I don't think that you need to access a dialog's data structure directly to get it to appear someplace else other than the center of the screen. Ah, yes. Here it is in the Laser C manual. To make a dialog box at a given position you would have to use this function, or something simlar: int make_dialog(dialog, your_x, your_y) OBJECT *dialog; { int x, y, w, h, itemhit; form_center(dialog, &x, &y, &w, &h); x = your_x; y = your_y; form_dial(FMD_START, 0, 0, 0, 0, x, y, w, h); objc_draw(dialog, 0, 10, x, y, w, h); itemhit = form_do(dialog, 0); form_dial(FMD_FINISH, 0, 0, 0, 0, x, y, w, h); return(itemhit); } Of course this doesn't deal with the problem of drawing it within a window, and handling the box yourself. That would involve all sorts of complicated calls to objc, and graf routines that I don't have time to research right now. Eric Hopper (Omnifarious) emh@stag!omni.UUCP