GW Micro is proud to host Chip Orange's Interactive Window-Eyes Script Classes, specifically designed for Window-Eyes script/app developers.
Chip holds regular sessions on learning to program, and to write scripts (apps) for Window-Eyes. This gives you the power to solve your own accessibility issues often quickly, and for yourself, rather than wait on the vendor to release another upgrade, which may or may not fix things for you. These sessions are held every Sunday evening at 7 pm eastern time; We use TeamTalk, and a passworded channel. If you'd like a copy of the .tt file, which will start TeamTalk for you, placing you in the correct server and channel (with the password automatically supplied), email
email@example.com. If you want to participate interactively, you'll either need a microphone (or a headset with one), or you can enter your questions via the text message facility of TeamTalk.
TeamTalk is a wonderful, free, accessible, voice conferencing system, which allows for group conversations using full duplex (everyone can hear everyone else while they can talk, just like a phone conference call), with great speech quality, and the ability to upload files to the channel so the participants can instantly share in files which are part of the conference, and the ability to send private text messages to others on the channel, or to the entire group when a written message is preferable to saying it. It can be set for either push-to-talk or voice activation operation.
You can download TeamTalk at
http://bearware.dk. When you run the TeamTalk installer you need to choose the classic client with accessibility as the item to be installed.
You can also download a Window-Eyes app which makes TeamTalk even easier to use from app central at:
You may also choose to subscribe to the:
Interactive Window-Eyes Script Classes RSS feed
Class 1 - February 20, 2011
Beginning VBScript programming: variables and types; assignment commands, looping and IF commands; introduction to the immediate mode script.
Class 2 - February 27, 2011
Beginning VBScript programming: constants; expressions including built-in VBScript functions; writing a function in VBScript; programming style practices.
Class 3 - March 6, 2011
Beginning VBScript programming: subroutines; input/output commands; good programming practices; creating a script and loading it into Window-Eyes.
Class 4 - March 13, 2011
Intermediate VBScript programming: variable declarations; global verses local variables; arrays; more flow-of-control (ElseIf, Select Case, and Do); and error handling.
Class 5 - March 20, 2011
Intermediate VBScript programming: errors and error handling/debugging; exiting subs and functions; objects and object-oriented programming; specifics to the Window-Eyes VBScript environment.
Class 6 - March 27, 2011
Intermediate VBScript programming: object-oriented programming; specifics for Window-Eyes VBScript environment and event handling; WE VBScript development environments.
Class 7 - April 3, 2011
Advanced VBScript programming: object-oriented programming; event handling including fully working app which demonstrates the onChildCreate event of the window object.
Class 8 - April 10, 2011
Advanced VBScript programming: object-oriented programming; event handling expanded from previous week's example; use of more WE events for detecting when windows close; and use of WE method for searching open windows in place of keeping a dictionary.
Moved into best practices for creating a full Window-Eyes app, along with a summary of app tools for creating apps, and for analyzing applications to obtain required info as to their operations. Discussed MS Windows low-level structures and organization of window objects, and WE object model properties and methods used to represent this information.
Class 9 - April 17, 2011
Discussed programming features all apps generally make use of, and which are generated by the WEScriptFramework Wizard: shared objects for standard help dialogs, error handling, updates checking; use of XML files and INI files.
Class 10 - May 1, 2011
Discussion of problems surrounding full-blown use of hotkeys with WEScriptFramework Wizard; creating and posting a .wepm file (last stage of app development); and use of analysis tools WEEvent and TreeView as part of an example problem which showed their usefulness in the solution.
Class 11 - May 8, 2011
Demonstrated use of the new app from GW Micro named UIDesign which allows for easy editing of an XML file, without having to know the exact syntax of the XML in use. Also demonstrated, in conjunction with an app which allows for easy access to the Google language translation facility, how UIDesign allows for "internationalization" of apps.
Class 12 - May 22, 2011
Doug Geoffray (founder of GW Micro) was the guest speaker for the session. He took a series of free-wheeling questions, covering a wide range of scripting topics from using the Windows messaging mechanism from within WE apps, to plans for the scripting feature of Window-Eyes, and even commercial app development, sales, and marketing.
Class 13 - May 30, 2011
Covered adding menu items to the generated app menu and code from WE Script Framework. Used UIDesign to modify the XML menus; discussed ideas behind WE XML dialogs
Class 14 - June 5, 2011
Covers adding dialogs to an xml file using the UIDesign app, along with concepts behind the design of window-eyes xml dialogs. also covered is the necessary vbs code needed to display and process xml dialog information.
Class 15 - June 12, 2011
Covers how to find needed window objects (either application or their controls), and how to then obtain text from their displayed windows using 3 different methods. This is a very common task when improving the accessibility of a particular program.
Class 16 - June 19, 2011
The use of COM automation to control other applications; and more importantly, to provide a link with them in order to provide improved accessibility for their interfaces.
Class 17 - June 26th, 2011
Covered the various ways an app developer might make use of keystroke related objects, methods, and events to help make programs more accessible. Provided a summary of an app which made use of these keystroke objects in order to turn a non-speaking listbox of a program into one which speaks normally.
Class 18 - July 4th, 2011
Using MSAA events to obtain additional information (and other techniques for improving accessibility of a program), and also to prevent the speaking of inappropriate prompts (or other information).
Class 19 - July 10th, 2011
Covers various Window-Eyes objects/events which haven't been covered in previous classes including the use of timers, the onShutdown event, the onError event, modifying speech by use of the speech object's events, and the concept of "scope" as applied to changing set file settings.
Class 20 - July 17th, 2011
Defining classes in VBScript, and their uses in app development; along with passing parameters by reference and by value to subs and functions.
Class 21 - July 24th, 2011
Covered recently released apps of interest to developers; passing parameters by value and by reference; and how to use, how to create, and uses for shared objects.
Class 22 - July 31th, 2011
Demonstrates making a program accessible by the analysis of an inaccessible control of a Windows control panel applet (through the use of the immediate mode app), and then uses the analysis to show how to solve the problem by having an app supply the field name and the field data for the control.
Class 24 - August 7th, 2011
Covers the use of text foreground and background colors in various scripting scenarios.
Class 25 - August 21th, 2011
Covers the code generated by the WE Script Framework, and it's use of 3 commonly used shared objects from the GW Toolkit.
Class 26 - September 4th, 2011
Covers the use of the newly released GW AudioKit.
Class 27 - September 11th, 2011
Covers the editing of VBScript apps by use of the MS Office app (now being renamed to Office VBA and VBS Editor); demonstrates variable/function typing, and features such as Intelli-Sense which make use of it in the VBA Editor.
Class 28 - September 18th, 2011
This class covers the use of ADO, and the MS JET database engine, for adding database functionality to an app (part 1).
Class 29 - September 25th, 2011
Part 2 of the series covering adding database capabilities to apps using ADO.
Class 30 - October 17th, 2011
Part 3 of the series covering the use of XML dialogs, this part covers writing an event handler for editboxes, single and multiselect listboxes, pushbuttons and checkboxes. Also covered is how to have hotkeys function only inside of an XML dialog, and how to dynamically enable or disable controls based on the values in other controls.
Class 31 - September 24th, 2011
Part 4 of the series covering the use of XML dialogs, this part covers use of the listview, treeview, and updown control types.