Develop and Download Open Source Software

Browse Subversion Repository

Contents of /trunk/readme.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 75 - (show annotations) (download)
Mon Feb 22 06:25:09 2010 UTC (14 years, 1 month ago) by tsuzi
File MIME type: text/plain
File size: 5990 byte(s)
NVDA Projectの更新

Revision: 3575
Author: bzr
Date: 11:08:05, 2010年2月17日
Message:
nvdaHelper SCons files: make our custom msrpc builder in to a proper SCons tool and place it in our site_scons\site_tools dir as msrpc.py.

Revision: 3576
Author: bzr
Date: 11:32:04, 2010年2月17日
Message:
Make sure that the input library for nvdaControllerClient (nvdaControllerClient32.lib or nvdaControllerClient64.lib) properly points to the correctly named dll (e.g. nvdaControllerClient32.dll for nvdaControllerClient32.lib). Previously both 32 and 64 bit libs were pointing to nvdaControllerClient.dll, which did not exist.
Specific changes:
*Remove the LIBRARY statement from nvdaControllerClient.def. Link seems to cope fine with out it, producing no warnings, yet still properly exports all listed functions and uses the real name of the dll.
*Remove special code in client\sconscript that handled  dependency tracking of the .def file and the addition of the \def: switch to LINKFLAGS. It seems that the SharedLibrary builder from the msvc SCons tool is much smarter than I thought; providing a .def file as one of the source files automatically uses the .def file properly (i.e.  adds it with a \def: switch).

Revision: 3577
Author: bzr
Date: 14:59:05, 2010年2月17日
Message:
Updated finnish language file, what's new,
Updated italian language file, language strings for the NVDA installer, readme,
Updated spanish language file, language strings for the NVDA installer, user guide, what's new, quick command keys,
Updated hungarian language file, what's new.

Revision: 3578
Author: bzr
Date: 9:07:05, 2010年2月18日
Message:
Replace the nvdaController interface with a slightly better one, fixing a few issues.
Note that this does completely break any nvdaControllerClient dll compiled before this change. We figure its better to do this now before the beta rather than after.
Specifically:
*Make sure that the interface name in the acf exactly matches the name in the idl. Makes sure that midl really will use the acf declarations.
*Remove nvdaController_getNVDAVersionString. The implementation would most likely crash the app who called it, or at least cause memory leaks. Perhaps in future we'll reimplement a new one, though its arguments would definitely have to change some what, as the caller will have to allocate a buffer first, rather than leaving it up to the server -- this does not work.
*Move nvdaController_testIfRunning to the top of the method list. This change is really just to make the header \ future documentation look more understandable.
*Change the GUID of nvdaController so as to make sure that older clients do not successfully connect to the interface, as if they did calling any of the methods would now cause a crash or other unexpected results due to method removal\reorder.

Revision: 3579
Author: bzr
Date: 9:07:06, 2010年2月18日
Message:
MSRPC SCons tool:
*Allow for providing a .acf file as one of the sources. The builder will now make sure that \acf is inserted before each .acf that appears in the resulting commandline. We use an action generator to do this.
*The build emitter was accidentilly using the first source file as the base for all target names. It now uses the first target if it exists, else it falls back to the first source.

Revision: 3580
Author: bzr
Date: 9:07:07, 2010年2月18日
Message:
nvdaHelper SCons files:
No longer use an sconscript file to compile the nvdaController interface by itself. Instead, have each component that needs it  generate the RPC Stubs with the MSRPC tool by themselves. The advantage of this is that each component can control  compiler parameters for compiling the nvdaController stubs on their own. E.g. the client library could  choose a prefix for each nvdaController method more suited to what it needs.
Its also one less thing we need to carry around in the top-level sconstruct file.

Revision: 3581
Author: bzr
Date: 9:07:08, 2010年2月18日
Message:
MSRPC SCons tool:
*Allow configuring of the  prefix for method names with the construction variables MSRPCStubs_prefix, MSRPCStubs_serverPrefix and MSRPCStubs_clientPrefix.
*Allow to disable the creation of either the client stub, or the server stub, with the construction variables MSRPCStubs_noClient or MSRPCStubs_noServer respectivly.

