Dean. does the color of the actual Item change perhaps? BTW, if you have hsc installed, and connected to your applications, even just using the simple connection process, which acomplishes heaps of what hsc does anyway, i.e. the Use "HotSpotClicker.jsb" line in the top of your jss, as long as there are other events in your jss file, it won't work just with that one line in there, that should compile, and then work to connect it. although I haven't specificly tried it obviously in either of your apps, but just to let you know that you could most probably use it to help you suss this from the front end of things. for a start, it's got a built in manual per pixel color test utility, utilizing AltShiftNumPad5. Which you can use with either the mouse or invisible cursors. It actually speaks each color as you move around with alt+shift+arrows, but I usually disable both that, and the auto graphics read as well, as I find them kind of annoying to leave on automatic read. you can do that with alt+control+shift+period, and alt+control+shift+slash. anywayz, IN this kind of case, you'd probably use the jaws cursor for investigative purposes, because you want to see what color a certain pixel might change to, when the item is checked, and then what it changes to when clicked again, to uncheck it. you may also like to set your mouseNavigation down to 1 pixel at a time whilst doing this investigation, by going into home row, then left arrowing and you'll hear jaws say, 2, 1, 50, etc. it wraps around back to the highest, so maybe leave it at one if you want. So, after focusing your pc cursor on an item, route JawsToPc, then move to the left or right of your item maybe, or, if the item itself changes color, then you don't even need to do that. but just find a pixel somewhere in the area of the item, that clearly alters color to reflect what state the checked item is in as you click. So leftClick, then hit altShiftNumPad5, to listen, till you find a pixel that might reflect the changed state. You might obviusly need eyes to assist with this process initially, since you won't necessarily know what state is what, unless there's a button like there is in some of these situations, saying "check all," or "uncheck all." if there is, then you wouldn't need eyes. Then, when you find one, leave the jaws cursor on that pixel, and do the following: 1. begin the hotspot definition process. use Control+Alt+Shift+A to begin the wizard, since in this case you don't need words or proper graphics. 2. then in the first question, when it asks what positioning mode you want, hit p twice till you hear, PcCursorRow. 3. Go through the steps of the wizard, being careful as always, to make correct assessments about removing any dynamic information from whatever various windows it offers you, only leaving in there things you're sure wil always be there no matter what state the app is operating in. i.e. remove any document names or specialized window names you think might not always remain etc. I generally by default for example, usually delete totally, any, current, Window names it asks for, but leve in something in the rest of any other window type requests it asks about. 4. when you get to label, just label it anything to identify it to you in testing, because we're not gunna have that label spoken on hotspot activation. 5. when it asks do you want that spoken, say no. when it asks for a key, say yes, and assign something comfortable for you, control1 or whatever. something that won't need to be used in normal operation of your program obviously. 6. then the next step, is to activate the ControlAltShiftF3, Assign a UserFunction hotkey. when you press that, it should first ask you to choose the hotspot to which you wish to add a post processing function. 7. Choose the hotspot you've just created, and hit enter. then it'll give you a list of some predefined user post processing functions to choose from, starting with, "create your own." 8. arrow down to the second one, HscDecodeHotSpotColor, and press enter. it should tell you that the function has been successfully assigned, and instruct you to now activate the hotspot to start defining what your going to assign to the color changes when they occur. 9. so go ahead and do that. hit your hotspot key. it should then click the mouse there, so the color will have changed from what it was when you last listened to it, be aware of that, and it should ask you, what function should run when blah blah blah color is found at that location. 10. arrow down once and you should hear, HSDSayPhraseByColor. Don't ask me why it's d and not c here, but it is. <smile.> then hit enter. then hsc should say, "enter the phrase to be spoken for color, blah." 11. type checked or unchecked, as desired, and hit enter. 12. now, activate your hotspot again. it should click at that location for you, and now there should be the altered color there, which it should then see, and go through the same process as above again. i.e. Firstly ask you what function it should run when it sees that color, and then, what should be spoken etc. it remembers the last function you assigned as well, making that process just that bit sweeter. I've just tested it here with audio grabber, and it seems to work as expected. give it a whirl if you like. From: "Jitendra" <jeet.invincible@xxxxxxxxx> To: <jawsscripts@xxxxxxxxxxxxx> Sent: Friday, January 30, 2009 7:15 PM Subject: [jawsscripts] Re: thank you dean, Re: Re: Checked and unchecked status of graphic > As I don't have such program, it's only way to install and check if I can > so is this program free? or do you find any color change, or any graphic > using ctrl+left or right arrow to check the status of the current item? > or do homerow msaa keys return something meaningful? > Thank you. > Dean Masters wrote: > > Is this function supposed to work whenever you run into the window class in > > the script? The program I am working on uses a different class. Rather than > > the TCheckList it uses TEasyCheckList.unicodeClass. > > > > I commented out the line from your script that had the window class and > > created a new line that included the one in my program. I then added a Say > > to speak when that class was moved to. I didn't get any sign of the class > > being recognized. > > > > Also in this class there doesn't seem to be a graphic representing the > > checkbox at all. there is nothing at all to let you know if there is a > > checkbox or which items in the list view have been selected. > > > > I have gotten the checkboxes in another window class to be spoken when > > changed or when arrowing up or down the list. > > > > Thanks, > > Dean > > ----- Original Message ----- > > From: "Jitendra" <jeet.invincible@xxxxxxxxx> > > To: <jawsscripts@xxxxxxxxxxxxx> > > Sent: Monday, January 26, 2009 12:30 PM > > Subject: [jawsscripts] Re: thank you dean, Re: Re: Checked and unchecked > > status of graphic > > > > > > | Thanks, I remember of reading some of your messages days back, but let > > | me know if it works for you,. > > | Dean Masters wrote: > > | > thanks for this. I have a Bible software program that uses this window > > | > class. I can't see the checkboxes in them. There seems to be no graphic > > | > either. but I will see if this function helps. > > | > > > | > Dean > > | > > > | > ----- Original Message ----- > > | > From: "Jitendra" <jeet.invincible@xxxxxxxxx> > > | > To: <jawsscripts@xxxxxxxxxxxxx> > > | > Sent: Saturday, January 24, 2009 9:48 PM > > | > Subject: [jawsscripts] Re: Checked and unchecked status of graphic > > | > > > | > > > | > | Hello, After having that much trouble, and asking you all, I was able > > to > > | > | discover the following, it solves my problem, and hope useful to some > > of > > | > | you as well. its not that much complicated or special though. > > | > | Void Function CheckStatus () > > | > | Var > > | > | Handle hwnd, > > | > | Int Color, > > | > | string Class > > | > | Let hwnd = GetFocus () > > | > | Let Class = GetWindowClass (hwnd) > > | > | If Class == "TCheckListBox" Then > > | > | SaveCursor () > > | > | JAWSCursor () > > | > | SaveCursor () > > | > | RouteJAWSToPc () > > | > | PriorCharacter () > > | > | Let Color = GetColorText () > > | > | If Color == "0" Then > > | > | SayFormattedMessage (OT_MESSAGE, "checked") > > | > | Else > > | > | SayFormattedMessage (OT_MESSAGE, "not checked") > > | > | EndIf > > | > | EndIf > > | > | EndFunction > > | > | Thanks everyone, specially david and Jeff. > > | > | __________ > > | > | Visit and contribute to The JAWS Script Repository > > http://jawsscripts.com > > | > | > > | > | View the list's information and change your settings at > > | > | //www.freelists.org/list/jawsscripts > > | > | > > | > > > | > > > | > __________ > > | > Visit and contribute to The JAWS Script Repository > > http://jawsscripts.com > > | > > > | > View the list's information and change your settings at > > | > //www.freelists.org/list/jawsscripts > > | > > > | > > > | > > > | > > | > > | __________ > > | Visit and contribute to The JAWS Script Repository http://jawsscripts.com > > | > > | View the list's information and change your settings at > > | //www.freelists.org/list/jawsscripts > > | > > > > > > __________ > > Visit and contribute to The JAWS Script Repository http://jawsscripts.com > > > > View the list's information and change your settings at > > //www.freelists.org/list/jawsscripts > > > > > > > > __________ > Visit and contribute to The JAWS Script Repository http://jawsscripts.com > > View the list's information and change your settings at > //www.freelists.org/list/jawsscripts > __________ Visit and contribute to The JAWS Script Repository http://jawsscripts.com View the list's information and change your settings at //www.freelists.org/list/jawsscripts