1
//nvdaControllerInternal.idl
2
This file is a part of the NVDA project.
3
URL: http://www.nvda-project.org/
4
Copyright 2006-2010 NVDA contributers.
5
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License version 2.0, as published by
7
the Free Software Foundation.
8
This program is distributed in the hope that it will be useful,
9
but WITHOUT ANY WARRANTY; without even the implied warranty of
10
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11
This license can be found at:
12
http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
16
cpp_quote("This file is a part of the NVDA project.")
17
cpp_quote("URL: http://www.nvda-project.org/")
18
cpp_quote("Copyright 2006-2010 NVDA contributers.")
19
cpp_quote("This program is free software: you can redistribute it and/or modify")
20
cpp_quote("it under the terms of the GNU General Public License version 2.0, as published by")
21
cpp_quote("the Free Software Foundation.")
22
cpp_quote("This program is distributed in the hope that it will be useful,")
23
cpp_quote("but WITHOUT ANY WARRANTY; without even the implied warranty of")
24
cpp_quote("MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.")
25
cpp_quote("This license can be found at:")
26
cpp_quote("http://www.gnu.org/licenses/old-licenses/gpl-2.0.html")
4
30
* Methods to control NVDA via NVDA in-process code.
10
36
interface NvdaControllerInternal {
39
* Gets the process ID of NVDA.
40
* @param pProcessID memory where the retreaved process ID can be placed.
42
error_status_t __stdcall getNVDAProcessID([out] long* pProcessID);
13
45
* Notifies NVDA that the keyboard layout has changed for this thread.
14
46
* @param threadID the thread the layout change occured in
15
47
* @param hkl the current layout retreaved either by GetKeyboardLayout or the lParam of wm_inputLangChange.
18
50
error_status_t __stdcall inputLangChangeNotify([in] const long threadID, [in] const unsigned long hkl, [in,string] const wchar_t* layoutString);
53
* Notifies NVDA that a character has been typed in this thread.
54
* @param threadID the thread the layout change occured in
55
* @param ch the character typed.
57
error_status_t __stdcall typedCharacterNotify([in] const long threadID, [in] const wchar_t ch);
60
* Notifies NVDA that text in the given rectangle (in screen coordinates), in the given window, has changed.
62
error_status_t __stdcall displayModelTextChangeNotify([in] const long hwnd, [in] const long left, [in] const long top, [in] const long right, [in] const long bottom);
21
65
* Logs a message at the given level to NVDA
66
* @param level the level of the message
22
67
* @param process Id of the process where the message is sent from
23
* @param threadID the thread ID of the thread where the message is coming from
24
* @param level the level of the message
25
* @param fileName the name of the file where the message was sent
26
* @param funcName the full name of the function where the message is coming from
27
* @param lineNo the line number where the message was sent
28
68
* @param message the log message
30
error_status_t __stdcall logMessage([in] const long processID, [in] const long threadID, [in] const long level, [in,string] const wchar_t* fileName, [in,string] const wchar_t* funcName, [in] const long lineNo, [in,string] const wchar_t* message);
70
error_status_t __stdcall logMessage([in] const long level, [in] const long processID, [in,string] const wchar_t* message);