Revision: 3582
Author: bzr
Date: 9:07:09, 2010年2月18日
Message:
nvdaHelper SCons files:
*No longer use an sconscript file to generate the vbuf RPC stubs. Instead let each component that needs the stubs generate them themselves with the MSRPCStubs builder.
*All components that generate vbuf or nvdaController RPC stubs now make use of the new MSRPCStubs construction variables to  configure the method name prefix, or to disable the creation of server stubs or client stubs if they are not needed. E.g. Local can disable server stubs for vbuf as it does not need them.

Revision: 3583
Author: bzr
Date: 9:07:10, 2010年2月18日
Message:
nvdaHelper:
Move inputLangChangeNotify out of the nvdaController interface and in to an new interface called nvdaControllerInternal.
The goal from now on is to keep the nvdaController interface as clean as possible, and only add functions that are easy to use, and are needed by other app developers.
nvdaControllerInternal on the other hande could be changed as much as we like, or even removed or replaced with another one, as nvdaHelperRemote.dll and nvdaHelperLocal.dll always are shipped together. Unlike nvdaControllerClient, which apps may  be using copies of from prior releases of NVDA to the one the user is currently running.

Revision: 3584
Author: bzr
Date: 10:36:04, 2010年2月18日
Message:
nvdaHelper: add local\nvdaControllerInternal.c to revision control... forgot to do it previously.

Revision: 3585
Author: bzr
Date: 11:05:04, 2010年2月18日
Message:
Fix typo in nvdaHelper's remote\vbufRemote.cpp -- was including the wrong file.

Revision: 3586
Author: bzr
Date: 12:08:03, 2010年2月18日
Message:
nvdaHelper.nvdaControllerInternal_inputLangChangeNotify: again  ignore layout changes that happen with in 0.2 seconds of each other. We could do this time filtering in-process, though it would still be possible for there to be changes from separate processes at the same time, which that would not fix... at least with out shared memory. At least this code has always worked in the past... we may as well stick with it.

Revision: 3587
Author: bzr
Date: 15:10:04, 2010年2月18日
Message:
Updated french language file,
Updated galician language strings for the NVDA installer.

Revision: 3588
Author: bzr
Date: 16:29:04, 2010年2月18日
Message:
Changes to make nvdaController local to the desktop NVDA is running on. This fixes a bug where nvdaControllerClient didn't work if NVDA had already been started on another desktop or another session, before the current copy of NVDA had been started.
Also some other code cleanup.
Specifically:
*Add winIPCUtils, which contains a function: getNVDAControllerNcalrpcEndpointString, which can calculate an appropriate ncalrpc port name, that has the current session Id and desktop name encoded in the string.
*Make sure all nvdaHelper code that creates an rpc client binding, or sets  the nvdaController server protocol, uses getNVDAControllerNcalrpcEndpointString, so that nvdaControllerClient and nvdaHelperRemote can speak to a running NVDA on the same desktop.
*nvdaControllerInternal interface:  the implicit binding handle must be called nvdaControllerInternalBindingHandle, not nvdaControllerBindingHandle.
*Initialize the nvdaController and nvdaControllerInternal binding handles in nvdaHelperRemote's dllMain. Previously nvdaHelperRemote's ia2LiveRegions initialization \ termination code was initializing the nvdaControllerBindingHandle, and the nvdaControllerInternalBinding handle wasn't being initialized at all.

Revision: 3589
Author: bzr
Date: 9:40:05, 2010年2月19日
Message:
Update bzr ignores.

