Re: Making VoiceOver see changes
Re: Making VoiceOver see changes
- Subject: Re: Making VoiceOver see changes
- From: Michael Ash <email@hidden>
- Date: Wed, 8 Nov 2006 22:36:56 -0500
On Nov 8, 2006, at 8:25 PM, Bill Cheeseman wrote:
on 2006-11-08 8:10 PM, Michael Ash at email@hidden wrote:
What else can I try to match the behavior of NSSlider? Is there a way
to examine which notifications it sends out when it's modified?
By "modified," I assume you mean when the slider thumb is moved? As
in, when
the slider's value is changed? Try the AXValueChanged notification.
I already did, no effect.
You can monitor a slider's notifications in real time with PreFab UI
Browser. I just tried it with the sliders in the System Preferences
Keyboard
& Mouse pane, Keyboard tab, and the value changed notifications are
logged
nicely.
We begin to approach an answer!
Observing Cocoa sliders works fine just as you describe. However,
when I try to observe my custom control, I see things like this in my
run log:
!!! Attempt to observe "AXValueChanged" on non-observable element:
<FSSweepSelection:0x16268680 isPoint=YES pos=0.000000>
Ok, so my custom UI element is not observable. Obviously if VoiceOver
can't observe it, it can't get notifications about it. So all I have
to do is make it observable and I'm done. Great!
Except that, as my exclamation points have probably led you to
believe, I have no idea how to do that. Googling for the error
message or variations on it turns up nothing, and there's nothing in
Apple's archives search either. NSAccessibility.h does not contain
the string "observ" anywhere.
This message actually the description of an NSException that's being
raised during the attempt to add an observer. The backtrace for this
exception looks like this:
#0 0x92628419 in -[NSException raise] ()
#1 0x93592760 in AddObserver ()
#2 0x9180ad92 in _AXXMIGAddNotification ()
#3 0x9181000a in _XAddNotification ()
#4 0x917dd812 in mshMIGPerform ()
#5 0x9082966d in CFRunLoopRunSpecific ()
...
I don't really have an idea of what those private functions are, but
maybe it'll mean something to someone else.
It seems to me that this is the problem, although I could easily be
wrong. How can I make my custom UI element observable?
Mike Ash
Rogue Amoeba Software
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Accessibility-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden