View Full Version : Components page accessibility
18th June 2006, 01:55
The treeview doesn't send accessibility events for checked / unchecked which I believe is due to it not having the TVS_CHECKBOXES style. I've set this in the ui resource for the treeview in order to get the events but then the checkbox images are incorrect when clicking on the checkbox itself though it does work fine when clicking on the text, etc. I'd just use checkboxes but I'd like to keep the selected item description functionality. Any help with this would be appreciated.
18th June 2006, 09:59
.onSelChanged function is called when a checkbox is checked or unchecked.
18th June 2006, 10:11
I tried using .onSelChange along with SectionSetFlags, SectionGetFlags, etc. to come up with a workaround without any joy. I also tried using WM_KEYDOWN 32 to send a spacebar keypress along with a few other methods. SectionGetFlags returns unselected while the checkbox displays the selected image and the dark gray selected image when it is selected.
One option may be to force the correct image for the TVITEM in .onSelChange but I'm not sure if I should even go down that path... seems a bit painful and may just not be possible. Any ideas of which route would be simplest to take?
18th June 2006, 12:30
As far as I can see you haven't really explained what you want to do.
18th June 2006, 20:34
From the original post:
"The treeview doesn't send accessibility events for checked / unchecked which I believe is due to it not having the TVS_CHECKBOXES style."
I would like the treeview's checkbox state to work with screen readers. Currently a screen reader is unable to tell a visually imparied person whether the checkbox is checked or unchecked or for that matter that there is a checkbox.
I can get the state in a screen reader by modifying the ui resource and adding TVS_CHECKBOXES to the treeview's style. This then breaks the display of the checkbox checked state when clicking on the checkbox itself.
My second post describes some possible hacks to workaround the bug and that I was unable to fix the display of the image by using .onSelChange, etc.
30th June 2006, 08:01
The problem is that those aren't really checkboxes. Those are just images of checkboxes. TVS_CHECKBOXES is not available on older versions of Windows and so images are used for compatibility. This also allows easily customizing the checkbox image.
30th June 2006, 15:54
Do you have any pointers as to what would need to be modified in order to use TVS_CHECKBOXES or perhaps a way to work around this?
30th June 2006, 17:35
Way too much code in Source\exehead\Ui.c, exec.c and components.c. A workaround would probably be manually implementing IAccessible for the control.
vBulletin® v3.8.6, Copyright ©2000-2013, Jelsoft Enterprises Ltd.