Revision: 3590
Author: bzr
Date: 9:40:07, 2010年2月19日
Message:
Certain standard tree view controls in 64 bit applications (e.g. the Contents tree view in Microsoft HTML Help) are now accessible. (#473)

Revision: 3591
Author: bzr
Date: 10:41:04, 2010年2月19日
Message:
nvdaHelper remote inputLangChange: inputLangChange_callWndProcHook(): Use KL_NAMELENGTH for the buffer supplied to GetKeyboardLayoutName() instead of hard-coding 1024.

Revision: 3592
Author: bzr
Date: 10:41:05, 2010年2月19日
Message:
Update eSpeak dependency to 1.43.

Revision: 3593
Author: bzr
Date: 12:15:05, 2010年2月19日
Message:
synth drivers: Before !#311 was implemented, the default minimum step for numeric settings was 1, but the settings ring used a step of 5 or 10, depending on the setting. !#311 changed this so that numeric settings had a default minimum step of 5. This means that moving by 1 is impossible, even in the Voice Settings dialog. These changes fix this regression.
	* NumericSynthSetting: Add normalStep (used by the settings ring) and LargeStep (used by pageUp\pageDown on sliders in the Voice Settings dialog).
	* Change the ring and dialog accordingly.
	* SynthDriver: Minimum steps for all common settings now default to 1.
	* audiologic synth driver: Set step values as they were in 2009.1.
	* Corrected and updated code documentation while i was at it. :)
Fixes !#566.

Revision: 3594
Author: bzr
Date: 14:42:05, 2010年2月19日
Message:
mshtml vbuf backend: Handle cases where the style textDecoration property contains multiple values; e.g. "underline line-through". Fixes some rare "ExpatError: not well-formed (invalid token)" exceptions in mshtml buffers. Closes !#567.

Revision: 3595
Author: bzr
Date: 18:51:05, 2010年2月19日
Message:
 * NVDAHelper: make use of stack-alocated arrays where appropriate, since this is safier and slightly more readable.

Revision: 3596
Author: bzr
Date: 21:14:05, 2010年2月19日
Message:
NVDAObjects.IAccessible.sysTreeView32: Woops. The UIA NVDAObject can't be imported if UIA isn't available, so make this import conditional. Fixes broken tree views on systems without the UIA client API.

Revision: 3597
Author: bzr
Date: 18:20:04, 2010年2月21日
Message:
 * miranda32 appModule: make use of braille when focus changes. It's better to query focus event instead, but core devs decided to put it after the release. Closes !#568.





















