COMMENT @%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

	Copyright (c) Geoworks 1994 -- All Rights Reserved
	GEOWORKS CONFIDENTIAL

PROJECT:	Handwriting Recognition Library
MODULE:		Graffiti
FILE:		grafhwr.def

AUTHOR:		Andy Chiu, Oct 23, 1994

MACROS:
	Name			Description
	----			-----------

REVISION HISTORY:
	Name	Date		Description
	----	----		-----------
	ACJ	10/23/94   	Initial revision


DESCRIPTION:
	
		
	$Id: grafhwr.def,v 1.1 97/04/04 14:26:11 newdeal Exp $

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@
if 0
CharChoiceInformation	struct
	CCI_numChoices	word
	; The # choices for this character (can be 0)
	
	CCI_firstPoint	word
	; Offset to the first point in the ink data corresponding to this char

	CCI_lastPoint	word
	; Offset to the last point in the ink data in this char

	CCI_data	word	 4  dup(0)
	; Ptr to characters

CharChoiceInformation	ends
endif
HWRR_GET_BUFFER_PTRS		enum HWRRoutine, (HWRR_LAST_RESERVED_ENTRY + 1)
;
;	Fetches pointers to PalmPrint's internal buffers
;	Pass:		(push in this order)
;			fptr to points buffer
;			fptr to strokes buffer
;			fptr to multiple char recognition buffer
;			fptr to single char recognition buffer
;	Returns:	nothing
;


HWRR_DO_GRAFFITI_MULTIPLE_CHAR_RECOGNITION	enum HWRRoutine
;
;	This returns a null-terminated string that was recognized from the
;	input.
;
;	Note: This function is not supported in the PalmPrint library.
;
;	Pass: nothing
;	Return: AX <- handle of block containing null-terminated ink data
;


HWRR_SET_LOCKED_SHIFT_CHANGE_CALLBACK		enum HWRRoutine
;
;	This allows the application to specify a routine that is called 
;	when the cap-lock or num-lock state is changed as the result of the 
;	user inputing a glyph.
;
;	NOTE: The address of the routine is a virtual fptr NOT a fptr.
;
;	Pass: (on stack)
;		virtual fptr to callback routine
;
;	Returns: nothing
;
;	Callback routine is passed (on stack - pascal model):
;
;		word	state that changed (HWRLockState)
;
;	Callback routine returns:
;
;		nothing
;
;	Callback routine can destroy:
;
;		AX, BX, CX, DX
;

HWRLockState		record
	:5
	HWRLS_EQN_LOCK:1
	HWRLS_NUM_LOCK:1
	HWRLS_CAP_LOCK:1
HWRLockState		end


HWRR_SET_TERMORARY_SHIFT_CHANGE_CALLBACK		enum HWRRoutine
;
;	This allows the application to specify a routine that is called 
;	when punctuation shift, extended shift or case shift occures as 
;	the result of the user inputing a glyph.
;
;	NOTE: The address of the routine is a virtual fptr NOT a fptr.
;
;	Pass: (on stack)
;		virtual fptr to callback routine
;
;	Returns: nothing
;
;	Callback routine is passed (on stack - pascal model):
;
;		word	state that changed (HWRTemporaryShiftState)
;
;	Callback routine returns:
;
;		nothing
;
;	Callback routine can destroy:
;
;		AX, BX, CX, DX
;

HWRTemporaryShiftState		etype	byte
	HWRTSS_NONE		enum HWRTemporaryShiftState
	HWRTSS_PUNCTUATION	enum HWRTemporaryShiftState
	HWRTSS_EXTENDED		enum HWRTemporaryShiftState
	HWRTSS_CASE		enum HWRTemporaryShiftState
	HWRTSS_DOWNCASE		enum HWRTemporaryShiftState


HWRR_SET_LOCKED_STATE				enum HWRRoutine
;
;	This allows the application to set the cap-lock and num-lock state
;	of the library.
;
;	Pass: (on stack)
;		HWRLockState
;
;	Returns: nothing


HWRR_GET_LOCKED_STATE				enum HWRRoutine
;
;	This allows the application to get the cap-lock and num-lock state
;	of the library.
;
;	Pass:    nothing
;
;	Returns: AX - HWRLockState


HWRR_GET_TEMPORARY_SHIFT_STATE			enum HWRRoutine
;
;	This allows the application to get the state of the punctuation
;	shift, extended shift or case shift of the library.
;
;	Pass:    nothing
;
;	Returns: AX - HWRTemporaryShiftState

HWRR_SET_SHIFT_STATE				enum HWRRoutine
;
;	This allows setting the shift state.
;
;	Pass:	(on stack)
;		0 to clear shift state
;		non-zero to set shift state
;	Returns:	nothing



