#include /* * This is a default procedure for initializing the window structure to some * defaults that wx_open() will deal with in a consistent and rarely * upsetting manner. */ void wx_new(ws) Window *ws; { /* * Set the handle variable to 0 - we don't actually have one yet. */ ws->hand = -1; /* * Set the active and open flags to false, because we're not. */ ws->actv = FALSE; ws->open = FALSE; /* * Set the type to 0 - the user can supply whatever else they want after * this routine, or they can circumvent this routine altogether - it's * really just for convenience during testing. */ ws->type = 0; /* * Reset the "cursor" position. This will be used by wx_puts() for * determining where the text string of text should go. */ ws->xpos = 0; ws->ypos = 0; ws->minx = 0; ws->miny = 0; ws->maxx = 0; ws->maxy = 0; ws->scrl = 1; /* * All these GRECTs get initialized to 0s so that wx_open() won't try * to do something stupid with the values that might be there, depending * on whether or not that chunk of memory was cleared before the run. * Again, let me emphasize that this routine is in no way a requirement - * it's just to make life easier for me. Although, in general, most of * this stuff should remain undefined until after the wx_open() is * performed. */ /* * Set GRECT curr params to 0 */ ws->curr.g_x = 0; ws->curr.g_y = 0; ws->curr.g_w = 0; ws->curr.g_h = 0; /* * Set GRECT work params to 0 */ ws->work.g_x = 0; ws->work.g_y = 0; ws->work.g_w = 0; ws->work.g_h = 0; /* * Set GRECT prev params to 0 */ ws->prev.g_x = 0; ws->prev.g_y = 0; ws->prev.g_w = 0; ws->prev.g_h = 0; /* * Set GRECT full params to 0 */ ws->full.g_x = 0; ws->full.g_y = 0; ws->full.g_w = 0; ws->full.g_h = 0; }