1 = NVDA Source Code Read Me =
2
3 This document describes how to prepare and use the NVDA source code. For more information about NVDA, see the NVDA web site:
4 http://www.nvda-project.org/
5
6 == Dependencies ==
7 The NVDA source depends on several other packages to run correctly, as described below. All directories mentioned are relative to the root of the NVDA source distribution/checkout. Please create any directories mentioned that don't already exist.
8
9 If you are running a 64 bit version of Windows, you should install the 32 bit versions of any dependencies that provide both 32 bit and 64 bit versions.
10
11 General dependencies:
12 * Python 2.6, version 2.6.4 or later: http://www.python.org/
13 * comtypes, version 0.6.2 or later: http://www.sourceforge.net/projects/comtypes/
14 * wxPython unicode (for Python 2.6), version 2.8.9.1 or later: http://www.wxpython.org/
15 * Python Windows Extensions (for Python 2.6), build 212 or later: http://www.sourceforge.net/projects/pywin32/
16 * eSpeak, version 1.43 or later, Windows dll:
17 * Official web site: http://espeak.sourceforge.net/
18 * The Windows dll is tricky to build, so a pre-built version has been provided for convenience at http://www.nvda-project.org/3rdParty/
19 * Copy espeak.dll and espeak-data into the source\synthDrivers directory.
20 * Additional variants for eSpeak: http://www.nvda-project.org/espeak-variants/
21 * Extract the archive into the source\synthDrivers directory.
22 * IAccessible2, version 1.1.0.0 or later:
23 * The proxy dll and typelib are required.
24 * Pre-built versions have been provided for convenience at http://www.nvda-project.org/3rdParty/
25 * Copy ia2.tlb into the source\typelibs directory.
26 * Copy the 32 bit version of the proxy dll into the source\lib directory, naming it IAccessible2Proxy.dll.
27 * Copy the 64 bit version of the proxy dll into the source\lib64 directory, naming it IAccessible2Proxy.dll.
28 * ConfigObj, version 4.6.0 or later:
29 * Web site: http://www.voidspace.org.uk/python/configobj.html
30 * Copy configobj.py and validate.py into the source directory.
31 * liblouis, version 1.8.0 or later, Windows dll and Python bindings:
32 * Official web site: http://code.google.com/p/liblouis/
33 * A pre-built version has been provided for convenience at http://www.nvda-project.org/3rdParty/
34 * Copy the louis Python package directory into the source directory.
35 * Copy the liblouis dll into the source directory.
36 * Copy the liblouis translation tables into the source\louis\tables directory.
37 * In the pre-built version, this has already been done.
38 * NVDA media (images and sounds): http://www.nvda-project.org/nvda-media/
39 * Extract the archive into the root of your NVDA source distribution.
40 * System dlls not present on many systems: mfc90.dll, msvcp90.dll, msvcr90.dll, Microsoft.VC90.CRT.manifest:
41 * IF you don't have them already, all of these files have been bundled for convenience at http://www.nvda-project.org/3rdParty/system-dlls.7z
42 * Copy them either into the source directory or into your Windows system32 directory.
43 * nvdaHelper:
44 * You can build this yourself, although you need to have the Windows SDK installed, which is quite large. See source\nvdaHelper\building.txt for instructions.
45 * Alternatively, a pre-built version has been provided for convenience at http://www.nvda-project.org/nvdaHelper/
46 * Extract this archive into the root of your NVDA source distribution.
47 * Adobe AcrobatAccess interface typelib:
48 * You can build this yourself using midl from the idl located at http://www.adobe.com/devnet/acrobat/downloads/ClientFiles.zip
49 * Alternatively, a pre-built version has been provided for convenience at http://www.nvda-project.org/3rdParty/AcrobatAccess.tlb
50 * Copy AcrobatAccess.tlb into the source\typelibs directory.
51 * Adobe FlashAccessibility interface typelib: http://www.nvda-project.org/3rdParty/FlashAccessibility.tlb
52
53 To use the brltty braille display driver:
54 * brlapi Python bindings, version 0.5.3 or later, distributed with BRLTTY for Windows, version 4.0-2 or later:
55 * You can download BRLTTY for Windows at http://brl.thefreecat.org/brltty/
56 * The brlapi Python bindings can be found in the BRLTTY installation directory and are named brlapi-x.y.z.exe
57
58 To use the Alva BC640/680 braille display driver:
59 * ALVA BC6 generic dll, version 2.0.3.0 or later: http://www.nvda-project.org/3rdParty/alvaw32.dll
60 * Copy alvaw32.dll into the source\brailleDisplayDrivers directory.
61
62 To build a binary version of NVDA:
63 * Py2Exe (for Python 2.6), version 0.6.9 or later: http://www.sourceforge.net/projects/py2exe/
64
65 To build an installer:
66 * Nulsoft Install System, version 2.42 or later: http://nsis.sourceforge.net/
67 * NSIS UAC plug-in, version 0.0.11d or later: http://nsis.sourceforge.net/UAC_plug-in
68 * Copy the ANSI build of UAC.dll (found in release\a in the archive) into the installer directory.
69
70 == Preparing the Source Tree ==
71 Before you can run the NVDA source code, you must run generate.py located in the source directory.
72 You should do this again whenever the version of comtypes changes or new language files are added.
73
74 == Running the Source Code ==
75 To start NVDA from source code, run nvda.pyw located in the source directory.
76
77 == Building a Standalone Binary Version of NVDA ==
78 You can use py2exe to make a binary build of NVDA which can be run on a system without Python and all of NVDA's other dependencies installed (as we do for snapshots and releases).
79
80 Assuming py2exe is installed, open a command prompt, change to the NVDA source directory and type:
81 setup.py py2exe
82
83 == Building an NVDA Installer ==
84 To build an NVDA installer:
85 1. First build a standalone binary version as described in the previous section.
86 2. Using Windows Explorer, locate nvda.nsi in the installer directory.
87 3. Press the applications key and choose "Compile NSIS Script".
88 The installer will be built and placed in the installer directory.

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26