static int init_object(BOX * data, WINDOW *parent, int x, int y, int width, int height, BOX_DRAW box_draw, int code) { data->parent = parent; data->x = x; data->y = y; data->width = width; data->height = height; data->box_draw = box_draw; data->window = derwin(data->parent, data->height, data->width, data->y, data->x); if (data->window == 0) return -1; (void) keypad(data->window, TRUE); dlg_mouse_setbase(getbegx(parent), getbegy(parent)); if (code == 'D') { dlg_mouse_mkbigregion(y + 1, x + MON_WIDE, height - 1, width - MON_WIDE, KEY_MAX, 1, MON_WIDE, 3); } else { dlg_mouse_mkregion(y, x, height, width, code); } return 0; }
void dlg_mouse_mkbigregion(int y, int x, int height, int width, int code, int step_y, int step_x, int mode) { mseRegion *butPtr = dlg_mouse_mkregion(y, x, height, width, -DLGK_MOUSE(code)); butPtr->mode = mode; butPtr->step_x = MAX(1, step_x); butPtr->step_y = MAX(1, step_y); }