/* * VRQ_LOCATOR (C) Digital Design 1990 * * INPUT LOCATOR, REQUEST MODE * * Diese Funktion ermittelt die Position des Grafikcursors. Da sie im * request-Mode arbeitet, gibt sie die Position erst zurck, wenn eine * Taste gedrckt wird. * W„hrend des Aufrufes der Funktion wird der Cursor unabh„ngig vom * Zustand auf jeden Fall an der spezifizierten Stelle sichtbar. * Diese Funktion wird immer dann in Programmen eingesetzt, wenn der * Anwender eine Stelle auf dem Bildschirm markieren soll. * Da die Funktion mit jeder beliebigen Taste beendet wird, mu der * Programmierer selbst die Kontrolle ber eine bedingte Abbruchtaste * bernehmen. Das heit, er ruft die Funktion immer wieder auf, bis * "seine" Taste gedrckt wird. */ #include void vrq_locator( int handle, int x, int y, int *xout, int *yout, int *term ) { ptsin[0] = x; /* initialisierende Position des Grafikcursors * * (x-Koordinate) */ ptsin[1] = y; /* initialisierende Position des Grafikcursors * * (y-Koordinate) */ VDI( 28, 1, 0, handle ); *term = intout[0]; /* Funktions-Ende-Taste: * * Im Low-Byte dieses Parameters wird der ASCII- * * Code der Taste eingetragen, die die Positionie- * * rung abschliet (z.B. RETURN = 13). * * Spezielle Ende-Tasten sind z.B. die beiden * * Maus-Kn”pfe oder Tasten eines Grafiktabletts. * * Der Code dieser Tasten beginnt ab 20h (32). Die * * linke Taste der Maus hat den Code 20h (32), die * * rechte 21h (33). */ *xout = ptsout[0]; /* ermittelte x-Position */ *yout = ptsout[1]; /* ermittelte y-Position */ } /* siehe auch: İvsm_locatorİVSM_LOCA.Cİ, İvsin_modeİVSIN_MOD.Cİ */