| Rev. | Time | Author |
|---|---|---|
| 98aa8ab | 2006-11-12 20:58:16 | mick <> |
|
setup.py now copies lang instead of dictionaries. |
||
| 7f646b1 | 2006-11-12 19:51:12 | mick <> |
|
Finally the python win32 extentions are no longer needed. Everything has been changed to use comtypes. comtypesClient has been changed so when generating com interface modules, it also compiles them to .pyc files and deletes the .py file (which just wastes space). All the general auto-generated comInterfaces modules have been deleted from svn and all the auto-generated .pyc files have been added. Since this is auto-generated code it figures that its probably best for both svn and NVDA itself to just deal with bytecode. As far as open-source goes, these .py files can be generated with out too much trouble. |
||
| 33bee4c | 2006-11-12 16:42:22 | mick <> |
|
Added some more messages. Fixed up a problem in the default config where alignment was set to always in documentDormatting, should be never. |
||
| 9f907dc | 2006-11-12 12:56:06 | mick <> |
|
messages.enu and gui.enu added to the lang directory. Changed mostly all speakMessage calls in NVDA to use strings from lang.messages. Changed gui menus and messages and titles etc to use strings from lang.gui. Lang now loads enu by default and then if the chosen language is not enu it merges that specific language in to the already loaded enu. This means things arn't going to badly crash if a language file isn't complete. |
||
| 74d1604 | 2006-11-12 09:51:26 | mick <> |
|
Step2 of dictionaries to lang. Now dictionaries is called lang. lang no longer needs to load files individually, import lang gets what it needs automatically. the .py files in dictionaries dir are now .enu files in lang directory. A new config section language is added with a value language = enu. You can now place other characterSymbols, roleNames, textSymbols or stateNames files ending in .<your language code> and lang will pick up the right ones. |
||
| 1702563 | 2006-11-12 09:35:00 | mick <> |
|
Step1 of moving dictionaries to lang. This commit is broken, please wait for next one. |
||
| 209f820 | 2006-11-12 07:50:20 | mick <> |
|
Added voice menu item to preferences menu. Viavoice and sapi5 list voices properly, though sapi4 with the current com interface we can not get or set voices it seems, so it just reports default as its only voice. Fixed up problem where changes were still being made if ok wasn't pressed on synthesizer and voice dialogs, I assumed for some odd reason that ShowModal returns true for ok and false otherwise, but have to use the wx IDs. |
||
| 383df09 | 2006-11-11 22:06:19 | mick <> |
|
Re-wrote quite a lot of synthDriverHandler. load is now called setDriver. get/set rate/pitch/volume/voice, getVoiceNames, speakText and cancel are all now added to synthDriverHandler. These fnctions call the real synth functions however the set versions update the current config. Also hpefully fixed up the handling of major crashes a bit better, now when a crash happens, there is an onAbortCommand which is called on the gui mainFrame to make sure it is destroyed along with the rest of NVDA. beeps are also different now so you can tell the difference exactly between an exiting crash and a normal exit. |
||
| 8eeed0d | 2006-11-11 20:28:01 | mick <> |
|
A save configuration menu item has been added to the NVDA menu. This saves the current configuration to nvda.ini. Core no longer runs config.save on exit. Save configuration has shortcut key ctrl+s in the NVDA window also. |
||
| 1ffc0da | 2006-11-11 20:04:09 | mick <> |
|
Temporarily disabled the refreshing of nodes in the internet explorer virtual buffer since it seems for some reason that the node has no children when rereshing on an ondeactivate. This just means for now when filling in forms etc the text won't change in the virtual buffer. |
||
| f1321ac | 2006-11-11 17:01:11 | mick <> |
|
NVDAThreads.pump now orders the generators by ID before going through them all. This fixes the problem with audio cancels sometimes happening after a speakText (in the wrong order). This means that key echo works fine now also. |
||
| b666aec | 2006-11-11 15:51:47 | mick <> |
|
Added scripts toggleSpeakTypedCharacters (insert+2), toggleSpeakTypedWords (insert+3) and toggleSpeakCommandKeys (insert+4) to the default appModule. A keyboard section as been added to nvda.ini, with speakTypedCharacters, speakTypedWords and speakCommandKeys as boolean values. speakTypedCharacters is for echoing any ascii character as it is typed, speakTypedWords echos a string of ascii characters when it reaches something that isn't an ascii character key, and speakCommandKeys speaks everything else (key combinations, escape, ener etc). For some reason every now and then a key character isn't spoken properly, may be something to do with the cancel happening so close to the key speaking. |
||
| c098576 | 2006-11-11 10:51:21 | mick <> |
|
Fixed some more crashes with the mouse movement code. Added an event_mouseMove to NVDAObject_edit, but currently its called old_event_mouseMove because it has some major problems with things like the address bar in windows explorer. Otherwise though, in Notepad, it currently reads as you move by line, word and character quite fine. Interesting idea, but if it causes more problems than there are advantages, it won't be used. |
||
| e18ae22 | 2006-11-10 22:39:47 | mick <> |
|
Fixed event_mouseMove in NVDAObject, getLocation returns (left,top,width,height) not (left,top,right,bottom). Thats what happens when you write mouse code but don't have a mouse to test it. |
||
| 3367013 | 2006-11-10 21:59:00 | mick <> |
|
Fixed bug where insert+q would not have the exit message dialog in focus: we now use self.Raise() in gui.mainFrame.onExitCommand before invoking the messageDialog. I guess this fixes our menu problem as well, but until we get an icon, I wouldn't worry about it. Also completely ripped out the keyboardHandler, MSAAHandler and mouseHandler queues, no longerneeded. Now each of these modules call NVDAThreads.executeFunction with api.executeEvent or api.executeScript etc as a parameter. All seems to still work fine, and no responsivness has been lost, if anything its a tiny bit more responsive. This certainly makes core.py a lot nicer to read. The mouseMove event code has also been redesigned so that the object that it is called on gets x,y,oldX,oldY as parameters so it can work out if the mouse is entering the ojbect or its already in there. Cool things like reading the current line in edit fields when moving the mouse should be able to be possible now. |
||
| ee258f8 | 2006-11-10 18:24:39 | mick <> |
|
Added Jamie's gui change for onExit to work with insert+q. However, we run in to the same problem with focus, the yes no dialog comes up, but if focus is not currently on the NVDA window, it doesn't get focus, event a self.SetFocus() on the mainFrame still doesn't do the trick. |
||
| f2e9d12 | 2006-11-10 16:11:13 | mick <> |
|
Updated documentation |
||
| 93e9713 | 2006-11-10 16:02:47 | mick <> |
|
Fixed up synth rate ratios a little. Added script_increaseRate (insert+pageUp) and script_descreaseRate (insert+pageDown) to the default appModule. |
||
| 1d09b41 | 2006-11-10 15:31:13 | mick <> |
|
Changed config.checkSynth to take a synth name as a parameter, and instead of calling it from config.load, it gets called from synthDriverHandler.load instead. |
||
| 934cd19 | 2006-11-10 14:44:41 | mick <> |
|
NVDAThreads.executeFunction can not block until the passed function has finished. Event with a time.sleep in a while loop it seems to never let the main thread finish. For now it still executes the function but just doesn't block, and instead of returning the functions result, it only returns the functions generator ID it received from addGenerator. |
||
| 4355af8 | 2006-11-09 15:30:18 | mick <> |
|
Changed NVDAThreads module so that now there is addGenerator, removeGenerator, generatorExists, executeFunction, getLastGeneratorValue, makeGeneratorFunction. In Summary, now it is possible to either add a generator object to be iteraated until it stops, on the core main loop, or, you can execute a normal function on the core main loop, but executeFunction blocks until it completes and can still return its return value. executeFunction needs to be used in places like when changing the current synthesizer in a GUI event (onChooseSynthesizerCommand). |
||
| faf0cfc | 2006-11-09 15:05:57 | mick <> |
|
Changed synthDriverHandler.load to only replace the current synth with the new one when it is all setup. If there is an exception when loading now, the old one is not destroyed. |
||
| c6f5875 | 2006-11-09 15:01:05 | mick <> |
|
Added a preferences menu and in it a synthesizer... menu item which allows you to change the current synthesizer. At the moment it doesn't update nvda.ini, not sure if its appropriate to or not. |
||
| 3a7eaae | 2006-11-09 10:31:27 | mick <> |
|
Added a help menu and an about... dialog to NVDA GUI. Added versionInfo.py which holds things like name, version, url etc which both setup.py and gui.__init__.py both use for their metadata. |
||
| 3c8cbe8 | 2006-11-08 20:54:39 | mick <> |
|
The GUI has been changed a bit. Now it is a perminant window that has a menu bar with an NVDA menu, which ahs an exit menu item. There will be more menus and items comming. There was still trouble with having a single popup menu, gaining focus was a problem. Now with the window, if you close it, it will do an exit command, asks you and if yes completely exits NVDA. Insert+q doesn't work at the moment, gui.mainFrame.Close(True) seems to crash if its called from another thread, and I still really don't get this AddPendingEvent stuff. |
||
| 0152e8b | 2006-11-08 16:07:36 | mick <> |
|
VirtualBuffer objects now can completely handle their caret by themselves. They have caret_nextCharacter, caret_previousCharacter (word, line) etc which moves their caret (position in the text buffer) around. VirtaulBuffers also have their own keyMap which maps arrows etc to these new functions. NVDAObject_virtualBuffer now instead of having to have scripts for each key now uses the same coding as NVDAObject_edit (script_moveByCharacter, script_MoveByLine, script_MoveByWord etc) but firstly checks to see if focusInteractionMode is off, and also instead of using keyboardHandler's sendKey, it uses the virtualBuffer's processKey. So in theory now, a virtualBuffer acts exactly like an edit field, just you ned to use its processKey to get key presses to it. All this also now makes sayAll work properly in virtualBuffers. |
||
| 7103e26 | 2006-11-08 14:51:17 | mick <> |
|
Changed audio functions back to being straight through, rather than using a queue, ended up causing more problems than solving them. keyboardHandler also sends SilenceSpeech through its queue again. SayAll still all works fine though. In the last commit, keyboardHandler was much improved by using getKeyState rather than keeping track of control, shift, alt and win with variables. However, insert is still tracked with a variable since we can not let it pass through to the application. The fixes to keyboardHandler fix problems where certain modifier keys were being thought to be stuck down after an alt+tab etc. |
||
| 0cffeff | 2006-11-08 12:02:49 | mick <> |
|
*Added an NVDAThreads module which keeps track of generator objects and has a pump function which can call next() on all of them. |
||
| a198288 | 2006-11-04 17:32:37 | mick <> |
|
Updating documentation |
||
| 5d06845 | 2006-11-04 17:32:01 | mick <> |
|
Added top (shift+numpad7), bottom (shift+numpad9), start of line (shift+numpad1) and end of line (shift+numpad3) to NVDAObject_edit. Also added home, end, controlHome and controlEnd to NVDAObject_virtualBuffer. |
||