[829] | 1 | (*
|
---|
| 2 | Screen Reader software wishing to function properly with CPRS and some other VHA
|
---|
| 3 | Win32 applications must provide a DLL in the "\Program Files\VistA\Common Files\"
|
---|
| 4 | directory that has an extension of .SR, (not .DLL)
|
---|
| 5 |
|
---|
| 6 | This DLL must export the routines shown below (they should use this include file)
|
---|
| 7 | *)
|
---|
| 8 |
|
---|
| 9 | // When a component receives focus, the screen reader needs to request data about the
|
---|
| 10 | // component. The Call Back proc is called, and the VA app then supplies the info by
|
---|
| 11 | // calling the returning the ComponentDataAsRequested procedure.
|
---|
| 12 |
|
---|
| 13 | // Checks to see if the screen reader is currently running
|
---|
| 14 | function IsRunning(HighVersion, LowVersion: Word): BOOL; stdcall;
|
---|
| 15 |
|
---|
| 16 | // Executed after IsRunning returns TRUE, when the DLL is accepted as the screen reader of choice
|
---|
| 17 | // if result returns a string, Initialization failed with retuned error message
|
---|
| 18 | // TComponentDataRequestProc is defined in the VA508AccessibilityConst unit
|
---|
| 19 | function Initialize(ComponentCallBackProc: TComponentDataRequestProc): BOOL; stdcall;
|
---|
| 20 |
|
---|
| 21 | // Executed when the DLL is unloaded or screen reader is no longer needed
|
---|
| 22 | procedure ShutDown; stdcall;
|
---|
| 23 |
|
---|
| 24 | // Instructs the Screen Reader to modify the way it handles specific information,
|
---|
| 25 | // such as how it pronounces specific words, or how it handles specific classes of components
|
---|
| 26 | procedure RegisterCustomBehavior(BehaviorType: integer; Before, After: PChar); stdcall;
|
---|
| 27 |
|
---|
| 28 | // Returns Component Data as requested by the screen reader
|
---|
| 29 | // or in response to a change event
|
---|
| 30 | // must be able to support multiple calls for the same custom behavior
|
---|
| 31 | procedure ComponentData(WindowHandle: HWND;
|
---|
| 32 | DataStatus: LongInt = DATA_NONE;
|
---|
| 33 | Caption: PChar = nil;
|
---|
| 34 | Value: PChar = nil;
|
---|
| 35 | Data: PChar = nil;
|
---|
| 36 | ControlType: PChar = nil;
|
---|
| 37 | State: PChar = nil;
|
---|
| 38 | Instructions: PChar = nil;
|
---|
| 39 | ItemInstructions: PChar = nil); stdcall;
|
---|
| 40 |
|
---|
| 41 | // Instructs the Screen Reader to say the specified text
|
---|
| 42 | procedure SpeakText(Text: PChar); stdcall;
|
---|
| 43 |
|
---|
| 44 | // A configuration change had been made that has yet to take effect
|
---|
| 45 | function ConfigChangePending: boolean; stdcall;
|
---|
| 46 |
|
---|
| 47 |
|
---|