| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- (* Release 3.10 *)
- (*-------------------------------------------------------------------------*
- * *
- * MOUSE.DEF - Modula-2 interface to MOUSE.H *
- * *
- * COPYRIGHT (C) 1989..1992 Clarion Software Corporation. *
- * All Rights Reserved *
- * *
- *--------------------------------------------------------------------------*)
- (*# project("#set tsc='on'") *)
- (*# call(o_a_size=>off, o_a_copy=>off, c_conv=>on, result_optional=>on) *)
- (*# module(implementation=>off, init_code=>off) *)
- (*# name(prefix=>c) *)
- DEFINITION MODULE mouse;
- CONST
- _MS_ON = 1;
- _MS_OFF = 0;
- _MS_HIDE = 0;
- _MS_SHOW = 1;
- _MS_MIDDLE = 2;
- _MS_LEFT = 0;
- _MS_RIGHT = 1;
- _MS_HARD = 1;
- _MD_SOFT = 0;
- TYPE
- _ms_data = RECORD
- left_pressed,
- middle_pressed,
- right_pressed,
- actions,
- row,
- col: CARDINAL;
- END;
- _ms_range = RECORD
- max_col,
- min_col,
- max_row,
- min_row: CARDINAL;
- END;
- _ms_motion = RECORD
- vert,
- horiz: INTEGER;
- END;
- _ms_graphcur = RECORD
- row,
- col: CARDINAL;
- screen_mask,
- cursor_mask: ARRAY[0..15] OF CARDINAL;
- END;
- _hardware = RECORD
- start_scan,
- end_scan: CARDINAL;
- END;
- _software = RECORD
- screen_mask,
- cursor_mask: CARDINAL;
- END;
- _ms_textcur = RECORD
- CASE type: CARDINAL OF
- 0: h: _hardware; |
- 1: s: _software;
- END;
- END;
- _ms_sense = RECORD
- h_speed,
- v_speed: INTEGER;
- threshold: CARDINAL;
- END;
- (*# save *)
- (*# call(near_call=>off) *)
- _ms_interrupt = RECORD
- func: PROCEDURE;
- END;
- (*# restore *)
- PROCEDURE _ms_reset(): INTEGER;
- PROCEDURE _ms_cursor(mode: CARDINAL);
- PROCEDURE _ms_driversize(): CARDINAL;
- PROCEDURE _ms_getmotion(VAR _mp: _ms_motion);
- PROCEDURE _ms_getpage(): CARDINAL;
- PROCEDURE _ms_getpress(button: CARDINAL; VAR _mp: _ms_data);
- PROCEDURE _ms_getrelease(button: CARDINAL; VAR _mp: _ms_data);
- PROCEDURE _ms_getsensitivity(VAR _mp: _ms_sense);
- PROCEDURE _ms_getstatus(VAR _mp: _ms_data);
- PROCEDURE _ms_lightpen(_mode: CARDINAL);
- PROCEDURE _ms_restoredriver(_buffer: ADDRESS);
- PROCEDURE _ms_savedriver(_buffer: ADDRESS);
- PROCEDURE _ms_setdouble(_threshhold: CARDINAL);
- PROCEDURE _ms_setgraphcursor(VAR _mp: _ms_graphcur);
- PROCEDURE _ms_setinterrupt(VAR _mp: _ms_interrupt);
- PROCEDURE _ms_setmickeys(_vert,_horiz: CARDINAL);
- PROCEDURE _ms_setpage(_page: CARDINAL);
- PROCEDURE _ms_setposition(_row,_col: CARDINAL);
- PROCEDURE _ms_setrange(VAR _mp: _ms_range);
- PROCEDURE _ms_setsensitivity(VAR _mp: _ms_sense);
- PROCEDURE _ms_settextcursor(VAR _mp: _ms_textcur);
- PROCEDURE _ms_swapinterrupt(VAR _mp: _ms_interrupt);
- PROCEDURE _ms_updatescreen(_x1,_y1,_x2,_y2: CARDINAL);
- END mouse.
|