home *** CD-ROM | disk | FTP | other *** search
- >>>>>>>>>>> Demonstration of byte alignment of window interior <<<<<<<<<<<
-
- #define FEATURES 0x0fef /* what border features are used */
- WORD msg[8]; /* message from evnt_multi */
- GRECT work_area; /* defines working area */
- WORD w_hndl; /* handle for window being changed */
-
- wind_calc(1, FEATURES, msg[4], msg[5], msg[6], msg[7],
- &work_area.g_x, &work_area.g_y, &work_area.g_w,
- &work_area.g_h);
- work_area.g_x = align_x(work_area.g_x);
- work_area.g_w = align_x(work_area.g_w);
- wind_calc(0, FEATURES, work_area.g_x, work_area.g_y,
- work_area.g_w, work_area.g_h, &msg[4], &msg[5],
- &msg[6], &msg[7]);
- wind_set(w_hndl, WF_CXYWH, msg[4], msg[5], msg[6], msg[7]);
-
- >>>>>>>>>>>>>>>>>>>>> Subroutine for above <<<<<<<<<<<<<<<<<<<<<<<<<<<<<
-
- WORD
- align_x(x) /* forces word alignment for column position */
- WORD x; /* rounding to nearest word */
- {
- return((x & 0xfff0) + ((x & 0x0008) ? 0x0010 : 0));
- }
-
- >>>>>>>>>>>>>>>>>>>>> Standard v_gtext binding <<<<<<<<<<<<<<<<<<<<<<<<<
-
- WORD
- v_gtext( handle, x, y, string)
- WORD handle, x, y;
- BYTE *string;
- {
- WORD i;
- ptsin[0] = x;
- ptsin[1] = y;
- i = 0;
- while (intin[i++] = *string++) /* Copy characters to intin */
- ; /* There is NO error checking! */
- contrl[0] = 8;
- contrl[1] = 1;
- contrl[3] = --i;
- contrl[6] = handle;
- vdi();
- }
-