├── .gitignore ├── CONDUCT.md ├── CONTRIBUTING.md ├── DCO1.1.txt ├── README.md ├── clientdb.xml ├── org.a11y.utils.accprobe-feature ├── .project ├── about.html ├── build.properties ├── feature.properties ├── feature.xml ├── license.html └── rootfiles │ ├── AccprobeUserGuide.html │ ├── about.html │ └── license.html ├── org.a11y.utils.accprobe.accservice.win32.ia2-fragment ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── about.html ├── bin-src │ ├── CAccessible2.cpp │ ├── CAccessible2.h │ ├── a11y_ia2.suo │ ├── a11y_ia2.vcproj │ ├── ia2_api_all.h │ ├── ia2_api_all_i.c │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2Accessible.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2Accessible.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleAction.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleAction.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleEditableText.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleEditableText.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleTable.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleTable.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleText.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleText.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IAccessibleTable2.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IAccessibleTable2.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_ia2_IAccessibleTableCell.cpp │ └── org_a11y_utils_accprobe_accservice_core_win32_ia2_IAccessibleTableCell.h ├── build.properties ├── fragment.properties ├── fragment.xml └── src │ └── org │ └── a11y │ └── utils │ └── accprobe │ └── accservice │ ├── adapt │ └── win32 │ │ └── ia2 │ │ └── IA2AccessibilityAdaptor.java │ └── core │ └── win32 │ └── ia2 │ ├── IA2.java │ ├── IA2AccessibilityEventService.java │ ├── IA2AccessibilityService.java │ ├── IA2Accessible.java │ ├── IA2AccessibleAction.java │ ├── IA2AccessibleApplication.java │ ├── IA2AccessibleComponent.java │ ├── IA2AccessibleEditableText.java │ ├── IA2AccessibleElement.java │ ├── IA2AccessibleHyperlink.java │ ├── IA2AccessibleHypertext.java │ ├── IA2AccessibleImage.java │ ├── IA2AccessibleTable.java │ ├── IA2AccessibleText.java │ ├── IA2AccessibleValue.java │ ├── IA2GuiModel.java │ ├── IA2RowColumnExtents.java │ ├── IA2TableModelChange.java │ ├── IA2TextSegment.java │ ├── IA2WindowService.java │ ├── IAccessibleTable2.java │ └── IAccessibleTableCell.java ├── org.a11y.utils.accprobe.accservice.win32.msaa-fragment ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── about.html ├── bin-src │ ├── Accessible.cpp │ ├── Accessible.h │ ├── a11y-msaa.suo │ ├── a11y_msaa.vcproj │ ├── ia2_api_all.h │ ├── ia2_api_all_i.c │ ├── org_a11y_utils_accprobe_accservice_core_win32_msaa_MsaaAccessibilityEventService.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_msaa_MsaaAccessibilityEventService.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_msaa_MsaaAccessible.cpp │ ├── org_a11y_utils_accprobe_accservice_core_win32_msaa_MsaaAccessible.h │ ├── org_a11y_utils_accprobe_accservice_core_win32_msaa_MsaaWindowService.cpp │ └── org_a11y_utils_accprobe_accservice_core_win32_msaa_MsaaWindowService.h ├── build.properties ├── fragment.properties ├── fragment.xml └── src │ └── org │ └── a11y │ └── utils │ └── accprobe │ └── accservice │ ├── adapt │ └── win32 │ │ └── msaa │ │ └── MsaaAccessibilityAdaptor.java │ └── core │ └── win32 │ └── msaa │ ├── Msaa.java │ ├── MsaaAccessibilityEventService.java │ ├── MsaaAccessibilityService.java │ ├── MsaaAccessible.java │ ├── MsaaGuiModel.java │ └── MsaaWindowService.java ├── org.a11y.utils.accprobe.accservice ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── about.html ├── build.properties ├── plugin.properties ├── plugin.xml ├── schema │ └── accservices.exsd └── src │ └── org │ └── a11y │ └── utils │ └── accprobe │ └── accservice │ ├── AccessibilityServiceException.java │ ├── AccessibilityServiceManager.java │ ├── IAccessibilityEventService.java │ ├── IAccessibilityService.java │ ├── IWindowService.java │ ├── core │ ├── AccessibilityServicePlugin.java │ ├── AccessibleConstants.java │ ├── AccessibleElementTreeWalker.java │ ├── AccessibleNodeItemFilter.java │ ├── AccserviceRegistryChangeListener.java │ ├── IAccessibleEditableTextElement.java │ ├── IAccessibleElement.java │ ├── IAccessibleElement2.java │ ├── IAccessibleImageElement.java │ ├── IAccessibleTableElement.java │ ├── IAccessibleTextElement.java │ └── IAccessibleValueElement.java │ ├── event │ ├── AccessibilityModelEvent.java │ ├── TopLevelWindowEvent.java │ └── TopLevelWindowEventListener.java │ └── locate │ ├── AccessibleNodeIterator.java │ ├── AccessibleNodeLocator.java │ ├── AccessibleNodePointer.java │ └── AccessibleNodePointerFactory.java ├── org.a11y.utils.accprobe.core ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── META-INF │ └── MANIFEST.MF ├── about.html ├── build.properties ├── plugin.properties ├── plugin.xml ├── schema │ ├── modelTypes.exsd │ └── nodeFilters.exsd └── src │ └── org │ └── a11y │ └── utils │ └── accprobe │ └── core │ ├── A11yCorePlugin.java │ ├── adapt │ ├── DefaultAdaptorFactory.java │ ├── IAdaptor.java │ └── IAdaptorFactory.java │ ├── config │ ├── AbstractConfiguration.java │ ├── ConfigurationException.java │ ├── EclipseConfiguration.java │ ├── IConfiguration.java │ ├── Version.java │ └── XmlConfiguration.java │ ├── logging │ ├── AbstractErrorLogger.java │ ├── ConsoleErrorLogger.java │ ├── EclipseErrorLogger.java │ ├── IErrorLogger.java │ ├── LoggingUtil.java │ └── StreamErrorLogger.java │ ├── model │ ├── AbstractModel.java │ ├── AbstractRenderableModel.java │ ├── DefaultModelFactory.java │ ├── IModel.java │ ├── IModelFactory.java │ ├── IRenderableModel.java │ ├── InvalidComponentException.java │ ├── ModelPlugin.java │ ├── ModelRegistryChangeListener.java │ ├── events │ │ ├── IModelChangeListener.java │ │ ├── IModelEventListener.java │ │ ├── ModelChangeEvent.java │ │ ├── ModelEvent.java │ │ └── ModelEventType.java │ ├── locate │ │ ├── AbstractNodeLocator.java │ │ ├── BaseNodeIterator.java │ │ ├── BaseNodePointer.java │ │ └── INodeLocator.java │ └── traverse │ │ ├── AbstractNodeWalker.java │ │ ├── AbstractTreeNodeWalker.java │ │ ├── INodeWalker.java │ │ ├── ITreeNodeWalker.java │ │ └── filters │ │ ├── INodeFilter.java │ │ ├── NodeIdFilter.java │ │ ├── NodeNameFilter.java │ │ ├── NodeTypeFilter.java │ │ └── NodeVisibilityFilter.java │ ├── resources │ ├── ClassLoaderCache.java │ ├── DefaultResourceLocator.java │ ├── EclipseResourceLocator.java │ └── IResourceLocator.java │ └── runtime │ ├── AbstractRuntimeContext.java │ ├── EclipseRuntimeContext.java │ ├── IRuntimeContext.java │ ├── RuntimeContextFactory.java │ └── StandaloneRuntimeContext.java ├── org.a11y.utils.accprobe.releng ├── .project ├── build.xml ├── buildAll.xml ├── builder │ └── accprobe │ │ ├── build.properties │ │ └── customTargets.xml ├── maps │ ├── accprobe.map │ └── build.cfg ├── org.a11y.utils.accprobe.releng.build │ ├── .classpath │ ├── .project │ ├── build.xml │ └── src │ │ └── org │ │ └── a11y │ │ └── utils │ │ └── accprobe │ │ └── releng │ │ └── build │ │ └── JavadocPackageListTask.java ├── repoInfo.properties ├── scripts │ ├── buildUpdate.sh │ ├── checkZipExists.xml │ ├── cleanupBuilds.sh │ ├── compareFolders.sh │ ├── executeCommand.sh │ ├── getCompilerResults.sh │ ├── getDependencies.xml │ ├── getDependenciesHelper.xml │ ├── javadoc.xml │ ├── javadoc.xsl │ ├── javadoctoc.xsl │ ├── readProperty.sh │ ├── removeCR.sh │ ├── renameBuild.sh │ └── start.sh └── templates │ ├── _hostname_.properties │ ├── build.xml │ ├── buildAll.xml │ ├── builder │ ├── runtime │ │ ├── build.properties │ │ └── customTargets.xml │ └── sdk │ │ ├── build.properties │ │ └── customTargets.xml │ └── maps │ ├── _subproject_.map │ └── build.cfg └── org.a11y.utils.accprobe ├── .classpath ├── .jazzignore ├── .project ├── .settings └── org.eclipse.jdt.core.prefs ├── Delivery └── .jazzignore ├── META-INF └── MANIFEST.MF ├── Mysplash.bmp ├── about.html ├── accprobe.product ├── autobuild.xml ├── build.properties ├── icons ├── accprobe.gif ├── clearLog.gif ├── collapseall.gif ├── event.gif ├── expand.gif ├── filter.gif ├── find.gif ├── methpro_obj.gif ├── properties.gif ├── refresh.gif ├── refresh_desktop.gif ├── resume.gif ├── sample2.gif ├── sample3.gif ├── search.gif ├── start.gif ├── stop.gif └── suspend.gif ├── logging.properties ├── plugin.properties ├── plugin.xml ├── product_customization.ini ├── product_lg.gif └── src └── org └── a11y └── utils └── accprobe ├── Activator.java ├── Application.java ├── GuiUtils.java ├── Perspective.java ├── actions ├── AbstractAction.java ├── AlwaysOnTopAction.java ├── CaretPositionAction.java ├── ClearEventLogAction.java ├── CollapseAllAction.java ├── EventFilterAction.java ├── EventViewPreferencesAction.java ├── ExpandWithTrackingAction.java ├── GlobalEventMonitoringAction.java ├── GlobalTrackingAction.java ├── HighlightSelectedAction.java ├── KeyboardFocusAction.java ├── MethodInvocationAction.java ├── MouseCursorAction.java ├── PauseEventDisplayAction.java ├── ProcessInContextAction.java ├── ProcessOutOfContextAction.java ├── PropertiesFilterAction.java ├── ReadDesktopAction.java ├── RefreshPropertyAction.java ├── ResetViewsAction.java ├── ResumeEventDisplayAction.java ├── SaveToFileAction.java ├── StartEventCaptureAction.java ├── StopEventCaptureAction.java └── SuspendAllAction.java ├── advisors ├── ApplicationActionBarAdvisor.java ├── ApplicationWorkbenchAdvisor.java └── ApplicationWorkbenchWindowAdvisor.java ├── dialogs ├── EventFilterDialog.java ├── EventViewPreferencesDialog.java ├── MethodInvocationDialog.java ├── PropertiesFilterDialog.java └── PropertiesSortDialog.java ├── filters └── PropertyFilter.java ├── providers ├── EventFilterLabelProvider.java ├── EventPreferencesLabelProvider.java ├── EventRecord.java ├── EventTableContentProvider.java ├── EventTableLabelProvider.java ├── ExplorerViewContentProvider.java ├── ExplorerViewLabelProvider.java ├── ExplorerViewNode.java ├── PropertiesFilterContentProvider.java ├── PropertiesFilterLabelProvider.java ├── PropertiesViewContentProvider.java ├── PropertiesViewLabelProvider.java └── PropertyGroup.java ├── sorters ├── AbstractViewerSorter.java ├── EventTableViewerSorter.java └── PropertyTableViewerSorter.java └── views ├── AbstractViewPart.java ├── EventMonitorView.java ├── ExplorerView.java ├── PartAdapter.java ├── PropertiesView.java └── ViewerControlAdapter.java /.gitignore: -------------------------------------------------------------------------------- 1 | *.class 2 | *.dll -------------------------------------------------------------------------------- /DCO1.1.txt: -------------------------------------------------------------------------------- 1 | Developer's Certificate of Origin 1.1 2 | 3 | By making a contribution to this project, I certify that: 4 | 5 | (a) The contribution was created in whole or in part by me and I 6 | have the right to submit it under the open source license 7 | indicated in the file; or 8 | 9 | (b) The contribution is based upon previous work that, to the best 10 | of my knowledge, is covered under an appropriate open source 11 | license and I have the right under that license to submit that 12 | work with modifications, whether created in whole or in part 13 | by me, under the same open source license (unless I am 14 | permitted to submit under a different license), as indicated 15 | in the file; or 16 | 17 | (c) The contribution was provided directly to me by some other 18 | person who certified (a), (b) or (c) and I have not modified 19 | it. 20 | 21 | (d) I understand and agree that this project and the contribution 22 | are public and that a record of the contribution (including all 23 | personal information I submit with it, including my sign-off) is 24 | maintained indefinitely and may be redistributed consistent with 25 | this project or the open source license(s) involved. 26 | -------------------------------------------------------------------------------- /clientdb.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe-feature/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.a11y.utils.accprobe-feature 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.pde.FeatureBuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.pde.FeatureNature 16 | 17 | 18 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe-feature/about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | About this Content 7 | 8 | 9 | 10 |

About This Content

11 |

March, 2010

12 | 13 |

License

14 | 15 |

Copyright (c) 2004, 2010 IBM Corporation.
16 | Copyright (c) 2010 Linux Foundation.

17 |

All rights reserved.

18 | 19 | 26 | 27 |

28 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 |

30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe-feature/build.properties: -------------------------------------------------------------------------------- 1 | bin.includes = feature.xml,\ 2 | about.html,\ 3 | desc.html,\ 4 | license.html,\ 5 | feature.properties 6 | root=rootfiles 7 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe-feature/license.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | About this Content 7 | 8 | 9 | 10 | 11 |

Copyright (c) 2004, 2010 IBM Corporation. 12 | Copyright (c) 2010 Linux Foundation.

13 |

All rights reserved.

14 | 15 | 22 | 23 |

24 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 |

26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe-feature/rootfiles/about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | About this Content 7 | 8 | 9 | 10 |

About This Content

11 |

March, 2010

12 | 13 |

License

14 | 15 |

Copyright (c) 2004, 2010 IBM Corporation.
16 | Copyright (c) 2010 Linux Foundation.

17 |

All rights reserved.

18 | 19 | 26 | 27 |

28 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 |

30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe-feature/rootfiles/license.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | About this Content 7 | 8 | 9 | 10 | 11 |

Copyright (c) 2004, 2010 IBM Corporation.
12 | Copyright (c) 2010 Linux Foundation.

13 |

All rights reserved.

14 | 15 | 22 | 23 |

24 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 |

26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.a11y.utils.accprobe.accservice.win32.ia2-fragment 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.ManifestBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.pde.SchemaBuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.pde.PluginNature 26 | org.eclipse.jdt.core.javanature 27 | 28 | 29 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | #Thu Jul 17 10:54:25 CDT 2008 2 | eclipse.preferences.version=1 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 4 | org.eclipse.jdt.core.compiler.compliance=1.5 5 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 6 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 7 | org.eclipse.jdt.core.compiler.source=1.5 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: %fragmentName 4 | Bundle-SymbolicName: org.a11y.utils.accprobe.accservice.win32.ia2;singleton:=true 5 | Bundle-Version: 1.2.0 6 | Bundle-Localization: fragment 7 | Bundle-ClassPath: a11y-accservice-ia2.jar 8 | Fragment-Host: org.a11y.utils.accprobe.accservice;bundle-version="1.2.0" 9 | Export-Package: org.a11y.utils.accprobe.accservice.adapt.win32.ia2;uses:="org.a11y.utils.accprobe.core.adapt", 10 | org.a11y.utils.accprobe.accservice.core.win32.ia2;uses:="org.a11y.utils.accprobe.core.model.events,org.a11y.utils.accprobe.accservice,org.a11y.utils.accprobe.accservice.core" 11 | Bundle-Vendor: %providerName 12 | Bundle-RequiredExecutionEnvironment: J2SE-1.5 13 | 14 | 15 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | About this Content 7 | 8 | 9 | 10 |

About This Content

11 |

March, 2010

12 | 13 |

License

14 | 15 |

Copyright (c) 2004, 2010 IBM Corporation.
16 | Copyright (c) 2010 Linux Foundation.

17 |

All rights reserved.

18 | 19 | 26 | 27 |

28 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 |

30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/bin-src/a11y_ia2.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe.accservice.win32.ia2-fragment/bin-src/a11y_ia2.suo -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/bin-src/org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | //#include "StdString.h" 4 | 5 | #include "org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2Accessible.h" 6 | 7 | 8 | /* Header for class org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication */ 9 | 10 | #ifndef _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication 11 | #define _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication 12 | #ifdef __cplusplus 13 | extern "C" { 14 | #endif 15 | /* 16 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication 17 | * Method: internalGetAccessibleApplicationName 18 | * Signature: ()Ljava/lang/String; 19 | */ 20 | JNIEXPORT jstring JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication_internalGetApplicationName 21 | (JNIEnv *, jobject); 22 | 23 | /* 24 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication 25 | * Method: internalGetAccessibleApplicationVersion 26 | * Signature: ()Ljava/lang/String; 27 | */ 28 | JNIEXPORT jstring JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication_internalGetApplicationVersion 29 | (JNIEnv *, jobject); 30 | 31 | /* 32 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication 33 | * Method: internalGetAccessibleToolkitName 34 | * Signature: ()Ljava/lang/String; 35 | */ 36 | JNIEXPORT jstring JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication_internalGetToolkitName 37 | (JNIEnv *, jobject); 38 | 39 | /* 40 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication 41 | * Method: internalGetAccessibleToolkitVersion 42 | * Signature: ()Ljava/lang/String; 43 | */ 44 | JNIEXPORT jstring JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleApplication_internalGetToolkitVersion 45 | (JNIEnv *, jobject); 46 | 47 | #ifdef __cplusplus 48 | } 49 | #endif 50 | #endif 51 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/bin-src/org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent.cpp: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include "org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent.h" 3 | 4 | 5 | IAccessibleComponent* GetRef( JNIEnv *env, jobject jca){ 6 | jclass cls = env->GetObjectClass(jca); 7 | jmethodID methID = env->GetMethodID(cls, "internalRef", "()I"); 8 | return (IAccessibleComponent*) env->CallIntMethod(jca, methID); 9 | } 10 | 11 | /* 12 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent 13 | * Method: internalGetLocation 14 | * Signature: ()[I 15 | */ 16 | JNIEXPORT jintArray JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent_internalGetLocation 17 | (JNIEnv * env, jobject jca) { 18 | IAccessibleComponent* ptr = GetRef(env,jca); 19 | long x=0; 20 | long y=0; 21 | HRESULT hr = ptr->get_locationInParent(&x, &y); 22 | if(hr!=S_OK){ 23 | putErrorCode(_T("locationInParent"), CAccessible::getHRESULTString(hr), env, jca); 24 | } 25 | if( SUCCEEDED(hr)) 26 | { 27 | jint loc[2]; 28 | loc[0] = x; 29 | loc[1] = y; 30 | jintArray jarray = env->NewIntArray(2); 31 | env->SetIntArrayRegion(jarray,0,2,loc); 32 | return jarray; 33 | } 34 | return 0; 35 | } 36 | 37 | /* 38 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent 39 | * Method: internalGetForeground 40 | * Signature: ()I 41 | */ 42 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent_internalGetForeground 43 | (JNIEnv * env, jobject jca) { 44 | IAccessibleComponent* ptr = GetRef(env,jca); 45 | long fGround=0xDEADBEEF; 46 | HRESULT hr = ptr->get_foreground(&fGround); 47 | if(hr!=S_OK){ 48 | putErrorCode(_T("foreground"), CAccessible::getHRESULTString(hr), env, jca); 49 | } 50 | return (int)fGround; 51 | } 52 | 53 | /* 54 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent 55 | * Method: internalGetBackground 56 | * Signature: ()I 57 | */ 58 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent_internalGetBackground 59 | (JNIEnv * env, jobject jca) { 60 | IAccessibleComponent* ptr = GetRef(env,jca); 61 | long bGround=0xDEADBEEF; 62 | HRESULT hr = ptr->get_background(&bGround); 63 | if(hr!=S_OK){ 64 | putErrorCode(_T("background"), CAccessible::getHRESULTString(hr), env, jca); 65 | } 66 | return (int)bGround; 67 | } -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/bin-src/org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | //#include "StdString.h" 4 | 5 | #include "org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2Accessible.h" 6 | 7 | /* Header for class org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent */ 8 | 9 | #ifndef _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent 10 | #define _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent 11 | #ifdef __cplusplus 12 | extern "C" { 13 | #endif 14 | /* 15 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent 16 | * Method: internalGetLocation 17 | * Signature: ()[I 18 | */ 19 | JNIEXPORT jintArray JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent_internalGetLocation 20 | (JNIEnv *, jobject); 21 | 22 | /* 23 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent 24 | * Method: internalGetForeground 25 | * Signature: ()I 26 | */ 27 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent_internalGetForeground 28 | (JNIEnv *, jobject); 29 | 30 | /* 31 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent 32 | * Method: internalGetBackground 33 | * Signature: ()I 34 | */ 35 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleComponent_internalGetBackground 36 | (JNIEnv *, jobject); 37 | 38 | #ifdef __cplusplus 39 | } 40 | #endif 41 | #endif 42 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/bin-src/org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | //#include "StdString.h" 4 | 5 | #include "org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2Accessible.h" 6 | 7 | /* Header for class org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink */ 8 | 9 | #ifndef _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink 10 | #define _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink 11 | #ifdef __cplusplus 12 | extern "C" { 13 | #endif 14 | /* 15 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink 16 | * Method: internalGetAccessibleAnchor 17 | * Signature: (I)Ljava/lang/String; 18 | */ 19 | JNIEXPORT jobject JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink_internalGetAnchor 20 | (JNIEnv *, jobject, jint); 21 | 22 | /* 23 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink 24 | * Method: internalGetAccessibleAnchorTarget 25 | * Signature: (I)Ljava/lang/String; 26 | */ 27 | JNIEXPORT jobject JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink_internalGetAnchorTarget 28 | (JNIEnv *, jobject, jint); 29 | 30 | /* 31 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink 32 | * Method: internalGetStartIndex 33 | * Signature: ()I 34 | */ 35 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink_internalGetStartIndex 36 | (JNIEnv *, jobject); 37 | 38 | /* 39 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink 40 | * Method: internalGetEndIndex 41 | * Signature: ()I 42 | */ 43 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink_internalGetEndIndex 44 | (JNIEnv *, jobject); 45 | 46 | /* 47 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink 48 | * Method: internalIsValid 49 | * Signature: ()Z 50 | */ 51 | JNIEXPORT jboolean JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHyperlink_internalIsValid 52 | (JNIEnv *, jobject); 53 | 54 | #ifdef __cplusplus 55 | } 56 | #endif 57 | #endif 58 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/bin-src/org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext.cpp: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include "org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext.h" 3 | 4 | 5 | IAccessibleHypertext* GetRef( JNIEnv *env, jobject jca){ 6 | jclass cls = env->GetObjectClass(jca); 7 | jmethodID methID = env->GetMethodID(cls, "internalRef", "()I"); 8 | return (IAccessibleHypertext*) env->CallIntMethod(jca, methID); 9 | } 10 | 11 | /* 12 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext 13 | * Method: internalGetHyperlinkCount 14 | * Signature: ()I 15 | */ 16 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext_internalGetHyperlinkCount 17 | (JNIEnv * env, jobject jca) { 18 | IAccessibleHypertext* ptr = GetRef(env,jca); 19 | long ct=0; 20 | HRESULT hr = ptr->get_nHyperlinks(&ct); 21 | if(hr!=S_OK){ 22 | putErrorCode(_T("hyperlinkCount"), CAccessible::getHRESULTString(hr), env, jca); 23 | } 24 | return ct; 25 | } 26 | 27 | /* 28 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext 29 | * Method: internalGetHyperlink 30 | * Signature: (I)I 31 | */ 32 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext_internalGetHyperlink 33 | (JNIEnv * env, jobject jca, jint x) { 34 | IAccessibleHypertext* ptr = GetRef(env,jca); 35 | IAccessibleHyperlink* hLink = NULL; 36 | HRESULT hr = ptr->get_hyperlink(x, &hLink); 37 | if(hr!=S_OK){ 38 | putErrorCode(_T("hyperlink"), CAccessible::getHRESULTString(hr), env, jca); 39 | } 40 | return (int)hLink; 41 | } 42 | 43 | /* 44 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext 45 | * Method: internalGetHyperlinkIndex 46 | * Signature: (I)I 47 | */ 48 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext_internalGetHyperlinkIndex 49 | (JNIEnv * env, jobject jca, jint x) { 50 | IAccessibleHypertext* ptr = GetRef(env,jca); 51 | long hLinkIndex = 0; 52 | HRESULT hr = ptr->get_hyperlinkIndex(x, &hLinkIndex); 53 | if(hr!=S_OK){ 54 | putErrorCode(_T("hyperlinkIndex"), CAccessible::getHRESULTString(hr), env, jca); 55 | } 56 | return (int)hLinkIndex; 57 | } -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/bin-src/org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | //#include "StdString.h" 4 | 5 | #include "org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2Accessible.h" 6 | 7 | /* Header for class org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext */ 8 | 9 | #ifndef _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext 10 | #define _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext 11 | #ifdef __cplusplus 12 | extern "C" { 13 | #endif 14 | /* 15 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext 16 | * Method: internalGetHyperlinkCount 17 | * Signature: ()I 18 | */ 19 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext_internalGetHyperlinkCount 20 | (JNIEnv *, jobject); 21 | 22 | /* 23 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext 24 | * Method: internalGetHyperlink 25 | * Signature: (I)I 26 | */ 27 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext_internalGetHyperlink 28 | (JNIEnv *, jobject, jint); 29 | 30 | /* 31 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext 32 | * Method: internalGetHyperlinkIndex 33 | * Signature: (I)I 34 | */ 35 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleHypertext_internalGetHyperlinkIndex 36 | (JNIEnv *, jobject, jint); 37 | 38 | #ifdef __cplusplus 39 | } 40 | #endif 41 | #endif 42 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/bin-src/org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | //#include "StdString.h" 4 | 5 | #include "org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2Accessible.h" 6 | 7 | 8 | /* Header for class org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage */ 9 | 10 | #ifndef _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage 11 | #define _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage 12 | #ifdef __cplusplus 13 | extern "C" { 14 | #endif 15 | /* 16 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage 17 | * Method: internalGetAccessibleImageDescription 18 | * Signature: ()Ljava/lang/String; 19 | */ 20 | JNIEXPORT jstring JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage_internalGetImageDescription 21 | (JNIEnv *, jobject); 22 | 23 | /* 24 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage 25 | * Method: internalGetAccessibleImageHeight 26 | * Signature: ()I 27 | */ 28 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage_internalGetImageHeight 29 | (JNIEnv *, jobject); 30 | 31 | /* 32 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage 33 | * Method: internalGetAccessibleImageWidth 34 | * Signature: ()I 35 | */ 36 | JNIEXPORT jint JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage_internalGetImageWidth 37 | (JNIEnv *, jobject); 38 | 39 | /* 40 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage 41 | * Method: internalGetImagePosition 42 | * Signature: (I)Ljava/awt/Point; 43 | */ 44 | JNIEXPORT jobject JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleImage_internalGetImagePosition 45 | (JNIEnv * env, jobject jca, jint type); 46 | 47 | #ifdef __cplusplus 48 | } 49 | #endif 50 | #endif 51 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/bin-src/org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | //#include "StdString.h" 4 | 5 | #include "org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2Accessible.h" 6 | 7 | /* Header for class org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue */ 8 | 9 | #ifndef _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue 10 | #define _Included_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue 11 | #ifdef __cplusplus 12 | extern "C" { 13 | #endif 14 | /* 15 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue 16 | * Method: internalGetCurrentAccessibleValue 17 | * Signature: ()Ljava/lang/String; 18 | */ 19 | JNIEXPORT jobject JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue_internalGetCurrentValue 20 | (JNIEnv *, jobject); 21 | 22 | /* 23 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue 24 | * Method: internalSetCurrentAccessibleValue 25 | * Signature: (Ljava/lang/String;)Z 26 | */ 27 | JNIEXPORT jboolean JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue_internalSetCurrentAccessibleValue 28 | (JNIEnv *, jobject, jlong, jstring); 29 | 30 | /* 31 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue 32 | * Method: internalGetAccessibleValueMax 33 | * Signature: ()Ljava/lang/String; 34 | */ 35 | JNIEXPORT jobject JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue_internalGetValueMax 36 | (JNIEnv *, jobject); 37 | 38 | /* 39 | * Class: org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue 40 | * Method: internalGetAccessibleValueMin 41 | * Signature: ()Ljava/lang/String; 42 | */ 43 | JNIEXPORT jobject JNICALL Java_org_a11y_utils_accprobe_accservice_core_win32_ia2_IA2AccessibleValue_internalGetValueMin 44 | (JNIEnv *, jobject); 45 | 46 | #ifdef __cplusplus 47 | } 48 | #endif 49 | #endif 50 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/build.properties: -------------------------------------------------------------------------------- 1 | javacSource = 1.5 2 | javacTarget = 1.5 3 | bin.includes = META-INF/,\ 4 | a11y-accservice-ia2.jar,\ 5 | about.html,\ 6 | a11y-ia2.dll,\ 7 | IAccessible2Proxy.dll,\ 8 | fragment.properties,\ 9 | fragment.xml 10 | jars.compile.order = a11y-accservice-ia2.jar 11 | source.a11y-accservice-ia2.jar = src/ 12 | output.a11y-accservice-ia2.jar = bin/ 13 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/fragment.properties: -------------------------------------------------------------------------------- 1 | fragmentName=Accessibility Service IAccessible2 Fragment 2 | providerName=IBM 3 | aboutText=\n\nIAccessible2 Fragment\n\ 4 | Version: 1.0.1\n\ 5 | Build: {0}\n\ 6 | \n\ 7 | (c) Copyright IBM 2007, 2010. All rights reserved.\n\ 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 7 | 12 | 13 | 14 | 16 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/src/org/a11y/utils/accprobe/accservice/adapt/win32/ia2/IA2AccessibilityAdaptor.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.accservice.adapt.win32.ia2; 9 | 10 | import org.a11y.utils.accprobe.core.adapt.IAdaptor; 11 | 12 | /** 13 | * Implementation for the IA2 Accesibility IAdaptor. 14 | * 15 | * @author Mike Smith 16 | */ 17 | public class IA2AccessibilityAdaptor implements IAdaptor 18 | { 19 | 20 | private static final Class[] ADAPTABLE_IA2_TYPES = new Class[] {}; 21 | 22 | /** {@inheritDoc} */ 23 | public Class[] getSupportedTypes () { 24 | return ADAPTABLE_IA2_TYPES; 25 | } 26 | 27 | /** {@inheritDoc} */ 28 | public Object adapt (Object o, Class type) throws Exception { 29 | Object result = null; 30 | return result; 31 | } 32 | /** {@inheritDoc} */ 33 | /* 34 | public NodeSynchronizer getNodeSynchronizer () 35 | { 36 | return new SwingAccessibilityNodeSynchronizer(); 37 | } 38 | */ 39 | } 40 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/src/org/a11y/utils/accprobe/accservice/core/win32/ia2/IA2AccessibleComponent.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.accservice.core.win32.ia2; 9 | 10 | import java.awt.Point; 11 | 12 | import org.a11y.utils.accprobe.accservice.core.win32.msaa.MsaaAccessible; 13 | import org.a11y.utils.accprobe.core.model.InvalidComponentException; 14 | 15 | 16 | /** 17 | * 18 | * @see IA2Accessible 19 | * @see IA2Accessible#getAccessibleComponent 20 | * 21 | * @author Kavitha Teegala 22 | */ 23 | public class IA2AccessibleComponent extends IA2AccessibleElement 24 | { 25 | 26 | // This reference is used to ensure that the IA2Accessible parent 27 | // does not go out of scope while this class exists. When IA2Accessible 28 | // goes out of scope the accRef will be disposed 29 | private IA2Accessible _parent = null; 30 | 31 | private int _accRef; 32 | 33 | /** 34 | * Constructor used to create an accessible image object 35 | * @param val 36 | * @param parent IA2Accessible parent of this object 37 | */ 38 | public IA2AccessibleComponent(int val, IA2Accessible parent) { 39 | _accRef = val; 40 | _parent = parent; 41 | } 42 | 43 | /** 44 | * used by native code only. Clients should not call directly. 45 | * @return ptr address for native object 46 | */ 47 | public int internalRef () { 48 | return _accRef; 49 | } 50 | 51 | /** 52 | * used before each public method call to confirm that 53 | * this object is valid and can return correct information 54 | * @throws InvalidComponentException 55 | */ 56 | private void checkIsValid () throws InvalidComponentException { 57 | if (_accRef == 0 || _parent == null) { throw new InvalidComponentException("Invalid accessible image"); } 58 | } 59 | 60 | public Point getLocationInParent() { 61 | Point P = null; 62 | int[] pArray = internalGetLocation(); 63 | if(pArray!=null && pArray.length>0){ 64 | P = new Point(pArray[0], pArray[1]); 65 | } 66 | return P; 67 | } 68 | protected native int[] internalGetLocation(); 69 | 70 | public Object getForeground() { 71 | int res = internalGetForeground(); 72 | return MsaaAccessible.getHex(res); 73 | } 74 | protected native int internalGetForeground(); 75 | 76 | public Object getBackground() { 77 | int res = internalGetBackground(); 78 | return MsaaAccessible.getHex(res); 79 | } 80 | protected native int internalGetBackground(); 81 | } 82 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/src/org/a11y/utils/accprobe/accservice/core/win32/ia2/IA2AccessibleElement.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | * 4 | * 5 | * 6 | * 7 | * 8 | * Contributors: 9 | * IBM Corporation - initial API and implementation 10 | *******************************************************************************/ 11 | 12 | package org.a11y.utils.accprobe.accservice.core.win32.ia2; 13 | 14 | import java.util.HashMap; 15 | import java.util.Map; 16 | 17 | public class IA2AccessibleElement { 18 | 19 | protected Map errorCodeReturnMap = new HashMap(); 20 | public static String errString = "HRESULT = "; 21 | 22 | protected void putErrorCode(String key, String value){ 23 | if(errorCodeReturnMap!=null){ 24 | if(!errorCodeReturnMap.containsKey(key)) 25 | errorCodeReturnMap.put(key, errString.concat(value) ); 26 | } 27 | } 28 | public Map errorCodeMap(){ 29 | return errorCodeReturnMap; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/src/org/a11y/utils/accprobe/accservice/core/win32/ia2/IA2RowColumnExtents.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.accservice.core.win32.ia2; 8 | 9 | public class IA2RowColumnExtents { 10 | 11 | public int row; 12 | public int column; 13 | public int rowExtents; 14 | public int columnExtents; 15 | public boolean isSelected; 16 | 17 | public IA2RowColumnExtents(int row, int column, int rowExtents, int columnExtents, boolean isSelected) { 18 | this.row = row; 19 | this.column = column; 20 | this.rowExtents = rowExtents; 21 | this.columnExtents = columnExtents; 22 | this.isSelected = isSelected; 23 | } 24 | 25 | public String toString(){ 26 | return getClass().getSimpleName() + "[row=" + row + ",col="+ 27 | column + ",rowExtents=" +rowExtents 28 | +",colExtents=" + columnExtents 29 | +",isSel=" + isSelected; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/src/org/a11y/utils/accprobe/accservice/core/win32/ia2/IA2TableModelChange.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.accservice.core.win32.ia2; 8 | 9 | public class IA2TableModelChange { 10 | public int type; 11 | public int firstRow; 12 | public int lastRow; 13 | public int firstColumn; 14 | public int lastColumn; 15 | 16 | public IA2TableModelChange(int type, int firstRow, int lastRow, int firstColumn, int lastColumn) { 17 | this.type = type; 18 | this.firstRow = firstRow; 19 | this.lastRow = lastRow; 20 | this.firstColumn = firstColumn; 21 | this.lastColumn = lastColumn; 22 | } 23 | 24 | public String toString(){ 25 | return getClass().getName() + "[type=" + type +",frow=" + 26 | firstRow + ",fcol="+ 27 | firstColumn + ",lrow=" +lastRow 28 | +",lcol=" + lastColumn; 29 | 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/src/org/a11y/utils/accprobe/accservice/core/win32/ia2/IA2TextSegment.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.accservice.core.win32.ia2; 9 | 10 | /** 11 | * @author kteegala 12 | * 13 | */ 14 | 15 | public class IA2TextSegment { 16 | 17 | public String text; 18 | public int start; 19 | public int end; 20 | 21 | public IA2TextSegment() { 22 | } 23 | 24 | public IA2TextSegment(String text, int start, int end) { 25 | this.text = text; 26 | this.start = start; 27 | this.end = end; 28 | } 29 | 30 | public int getEnd() { 31 | return end; 32 | } 33 | 34 | public int getStart() { 35 | return start; 36 | } 37 | 38 | public String getText() { 39 | return text; 40 | } 41 | 42 | public String toString(){ 43 | return getClass().getSimpleName() + "[text=" +text + ",start=" + start + ",end=" + end + "]"; 44 | } 45 | 46 | } 47 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.ia2-fragment/src/org/a11y/utils/accprobe/accservice/core/win32/ia2/IA2WindowService.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.accservice.core.win32.ia2; 10 | 11 | import org.a11y.utils.accprobe.accservice.core.win32.msaa.MsaaAccessible; 12 | import org.a11y.utils.accprobe.accservice.core.win32.msaa.MsaaWindowService; 13 | import org.a11y.utils.accprobe.core.model.InvalidComponentException; 14 | 15 | 16 | /** 17 | * @author 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.msaa-fragment/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.a11y.utils.accprobe.accservice.win32.msaa-fragment 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.ManifestBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.pde.SchemaBuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.pde.PluginNature 26 | org.eclipse.jdt.core.javanature 27 | 28 | 29 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.msaa-fragment/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | #Thu Jul 17 10:55:21 CDT 2008 2 | eclipse.preferences.version=1 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 4 | org.eclipse.jdt.core.compiler.compliance=1.5 5 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 6 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 7 | org.eclipse.jdt.core.compiler.source=1.5 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.msaa-fragment/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: %fragmentName 4 | Bundle-SymbolicName: org.a11y.utils.accprobe.accservice.win32.msaa;singleton:=true 5 | Bundle-Version: 1.2.0 6 | Bundle-Vendor: %providerName 7 | Bundle-Localization: fragment 8 | Bundle-ClassPath: a11y-accservice-msaa.jar 9 | Fragment-Host: org.a11y.utils.accprobe.accservice;bundle-version="1.2.0" 10 | Export-Package: org.a11y.utils.accprobe.accservice.adapt.win32.msaa;uses:="org.a11y.utils.accprobe.core.adapt", 11 | org.a11y.utils.accprobe.accservice.core.win32.msaa; 12 | uses:="org.a11y.utils.accprobe.core.model.events, 13 | org.a11y.utils.accprobe.accservice.event, 14 | org.a11y.utils.accprobe.accservice, 15 | org.a11y.utils.accprobe.core.model, 16 | org.a11y.utils.accprobe.core.model.locate, 17 | org.a11y.utils.accprobe.accservice.core" 18 | Bundle-RequiredExecutionEnvironment: J2SE-1.5 19 | 20 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.msaa-fragment/about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | About this Content 7 | 8 | 9 | 10 |

About This Content

11 |

March, 2010

12 | 13 |

License

14 | 15 |

Copyright (c) 2004, 2010 IBM Corporation.
16 | Copyright (c) 2010 Linux Foundation.

17 |

All rights reserved.

18 | 19 |
    20 |
  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • 21 | 22 |
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • 23 | 24 |
  • Neither the name of IBM Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
  • 25 |
26 | 27 |

28 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 |

30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.msaa-fragment/bin-src/a11y-msaa.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe.accservice.win32.msaa-fragment/bin-src/a11y-msaa.suo -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.msaa-fragment/build.properties: -------------------------------------------------------------------------------- 1 | javacSource = 1.5 2 | javacTarget = 1.5 3 | bin.includes = META-INF/,\ 4 | a11y-accservice-msaa.jar,\ 5 | about.html,\ 6 | a11y-msaa.dll,\ 7 | fragment.properties,\ 8 | fragment.xml 9 | jars.compile.order = a11y-accservice-msaa.jar 10 | source.a11y-accservice-msaa.jar = src/ 11 | output.a11y-accservice-msaa.jar = bin/ 12 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.msaa-fragment/fragment.properties: -------------------------------------------------------------------------------- 1 | fragmentName=A11Y Accessibility Services MSAA Fragment 2 | providerName=IBM 3 | aboutText=\n\nMSAA Fragment\n\ 4 | Version: 1.0.1\n\ 5 | Build: {0}\n\ 6 | \n\ 7 | (c) Copyright IBM 2007, 2010. All rights reserved.\n\ 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.msaa-fragment/fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 13 | 14 | 15 | 17 | 22 | 23 | 24 | 26 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice.win32.msaa-fragment/src/org/a11y/utils/accprobe/accservice/adapt/win32/msaa/MsaaAccessibilityAdaptor.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.accservice.adapt.win32.msaa; 9 | 10 | import org.a11y.utils.accprobe.core.adapt.IAdaptor; 11 | 12 | /** 13 | * Implementation for the Msaa Accesibility IAdaptor. 14 | * 15 | * @author Mike Smith 16 | */ 17 | public class MsaaAccessibilityAdaptor implements IAdaptor 18 | { 19 | 20 | private static final Class[] ADAPTABLE_MSAA_TYPES = new Class[] {}; 21 | 22 | /** {@inheritDoc} */ 23 | public Class[] getSupportedTypes () { 24 | return ADAPTABLE_MSAA_TYPES; 25 | } 26 | 27 | /** {@inheritDoc} */ 28 | public Object adapt (Object o, Class type) throws Exception { 29 | Object result = null; 30 | return result; 31 | } 32 | /** {@inheritDoc} */ 33 | /* 34 | public NodeSynchronizer getNodeSynchronizer () 35 | { 36 | return new SwingAccessibilityNodeSynchronizer(); 37 | } 38 | */ 39 | } 40 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.a11y.utils.accprobe.accservice 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.ManifestBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.pde.SchemaBuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.pde.PluginNature 26 | org.eclipse.jdt.core.javanature 27 | 28 | 29 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | #Thu Jul 17 10:53:07 CDT 2008 2 | eclipse.preferences.version=1 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 4 | org.eclipse.jdt.core.compiler.compliance=1.5 5 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 6 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 7 | org.eclipse.jdt.core.compiler.source=1.5 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: %pluginName 4 | Bundle-SymbolicName: org.a11y.utils.accprobe.accservice;singleton:=true 5 | Bundle-Version: 1.2.0.qualifier 6 | Bundle-Activator: org.a11y.utils.accprobe.accservice.core.AccessibilityServicePlugin 7 | Bundle-Vendor: %providerName 8 | Bundle-Localization: plugin 9 | Bundle-ClassPath: . 10 | Require-Bundle: org.eclipse.core.runtime, 11 | org.apache.commons.jxpath, 12 | org.a11y.utils.accprobe.core;bundle-version="1.2.0" 13 | Eclipse-LazyStart: true 14 | Eclipse-ExtensibleAPI: true 15 | Export-Package: org.a11y.utils.accprobe.accservice, 16 | org.a11y.utils.accprobe.accservice.core, 17 | org.a11y.utils.accprobe.accservice.event, 18 | org.a11y.utils.accprobe.accservice.locate 19 | Bundle-RequiredExecutionEnvironment: J2SE-1.5 20 | Bundle-ActivationPolicy: lazy 21 | Import-Package: org.a11y.utils.accprobe.core.model, 22 | org.a11y.utils.accprobe.core.logging, 23 | org.a11y.utils.accprobe.core.model.events 24 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | About this Content 7 | 8 | 9 | 10 |

About This Content

11 |

March, 2010

12 | 13 |

License

14 | 15 |

Copyright (c) 2004, 2010 IBM Corporation.
16 | Copyright (c) 2010 Linux Foundation.

17 |

All rights reserved.

18 | 19 |
    20 |
  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • 21 | 22 |
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • 23 | 24 |
  • Neither the name of IBM Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
  • 25 |
26 | 27 |

28 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 |

30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/build.properties: -------------------------------------------------------------------------------- 1 | source.. = src/ 2 | output.. = bin/ 3 | javacSource = 1.5 4 | javacTarget = 1.5 5 | bin.includes = META-INF/,\ 6 | .,\ 7 | about.html,\ 8 | plugin.properties,\ 9 | plugin.xml,\ 10 | schema/ 11 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/plugin.properties: -------------------------------------------------------------------------------- 1 | pluginName=Accessibility Service Plug-in 2 | providerName=IBM 3 | aboutText=\n\nAccessibility Services Plug-in\n\ 4 | Version: 1.0.1\n\ 5 | Build: {0}\n\ 6 | \n\ 7 | (c) Copyright IBM 2007, 2010. All rights reserved.\n\ 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/src/org/a11y/utils/accprobe/accservice/AccessibilityServiceException.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.accservice; 10 | 11 | public class AccessibilityServiceException extends Exception 12 | { 13 | 14 | /** 15 | * 16 | */ 17 | private static final long serialVersionUID = 1L; 18 | 19 | public AccessibilityServiceException (final String message) { 20 | super(message); 21 | } 22 | 23 | public AccessibilityServiceException (final Throwable cause) { 24 | this(cause.getMessage() == null ? "" : cause.getMessage(), cause); 25 | } 26 | 27 | public AccessibilityServiceException (final String message, final Throwable cause) { 28 | super(message, cause); 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/src/org/a11y/utils/accprobe/accservice/IAccessibilityEventService.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.accservice; 9 | 10 | import java.io.Serializable; 11 | 12 | import org.a11y.utils.accprobe.core.model.events.IModelEventListener; 13 | 14 | 15 | public interface IAccessibilityEventService extends Serializable 16 | { 17 | static final long serialVersionUID = -8127562007783656376L; 18 | /** 19 | * add a listener to be notified of accessibility events 20 | * 21 | * @param listener 22 | * @param eventTypes type of event (which may be null for some 23 | * accessibility event APIs that do not support such functionality) 24 | */ 25 | public void addAccessibilityEventListener (IModelEventListener listener, Object[] eventTypes, Object[] params); 26 | 27 | /** 28 | * remove a previously added listener 29 | * 30 | * @param listener 31 | * @param eventTypes 32 | */ 33 | public void removeAccessibilityEventListener (IModelEventListener listener, Object[] eventTypes); 34 | 35 | } 36 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/src/org/a11y/utils/accprobe/accservice/IWindowService.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.accservice; 10 | 11 | import java.io.Serializable; 12 | 13 | import org.a11y.utils.accprobe.accservice.event.TopLevelWindowEventListener; 14 | 15 | /** 16 | * a service for functionality related to whatever objects constitute top-level windows of the 17 | * native desktop. 18 | * 19 | * @author
Mike Squillace 20 | * 21 | */ 22 | public interface IWindowService extends Serializable 23 | { 24 | 25 | 26 | /** 27 | * retreave all top-level windows from whatever object is considered to be the underlying platform's desktop. 28 | * 29 | * @return array of top-level windows or an empty array if unavailable 30 | */ 31 | public Object[] getTopLevelWindows (); 32 | 33 | /** 34 | * get the active or current window. This is the window that has keyboard focus andis the 35 | * subject of processes in the framework (e.g. inspection, validation). 36 | * 37 | * @return active or current window 38 | */ 39 | public Object getActiveWindow (); 40 | 41 | /** 42 | * get the process id with which the given window is associated 43 | * 44 | * @param window window for which process id is desired 45 | * @return process id for given window or -1 if no id can be obtained 46 | */ 47 | public int getProcessId (Object window); 48 | 49 | /** 50 | * 51 | * @return process id 52 | */ 53 | public int getCurrentProcessId (); 54 | 55 | /** 56 | * add a listener to be notified of the creation or destruction of top-level windows 57 | * 58 | * @param listener 59 | */ 60 | public void addTopLevelWindowListener (TopLevelWindowEventListener listener); 61 | 62 | /** 63 | * remove the listener previously added via addTopLevelWindowListener 64 | * 65 | * @param listener 66 | * @see #addTopLevelWindowListener(TopLevelWindowEventListener) 67 | */ 68 | public void removeTopLevelWindowListener (TopLevelWindowEventListener listener); 69 | 70 | /** 71 | * sets the given window as the activeWindow 72 | * 73 | * @param window to be set as active 74 | */ 75 | public void setActiveWindow(Object window); 76 | 77 | } 78 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/src/org/a11y/utils/accprobe/accservice/core/AccessibleElementTreeWalker.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | * 4 | * 5 | * 6 | * 7 | * 8 | * Contributors: 9 | * IBM Corporation - initial API and implementation 10 | *******************************************************************************/ 11 | 12 | package org.a11y.utils.accprobe.accservice.core; 13 | 14 | import org.a11y.utils.accprobe.core.model.InvalidComponentException; 15 | import org.a11y.utils.accprobe.core.model.traverse.AbstractTreeNodeWalker; 16 | 17 | 18 | /** 19 | * implementation of TreeWalker for walking a tree of IAccessibleElement 0; 67 | } 68 | 69 | public Object[] getStartNodes () { 70 | return new Object[0]; 71 | } 72 | } 73 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/src/org/a11y/utils/accprobe/accservice/core/AccessibleNodeItemFilter.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.accservice.core; 8 | 9 | import org.a11y.utils.accprobe.core.model.InvalidComponentException; 10 | import org.a11y.utils.accprobe.core.model.traverse.filters.INodeFilter; 11 | 12 | 13 | /** 14 | * This filter will exclude items. 15 | * If you wish to show all items, 16 | * remove it, or do not set it in the first place. 17 | * @author annford 18 | * 19 | */ 20 | public class AccessibleNodeItemFilter implements INodeFilter 21 | { 22 | 23 | public boolean pass (Object node) { 24 | boolean item = false; 25 | if (node instanceof IAccessibleElement){ 26 | IAccessibleElement acc = (IAccessibleElement)node; 27 | try { 28 | String role = acc.getAccessibleRole(); 29 | if (role != null) { 30 | item = role.indexOf(AccessibleConstants.ROLE_LIST_ITEM) >= 0 31 | || role.indexOf(AccessibleConstants.ROLE_MENU_ITEM) >= 0 32 | || role.indexOf(AccessibleConstants.ROLE_TREEITEM) >= 0 33 | || role.indexOf(AccessibleConstants.ROLE_TABITEM) >= 0; 34 | } 35 | }catch (InvalidComponentException e) { 36 | } 37 | } 38 | return !item; 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/src/org/a11y/utils/accprobe/accservice/core/AccserviceRegistryChangeListener.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | * 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.accservice.core; 8 | 9 | import org.a11y.utils.accprobe.accservice.AccessibilityServiceException; 10 | import org.a11y.utils.accprobe.accservice.AccessibilityServiceManager; 11 | import org.eclipse.core.runtime.IConfigurationElement; 12 | import org.eclipse.core.runtime.IExtension; 13 | import org.eclipse.core.runtime.IExtensionDelta; 14 | import org.eclipse.core.runtime.IExtensionPoint; 15 | import org.eclipse.core.runtime.IRegistryChangeEvent; 16 | import org.eclipse.core.runtime.IRegistryChangeListener; 17 | 18 | public class AccserviceRegistryChangeListener implements 19 | IRegistryChangeListener { 20 | 21 | protected AccessibilityServiceManager asManager; 22 | 23 | public static final String ACCSERVICE_EXTENSION_POINT = "accservices"; 24 | public static final String namespace = AccessibilityServicePlugin.ACCCORE_PLUGIN_ID; 25 | 26 | 27 | public AccserviceRegistryChangeListener() { 28 | super(); 29 | } 30 | 31 | public void registryChanged(IRegistryChangeEvent event) { 32 | IExtensionDelta[] deltas = event.getExtensionDeltas(namespace); 33 | for (int i = 0; i < deltas.length; i++) { 34 | IExtensionPoint point = deltas[i].getExtensionPoint(); 35 | String id = point.getSimpleIdentifier(); 36 | if (id.equals(ACCSERVICE_EXTENSION_POINT)) { 37 | try { 38 | asManager = AccessibilityServiceManager 39 | .getInstance(); 40 | } catch (AccessibilityServiceException e) { 41 | // TODO Auto-generated catch block 42 | e.printStackTrace(); 43 | } 44 | IExtension[] extensions = point.getExtensions(); 45 | for (int j = 0; j < extensions.length; j++) { 46 | IConfigurationElement[] elements = extensions[j] 47 | .getConfigurationElements(); 48 | for (int k = 0; k < elements.length; k++) { 49 | String name = elements[k].getAttribute("name"); 50 | String classname = elements[k].getAttribute("class"); 51 | asManager.registerAccessibilityService(name, classname); 52 | } 53 | } 54 | } 55 | } 56 | } 57 | 58 | } 59 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/src/org/a11y/utils/accprobe/accservice/core/IAccessibleImageElement.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.accservice.core; 9 | 10 | import org.a11y.utils.accprobe.core.model.InvalidComponentException; 11 | 12 | /** 13 | * Interface for exposing accessibility-related properties of images to the validation engine. 14 | * 15 | * @see IAccessibleElement2 16 | * @author Mike Smith 17 | */ 18 | public interface IAccessibleImageElement 19 | { 20 | 21 | /** 22 | * get the description for the accessible image 23 | * 24 | * @return image description or an empty string if no description is provided 25 | * @throws InvalidComponentException 26 | */ 27 | public String getDescription () throws InvalidComponentException; 28 | 29 | /** 30 | * get the height for the accessible image 31 | * 32 | * @return image height or zero if no height is provided 33 | * @throws InvalidComponentException 34 | */ 35 | public int getHeight () throws InvalidComponentException; 36 | 37 | /** 38 | * get the width for the accessible image 39 | * 40 | * @return image width or zerog if no width is provided 41 | * @throws InvalidComponentException 42 | */ 43 | public int getWidth () throws InvalidComponentException; 44 | } 45 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/src/org/a11y/utils/accprobe/accservice/core/IAccessibleTextElement.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.accservice.core; 9 | 10 | import org.a11y.utils.accprobe.core.model.InvalidComponentException; 11 | 12 | /** 13 | * Interface for exposing accessibility-related properties of text components to the validation engine. 14 | * 15 | * @see IAccessibleElement2 16 | * @author Mike Smith 17 | */ 18 | public interface IAccessibleTextElement 19 | { 20 | 21 | /** 22 | * get the offset of the caret for the accessible text object 23 | * 24 | * @return caret offset 25 | * @throws InvalidComponentException 26 | */ 27 | public long getCaretOffset () throws InvalidComponentException; 28 | 29 | /** 30 | * get the attributes at the specified offset of the text 31 | * 32 | * @param offset zero index of caret offset 33 | * @return attributes or an empty string if no description is provided 34 | * @throws InvalidComponentException 35 | */ 36 | public Object getAttributes (long offset) throws InvalidComponentException; 37 | 38 | /** 39 | * get number of active non-contiguous selections 40 | * 41 | * @return the number of selections 42 | * @throws InvalidComponentException 43 | */ 44 | public long getnSelections () throws InvalidComponentException; 45 | 46 | /** 47 | * get the text of the selected object 48 | * 49 | * @param index zero index of selected text objects 50 | * @return the number of selections or empty string if index is out of range 51 | * @throws InvalidComponentException 52 | */ 53 | public Object getSelection (long index) throws InvalidComponentException; 54 | } 55 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/src/org/a11y/utils/accprobe/accservice/core/IAccessibleValueElement.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.accservice.core; 10 | 11 | import org.a11y.utils.accprobe.core.model.InvalidComponentException; 12 | 13 | /** 14 | * represents the value of a control and the upper and lower bounds of the control. 15 | * Note that the type of the value is implementation-dependent. Not all controls have values. 16 | * 17 | * @author IAccessibleElement with its accessibleName properties. 32 | * Locator properties are not read from any model-specific configuration file. 33 | * 34 | * @param element element to be identified 35 | * @return identification string for element, usually its accessibleName 36 | */ 37 | public Properties describe (Object element) { 38 | String name = null; 39 | Properties properties = new Properties(); 40 | 41 | if (element instanceof IAccessibleElement) { 42 | IAccessibleElement acc = (IAccessibleElement) element; 43 | try { 44 | name = acc.getAccessibleName(); 45 | }catch (InvalidComponentException e) { 46 | } 47 | } 48 | 49 | if (name == null || name.length() == 0) { 50 | name = ""; 51 | } 52 | properties.setProperty("accessibleName", name); 53 | return properties; 54 | 55 | } 56 | 57 | } -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.accservice/src/org/a11y/utils/accprobe/accservice/locate/AccessibleNodePointerFactory.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.accservice.locate; 10 | 11 | import java.util.Locale; 12 | 13 | import org.apache.commons.jxpath.ri.QName; 14 | import org.apache.commons.jxpath.ri.model.NodePointer; 15 | import org.apache.commons.jxpath.ri.model.NodePointerFactory; 16 | import org.a11y.utils.accprobe.accservice.core.IAccessibleElement; 17 | 18 | 19 | public class AccessibleNodePointerFactory implements NodePointerFactory 20 | { 21 | 22 | public static final int ACCNODE_POINTER_FACTORY_ORDER = 4; 23 | 24 | public NodePointer createNodePointer(QName name, Object object, Locale locale) { 25 | return object instanceof IAccessibleElement 26 | ? new AccessibleNodePointer((IAccessibleElement) object, locale) : null; 27 | } 28 | 29 | public NodePointer createNodePointer(NodePointer parent, QName name, Object object) { 30 | return object instanceof IAccessibleElement 31 | ? new AccessibleNodePointer((IAccessibleElement) object, parent, null) : null; 32 | } 33 | 34 | public int getOrder() { 35 | return ACCNODE_POINTER_FACTORY_ORDER; 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.a11y.utils.accprobe.core 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.ManifestBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.pde.SchemaBuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.pde.PluginNature 26 | org.eclipse.jdt.core.javanature 27 | 28 | 29 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | #Thu Jul 17 10:56:55 CDT 2008 2 | eclipse.preferences.version=1 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 4 | org.eclipse.jdt.core.compiler.compliance=1.5 5 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 6 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 7 | org.eclipse.jdt.core.compiler.source=1.5 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: %pluginName 4 | Bundle-SymbolicName: org.a11y.utils.accprobe.core;singleton:=true 5 | Bundle-Version: 1.2.0.qualifier 6 | Bundle-Activator: org.a11y.utils.accprobe.core.model.ModelPlugin 7 | Bundle-Vendor: %providerName 8 | Bundle-Localization: plugin 9 | Require-Bundle: org.eclipse.core.runtime, 10 | org.apache.commons.beanutils, 11 | org.apache.commons.jxpath 12 | Eclipse-LazyStart: true 13 | Export-Package: org.a11y.utils.accprobe.core, 14 | org.a11y.utils.accprobe.core.adapt, 15 | org.a11y.utils.accprobe.core.config, 16 | org.a11y.utils.accprobe.core.logging, 17 | org.a11y.utils.accprobe.core.model, 18 | org.a11y.utils.accprobe.core.model.events, 19 | org.a11y.utils.accprobe.core.model.locate, 20 | org.a11y.utils.accprobe.core.model.traverse, 21 | org.a11y.utils.accprobe.core.model.traverse.filters, 22 | org.a11y.utils.accprobe.core.resources, 23 | org.a11y.utils.accprobe.core.runtime 24 | Bundle-ClassPath: . 25 | Bundle-RequiredExecutionEnvironment: J2SE-1.5 26 | Bundle-ActivationPolicy: lazy 27 | 28 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | About this Content 7 | 8 | 9 | 10 |

About This Content

11 |

March, 2010

12 | 13 |

License

14 | 15 |

Copyright (c) 2004, 2010 IBM Corporation.
16 | Copyright (c) 2010 Linux Foundation.

17 |

All rights reserved.

18 | 19 |
    20 |
  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • 21 | 22 |
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • 23 | 24 |
  • Neither the name of IBM Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
  • 25 |
26 | 27 |

28 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 |

30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/build.properties: -------------------------------------------------------------------------------- 1 | javacSource = 1.5 2 | javacTarget = 1.5 3 | bin.includes = META-INF/,\ 4 | about.html,\ 5 | plugin.properties,\ 6 | .,\ 7 | plugin.xml,\ 8 | schema/ 9 | source..=src/ 10 | output..=bin/ 11 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/plugin.properties: -------------------------------------------------------------------------------- 1 | pluginName=A11Y Basic Core Plug-in 2 | providerName=IBM 3 | aboutText=\n\nA11Y Basic Core Plug-in\n\ 4 | Version: 1.2.0\n\ 5 | Build: {0}\n\ 6 | \n\ 7 | (c) Copyright IBM 2007, 2010. All rights reserved.\n\ 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/config/ConfigurationException.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.core.config; 9 | 10 | /** 11 | * This class is used to report errors with A11Y's configuration 12 | * @author Randy Horwitz 13 | * 14 | */ 15 | public class ConfigurationException extends Exception 16 | { 17 | 18 | /** 19 | * 20 | */ 21 | private static final long serialVersionUID = 1L; 22 | 23 | public ConfigurationException () { 24 | super(); 25 | } 26 | 27 | public ConfigurationException (String message) { 28 | super(message); 29 | } 30 | 31 | public ConfigurationException (Throwable cause) { 32 | super(cause); 33 | } 34 | 35 | public ConfigurationException (String message, Throwable cause) { 36 | super(message, cause); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/config/Version.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.core.config; 9 | 10 | import java.util.StringTokenizer; 11 | 12 | public class Version 13 | { 14 | 15 | public static final String bundleVersionKey = "Bundle-Version"; 16 | 17 | private int major; 18 | 19 | private int minor; 20 | 21 | private int micro; 22 | 23 | public Version (int major, int minor, int micro) { 24 | this.major = major; 25 | this.minor = minor; 26 | this.micro = micro; 27 | } 28 | 29 | public Version (String version) { 30 | StringTokenizer st = new StringTokenizer(version, ".", false); 31 | if (st.hasMoreTokens()) { 32 | major = Integer.valueOf(st.nextToken()).intValue(); 33 | if (st.hasMoreTokens()) { 34 | minor = Integer.valueOf(st.nextToken()).intValue(); 35 | if (st.hasMoreTokens()) { 36 | micro = Integer.valueOf(st.nextToken()).intValue(); 37 | } 38 | } 39 | } 40 | } 41 | 42 | public String toString () { 43 | return major + "." + minor + "." + micro; 44 | } 45 | 46 | /** 47 | * @param args 48 | */ 49 | public static void main (String[] args) { 50 | // TODO Auto-generated method stub 51 | } 52 | 53 | public int getMajor () { 54 | return major; 55 | } 56 | 57 | public void setMajor (int major) { 58 | this.major = major; 59 | } 60 | 61 | public int getMicro () { 62 | return micro; 63 | } 64 | 65 | public void setMicro (int micro) { 66 | this.micro = micro; 67 | } 68 | 69 | public int getMinor () { 70 | return minor; 71 | } 72 | 73 | public void setMinor (int minor) { 74 | this.minor = minor; 75 | } 76 | } 77 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/logging/AbstractErrorLogger.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.core.logging; 9 | 10 | 11 | /** 12 | * a base from which error loggers can be built. Extending this class, clients need only 13 | * implement logError(String, Throwable). 14 | * 15 | * @author Mike Squillace 16 | */ 17 | public abstract class AbstractErrorLogger implements IErrorLogger 18 | { 19 | 20 | /** {@inheritDoc} */ 21 | public void logError (Throwable t) { 22 | logError(t.getMessage() != null ? t.getMessage() : "", t); 23 | } 24 | 25 | /** {@inheritDoc} */ 26 | public void logError (String msg) { 27 | logError(msg, null); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/logging/ConsoleErrorLogger.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.core.logging; 9 | 10 | import java.io.PrintStream; 11 | 12 | 13 | /** 14 | * general logger for writing to the console 15 | * 16 | * @author Mike Squillace 17 | */ 18 | public class ConsoleErrorLogger extends AbstractErrorLogger 19 | { 20 | 21 | private PrintStream _stream; 22 | 23 | /** 24 | * create a console error logger that writes to System.err 25 | * 26 | * 27 | */ 28 | public ConsoleErrorLogger () { 29 | this(System.err); 30 | } 31 | 32 | /** 33 | * create an error logger for writing to the console 34 | * 35 | * @param stream either System.out or System.err 36 | */ 37 | public ConsoleErrorLogger (PrintStream stream) { 38 | _stream = stream; 39 | } 40 | 41 | /** {@inheritDoc} */ 42 | public void logError (String msg, Throwable t) { 43 | if (msg != null) { 44 | _stream.println(msg); 45 | } 46 | if (t != null) { 47 | _stream.println(t.getClass().getName() + " - " + t.toString()); 48 | t.printStackTrace(_stream); 49 | while ((t = t.getCause()) != null) { 50 | _stream.println(t.getClass().getName() + " - " + t.toString()); 51 | t.printStackTrace(_stream); 52 | } 53 | } 54 | } 55 | 56 | } 57 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/logging/EclipseErrorLogger.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.core.logging; 9 | 10 | import org.a11y.utils.accprobe.core.A11yCorePlugin; 11 | 12 | /** 13 | * @author Mike Squillace 14 | */ 15 | public class EclipseErrorLogger extends AbstractErrorLogger 16 | { 17 | 18 | /** {@inheritDoc} */ 19 | public void logError (String msg, Throwable t) { 20 | A11yCorePlugin.getDefault().logException(msg, t); 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/logging/IErrorLogger.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.core.logging; 9 | 10 | /** 11 | * used to log errors to different destinations such as files, streams, or GUI components. The 12 | * ErrorLoggerFactory interface should be implemented to return instances of this interface appropriate to different 13 | * contexts. 14 | * 15 | * @author Mike Squillace 16 | */ 17 | public interface IErrorLogger 18 | { 19 | 20 | /** 21 | * log a Throwable 22 | * 23 | * @param t - Throwable to log 24 | */ 25 | public void logError (Throwable t); 26 | 27 | /** 28 | * log an error message 29 | * 30 | * @param msg - error message 31 | */ 32 | public void logError (String msg); 33 | 34 | /** 35 | * log an error message along with its corresponding Throwable. If no message 36 | * is specified, the class and toString() of the 37 | * Throwable should be logged. 38 | * 39 | * @param msg - error message 40 | * @param t - Throwable being logged 41 | */ 42 | public void logError (String msg, Throwable t); 43 | } 44 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/logging/StreamErrorLogger.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.core.logging; 9 | 10 | import java.io.OutputStream; 11 | import java.io.OutputStreamWriter; 12 | import java.io.PrintWriter; 13 | 14 | 15 | /** 16 | * an error logger for logging errors to an java.io.OutputStream 17 | * 18 | * @author Mike Squillace 19 | */ 20 | public class StreamErrorLogger extends AbstractErrorLogger 21 | { 22 | 23 | private PrintWriter _writer; 24 | 25 | private String _filename; 26 | 27 | /** 28 | * create an error logger for writing to a stream 29 | * 30 | * @param stream - stream to which errors are to be logged 31 | */ 32 | public StreamErrorLogger (OutputStream stream) { 33 | _writer = new PrintWriter(new OutputStreamWriter(stream), true); 34 | } 35 | 36 | /** {@inheritDoc} */ 37 | public void logError (String msg, Throwable t) { 38 | if (msg != null) { 39 | _writer.println(msg); 40 | } 41 | if (t != null) { 42 | _writer.println(t.getClass().getName() + " - " + t.toString()); 43 | t.printStackTrace(); 44 | while ((t = t.getCause()) != null) { 45 | _writer.println(t.toString()); 46 | t.printStackTrace(); 47 | } 48 | } 49 | } 50 | 51 | /** 52 | * return the filename associated with the stream 53 | * 54 | * @return filename associated with stream or null if 55 | * a filename was not set 56 | * @see #setFilename(String) 57 | */ 58 | public String getFilename () { 59 | return _filename; 60 | } 61 | 62 | /** 63 | * asociate a filename with the underlying stream with which this 64 | * error logger was instantiated 65 | * 66 | * @param name - filename 67 | */ 68 | public void setFilename (String name) { 69 | _filename = name; 70 | } 71 | 72 | protected void finalize () throws Throwable { 73 | _writer.close(); 74 | } 75 | 76 | public String toString () { 77 | return getClass().getName() + "[" 78 | + (_filename == null ? "" : _filename) + "]"; 79 | } 80 | } 81 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/model/IModelFactory.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.core.model; 9 | 10 | /** 11 | * implementations retrieve the desired IModel based upon the 12 | * raven:model attribute value of the <rulebase> element. 13 | * 14 | * @author Mike Squillace 15 | */ 16 | public interface IModelFactory 17 | { 18 | 19 | /** 20 | * retrieve the desired IModel for the given model type. 21 | * 22 | * @param model -- model type 23 | * @return model appropriate for the given type 24 | */ 25 | public IModel resolveModel (String model); 26 | 27 | } // IModelFactory 28 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/model/InvalidComponentException.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.core.model; 9 | 10 | public class InvalidComponentException extends Exception 11 | { 12 | 13 | /** 14 | * 15 | */ 16 | private static final long serialVersionUID = 1L; 17 | 18 | public InvalidComponentException () { 19 | super(); 20 | } 21 | 22 | public InvalidComponentException (String message) { 23 | super(message); 24 | } 25 | 26 | public InvalidComponentException (String message, Throwable cause) { 27 | super(message, cause); 28 | } 29 | 30 | public InvalidComponentException (Throwable cause) { 31 | super(cause); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/model/ModelRegistryChangeListener.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | * 4 | * 5 | * 6 | * 7 | * 8 | * Contributors: 9 | * IBM Corporation - initial API and implementation 10 | *******************************************************************************/ 11 | package org.a11y.utils.accprobe.core.model; 12 | 13 | import java.util.logging.Level; 14 | import java.util.logging.Logger; 15 | 16 | import org.a11y.utils.accprobe.core.config.ConfigurationException; 17 | import org.a11y.utils.accprobe.core.config.IConfiguration; 18 | import org.a11y.utils.accprobe.core.logging.LoggingUtil; 19 | import org.a11y.utils.accprobe.core.runtime.IRuntimeContext; 20 | import org.eclipse.core.runtime.IExtension; 21 | import org.eclipse.core.runtime.IExtensionDelta; 22 | import org.eclipse.core.runtime.IExtensionPoint; 23 | import org.eclipse.core.runtime.IRegistryChangeEvent; 24 | import org.eclipse.core.runtime.IRegistryChangeListener; 25 | 26 | public class ModelRegistryChangeListener implements IRegistryChangeListener { 27 | 28 | protected IConfiguration configuration; 29 | protected IRuntimeContext runtimeContext; 30 | public static final String namespace = ModelPlugin.MODEL_PLUGIN_ID; 31 | public static final String MODEL_TYPES_EXTENSION_POINT = "modelTypes"; 32 | public static final String NODE_FILTERS_EXTENSION_POINT = "nodeFilters"; 33 | 34 | public ModelRegistryChangeListener() { 35 | super(); 36 | } 37 | 38 | public void registryChanged(IRegistryChangeEvent event) { 39 | IExtensionDelta[] deltas = event.getExtensionDeltas(namespace); 40 | for (int i = 0; i < deltas.length; i++) { 41 | IExtensionPoint point = deltas[i].getExtensionPoint(); 42 | String id = point.getSimpleIdentifier(); 43 | if (id.equals(MODEL_TYPES_EXTENSION_POINT) 44 | || id.equals(NODE_FILTERS_EXTENSION_POINT)) { 45 | 46 | IExtension[] extensions = point.getExtensions(); 47 | for (int j = 0; j < extensions.length; j++) { 48 | try { 49 | configuration.addConfigurationData(extensions[j]); 50 | } catch (ConfigurationException e) { 51 | Logger.getLogger(LoggingUtil.A11Y_CORE_LOGGER_NAME) 52 | .log(Level.WARNING, "ConfigurationException" +e.getMessage()); 53 | } 54 | } 55 | } 56 | } 57 | } 58 | 59 | } 60 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/model/events/IModelChangeListener.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.core.model.events; 10 | 11 | 12 | /** 13 | * a listener to be implemented by clients who wish to be notified of changes to the model or 14 | * to its elements. Structures that are instances of classes that inherit from 15 | * IModel may wish to extend this interface. 16 | * 17 | * @see org.a11y.utils.accprobe.core.model.IModel 18 | * @author
Mike Squilace 19 | */ 20 | public interface IModelChangeListener 21 | { 22 | 23 | /** 24 | * notifies clients that an element has been inserted into the structure. 25 | * 26 | * @param event 27 | */ 28 | public void nodeInserted (ModelChangeEvent event); 29 | 30 | /** 31 | * notifies clients that an element has been removed from the structure. 32 | * 33 | * @param event 34 | */ 35 | public void nodeRemoved (ModelChangeEvent event); 36 | 37 | /** 38 | * notifies clients that an element in the structure has been modified. Different models will want to 39 | * determine more precisely which modifications might be of interest to clients. 40 | * 41 | * @param event 42 | */ 43 | public void nodeModified (ModelChangeEvent event); 44 | 45 | } 46 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/model/events/IModelEventListener.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.core.model.events; 10 | 11 | import java.util.EventObject; 12 | 13 | /** 14 | * a listener to be implemented by clients wishing to monitor events within a model 15 | * 16 | * @author Mike Squillace 19 | * 20 | */ 21 | public abstract class AbstractNodeWalker implements INodeWalker 22 | { 23 | 24 | protected LinkedList nodeFilters = new LinkedList(); 25 | 26 | /** {@inheritDoc} */ 27 | public void addNodeFilter(INodeFilter filter) { 28 | if (!nodeFilters.contains(filter)) { 29 | nodeFilters.add(filter); 30 | } 31 | } 32 | 33 | /** {@inheritDoc} */ 34 | public INodeFilter[] removeAllFilters() { 35 | INodeFilter[] filters = (INodeFilter[]) nodeFilters.toArray(new INodeFilter[nodeFilters.size()]); 36 | nodeFilters.clear(); 37 | return filters; 38 | } 39 | 40 | public void removeNodeFilter(INodeFilter filter) { 41 | nodeFilters.remove(filter); 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/model/traverse/filters/INodeFilter.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.core.model.traverse.filters; 8 | 9 | import org.a11y.utils.accprobe.core.model.traverse.INodeWalker; 10 | 11 | /** 12 | * used as a general-purpose filter for nodes during retrieval of successor nodes in a graph. 13 | * 14 | * @see INodeWalker#addNodeFilter(INodeFilter) 15 | * @see INodeWalker#getFilteredSuccessorNodes(Object) 16 | * @author Mike Squillace 17 | * 18 | */ 19 | public interface INodeFilter 20 | { 21 | /** 22 | * whether or not to admit this object through the filter 23 | * 24 | * @param node 25 | * @return true if this object should be included in successor node collections, 26 | * false if it should be filtered 27 | */ 28 | public boolean pass (Object node); 29 | 30 | } 31 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/model/traverse/filters/NodeIdFilter.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | * 4 | * 5 | * 6 | * 7 | * 8 | * Contributors: 9 | * IBM Corporation - initial API and implementation 10 | *******************************************************************************/ 11 | package org.a11y.utils.accprobe.core.model.traverse.filters; 12 | 13 | import java.util.ArrayList; 14 | import java.util.Iterator; 15 | import java.util.List; 16 | import java.util.StringTokenizer; 17 | import java.util.regex.Pattern; 18 | 19 | import org.a11y.utils.accprobe.core.model.IModel; 20 | 21 | 22 | public class NodeIdFilter implements INodeFilter { 23 | 24 | protected IModel model = null; 25 | protected List ignoreIds = new ArrayList(); 26 | 27 | public NodeIdFilter(IModel model, String ids) { 28 | this.model = model; 29 | StringTokenizer regExpList = ids == null ? null : new StringTokenizer(ids); 30 | while (regExpList != null && regExpList.hasMoreTokens()) { 31 | ignoreIds.add(Pattern.compile(regExpList.nextToken())); 32 | } 33 | } 34 | 35 | public boolean pass(Object node) { 36 | boolean matched = false; 37 | if (node != null && model != null) { 38 | Iterator iter = ignoreIds.iterator(); 39 | String id = model.getNodeId(node); 40 | while (!matched & iter.hasNext()) { 41 | matched = ((Pattern) iter.next()).matcher(id).matches(); 42 | } 43 | } 44 | return !matched; 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/model/traverse/filters/NodeNameFilter.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | * 4 | * 5 | * 6 | * 7 | * 8 | * Contributors: 9 | * IBM Corporation - initial API and implementation 10 | *******************************************************************************/ 11 | package org.a11y.utils.accprobe.core.model.traverse.filters; 12 | 13 | import java.util.ArrayList; 14 | import java.util.Arrays; 15 | import java.util.List; 16 | 17 | import org.a11y.utils.accprobe.core.model.IModel; 18 | 19 | 20 | public class NodeNameFilter implements INodeFilter { 21 | 22 | protected IModel model = null; 23 | protected List ignoreNames = new ArrayList(); 24 | 25 | public NodeNameFilter(IModel model, String names) { 26 | this.model = model; 27 | if (names != null) { 28 | this.ignoreNames = Arrays.asList(names.split(",\\s*")); 29 | } 30 | } 31 | 32 | public boolean pass(Object node) { 33 | boolean pass = true; 34 | if (node != null && model != null) { 35 | String name = model.getNodeName(node); 36 | pass = !ignoreNames.contains(name); 37 | } 38 | return pass; 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/model/traverse/filters/NodeVisibilityFilter.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.core.model.traverse.filters; 8 | 9 | import org.a11y.utils.accprobe.core.model.IModel; 10 | import org.a11y.utils.accprobe.core.model.IRenderableModel; 11 | 12 | /** 13 | * This filter will exclude invisible items. 14 | * If you wish to show all items, visible or invisible, 15 | * remove it, or do not set it in the first place. 16 | * @author annford 17 | * 18 | */ 19 | public class NodeVisibilityFilter implements INodeFilter 20 | { 21 | private IModel model = null; 22 | 23 | public NodeVisibilityFilter (IModel model) { 24 | this.model = model; 25 | } 26 | 27 | public boolean pass (Object node) { 28 | boolean visible = false; 29 | if (model != null && model instanceof IRenderableModel) { 30 | visible = ((IRenderableModel)model).isVisible(node); 31 | } 32 | return visible; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/runtime/AbstractRuntimeContext.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.core.runtime; 10 | 11 | import org.a11y.utils.accprobe.core.config.IConfiguration; 12 | import org.a11y.utils.accprobe.core.logging.IErrorLogger; 13 | import org.a11y.utils.accprobe.core.resources.IResourceLocator; 14 | 15 | 16 | /** 17 | * @author Mike Squillace 20 | * 21 | */ 22 | public class EclipseRuntimeContext extends AbstractRuntimeContext 23 | { 24 | 25 | public EclipseRuntimeContext() { 26 | super(); 27 | errorLogger = new EclipseErrorLogger(); 28 | resourceLocator = new EclipseResourceLocator(); 29 | } 30 | 31 | public IConfiguration getConfiguration() throws ConfigurationException { 32 | if (configuration == null) { 33 | configuration = new EclipseConfiguration(); 34 | } 35 | 36 | return configuration; 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/runtime/IRuntimeContext.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.core.runtime; 10 | 11 | import org.a11y.utils.accprobe.core.config.ConfigurationException; 12 | import org.a11y.utils.accprobe.core.config.IConfiguration; 13 | import org.a11y.utils.accprobe.core.logging.IErrorLogger; 14 | import org.a11y.utils.accprobe.core.resources.IResourceLocator; 15 | 16 | 17 | public interface IRuntimeContext 18 | { 19 | 20 | public IConfiguration getConfiguration () throws ConfigurationException; 21 | public IResourceLocator getResourceLocator (); 22 | public IErrorLogger getErrorLogger (); 23 | 24 | } 25 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/runtime/RuntimeContextFactory.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.core.runtime; 10 | 11 | import java.lang.reflect.Method; 12 | 13 | public class RuntimeContextFactory 14 | { 15 | 16 | public static final String RUNTIME_CONTEXT_CLASSNAME_KEY = "org.a11y.utils.accprobe.core.runtimeContext"; 17 | 18 | private static RuntimeContextFactory factoryInstance; 19 | 20 | private IRuntimeContext contextInstance; 21 | 22 | protected RuntimeContextFactory () { 23 | } 24 | 25 | public static RuntimeContextFactory getInstance () { 26 | if (factoryInstance == null) { 27 | factoryInstance = new RuntimeContextFactory(); 28 | } 29 | return factoryInstance; 30 | } 31 | 32 | public IRuntimeContext getRuntimeContext() { 33 | if (contextInstance == null) { 34 | contextInstance = createRuntimeContext(); 35 | } 36 | return contextInstance; 37 | } 38 | 39 | private IRuntimeContext createRuntimeContext () { 40 | String clsName = "org.a11y.utils.accprobe.core.runtime.StandaloneRuntimeContext"; 41 | String contextProp = System.getProperty(RUNTIME_CONTEXT_CLASSNAME_KEY); 42 | IRuntimeContext context = null; 43 | 44 | if (contextProp != null && contextProp.length() > 0) { 45 | clsName = contextProp; 46 | } else { 47 | try { 48 | Class platformCls = Class.forName("org.eclipse.core.runtime.Platform"); 49 | Method isRunning = platformCls.getMethod("isRunning", (Class[]) null); 50 | if (isRunning != null) { 51 | boolean inEclipse = ((Boolean) isRunning.invoke(null, (Object[]) null)).booleanValue(); 52 | if (inEclipse) { 53 | clsName = "org.a11y.utils.accprobe.core.runtime.EclipseRuntimeContext"; 54 | } 55 | } 56 | } catch (Exception e) { 57 | // not in Eclipse so assume stand-alone 58 | } 59 | } 60 | 61 | try { 62 | context = (IRuntimeContext) Class.forName(clsName).newInstance(); 63 | } catch (Exception e) { 64 | throw new RuntimeException(e); 65 | } 66 | 67 | return context; 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.core/src/org/a11y/utils/accprobe/core/runtime/StandaloneRuntimeContext.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | 9 | package org.a11y.utils.accprobe.core.runtime; 10 | 11 | import java.io.IOException; 12 | import java.io.InputStream; 13 | import java.net.URL; 14 | 15 | import org.a11y.utils.accprobe.core.config.ConfigurationException; 16 | import org.a11y.utils.accprobe.core.config.IConfiguration; 17 | import org.a11y.utils.accprobe.core.config.XmlConfiguration; 18 | import org.a11y.utils.accprobe.core.logging.StreamErrorLogger; 19 | import org.a11y.utils.accprobe.core.resources.DefaultResourceLocator; 20 | 21 | 22 | public class StandaloneRuntimeContext extends AbstractRuntimeContext 23 | { 24 | 25 | public StandaloneRuntimeContext() { 26 | super(); 27 | errorLogger = new StreamErrorLogger(System.err); 28 | resourceLocator = new DefaultResourceLocator(); 29 | } 30 | 31 | public IConfiguration getConfiguration () throws ConfigurationException { 32 | if (configuration == null) { 33 | URL[] urls = resourceLocator.getResources(IConfiguration.A11Y_ID + ".xml"); 34 | configuration = new XmlConfiguration(); 35 | for (int p = 0; p < urls.length; ++p) { 36 | try { 37 | InputStream configFileStream = urls[p].openStream(); 38 | //System.err.println("url="+urls[p]+"; "+urls[p].toExternalForm()+"; "+configFileStream); 39 | if (configFileStream != null) { 40 | configuration.addConfigurationData(configFileStream); 41 | } 42 | configFileStream.close(); 43 | } catch (IOException e) { 44 | } 45 | } 46 | } 47 | 48 | return configuration; 49 | } 50 | 51 | } 52 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.a11y.utils.accprobe.releng 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/builder/accprobe/build.properties: -------------------------------------------------------------------------------- 1 | collectingFolder=${archivePrefix} 2 | configs=win32, win32, x86 3 | baseos=win32 4 | basews=win32 5 | basearch=x86 6 | zipargs= 7 | timestamp=000 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/maps/accprobe.map: -------------------------------------------------------------------------------- 1 | !*************** PROJECT CONTRIBUTION ******************************************************** 2 | 3 | !*** Project's plugins, features and fragments 4 | 5 | feature@org.a11y.utils.accprobe=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe-feature 6 | 7 | plugin@org.a11y.utils.accprobe=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe 8 | plugin@org.a11y.utils.accprobe.core=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe.core 9 | plugin@org.a11y.utils.accprobe.accservice=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe.accservice 10 | 11 | fragment@org.a11y.utils.accprobe.accservice.win32.ia2=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe.accservice.win32.ia2-fragment 12 | fragment@org.a11y.utils.accprobe.accservice.win32.msaa=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe.accservice.win32.msaa-fragment 13 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/maps/build.cfg: -------------------------------------------------------------------------------- 1 | # this file's contents are generated -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/org.a11y.utils.accprobe.releng.build/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/org.a11y.utils.accprobe.releng.build/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.a11y.utils.accprobe.releng.build 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/org.a11y.utils.accprobe.releng.build/build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/repoInfo.properties: -------------------------------------------------------------------------------- 1 | cvsHost=ibmac50.austin.ibm.com 2 | cvsReadProtocol=pserver 3 | cvsWriteProtocol=ext 4 | cvsReadUser=teegala:ribdev01 5 | cvsWriteUser=teegala 6 | cvsWriteRelengUser=teegala 7 | cvsRep=/rib 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/scripts/checkZipExists.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/scripts/executeCommand.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | echo " "; echo "[`date +%H\:%M\:%S`]"; echo " $1" | perl -pe "s/ -/\n -/g"; 4 | $1 5 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/scripts/getCompilerResults.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # $Id: getCompilerResults.sh,v 1.4 2007/12/26 17:17:25 msquillac Exp $ 4 | 5 | # given a directory (./compilelogs) 6 | # recurse through all files and look for files containing 7 | # 975 problems (975 warnings) 8 | # generate a summary file which contains a count of problems, warnings, errors, and failures in the format: 9 | # 975P, 975W, 0E, 0F 10 | # or if none found, file is not created 11 | 12 | # set working dir 13 | if [ "x$1" != "x" ]; then 14 | dir="$1"; 15 | else 16 | dir="./compilelogs"; 17 | fi 18 | 19 | debug=0; 20 | 21 | prob=0; 22 | warn=0; 23 | err=0; 24 | fail=0; 25 | 26 | # get files 27 | for f in $(find $dir -type f -name "*.log" | sort); do 28 | results=$(tail -1 $f | perl -pe 's/([0-9]+) /$1_/g' | perl -pe 's/[^a-z0-9\_\ ]+//g' | egrep "[0-9]+\_(problem|warning|error|failure)"); 29 | if [ $debug -gt 0 ]; then echo -n "$f : "; fi 30 | for b in $results; do 31 | p=$(echo $b | perl -pe 's/(\d+)_problems?/$1/g' | egrep "^[0-9]+$"); if [ "$p" != "" ]; then (( prob += p )); fi 32 | p=$(echo $b | perl -pe 's/(\d+)_warnings?/$1/g' | egrep "^[0-9]+$"); if [ "$p" != "" ]; then (( warn += p )); fi 33 | p=$(echo $b | perl -pe 's/(\d+)_errors?/$1/g' | egrep "^[0-9]+$"); if [ "$p" != "" ]; then (( err += p )); fi 34 | p=$(echo $b | perl -pe 's/(\d+)_failures?/$1/g' | egrep "^[0-9]+$"); if [ "$p" != "" ]; then (( fail += p )); fi 35 | done 36 | if [ $debug -gt 0 ]; then echo $prob"P, "$warn"W, "$err"E, "$fail"F"; fi 37 | done 38 | 39 | # no output if all's good, otherwise breakdown by prob, warn, err, fail 40 | if [ $prob -gt 0 ] || [ $warn -gt 0 ] || [ $err -gt 0 ] || [ $fail -gt 0 ]; then 41 | echo $prob"P, "$warn"W, "$err"E, "$fail"F"; 42 | fi 43 | 44 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/scripts/javadoctoc.xsl: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | <?NLS TYPE="org.eclipse.help.toc"?> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/scripts/readProperty.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | 4 | 5 | if [[ $# -lt 2 ]]; then 6 | 7 | 8 | 9 | echo "Usage: $0 "; 10 | 11 | 12 | 13 | echo "Example: $0 ../../server-config/build.eclipse.org.properties JAVA_HOME"; 14 | 15 | 16 | 17 | exit 1; 18 | 19 | 20 | 21 | fi 22 | 23 | 24 | 25 | file=$1 26 | 27 | 28 | 29 | property=$2 30 | 31 | 32 | 33 | grep $property $file | egrep -v "^#" | tail -1 | sed -e "s/$property=//" 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/scripts/removeCR.sh: -------------------------------------------------------------------------------- 1 | # removeCR.sh 2 | 3 | # remove carriage returns (\r) from files in windows 4 | 5 | # occurs if exporting or checking out from CVS client on windwos 6 | 7 | # arg: scripts directory 8 | 9 | 10 | 11 | for file in $1/*.sh; do 12 | 13 | tmpfile=$file".tmp"; 14 | 15 | newfile=$file; 16 | 17 | tr "\r\n" "\n" < $file > $tmpfile; 18 | 19 | rm -f $file; 20 | 21 | mv $tmpfile $newfile; 22 | 23 | done -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/templates/_hostname_.properties: -------------------------------------------------------------------------------- 1 | # build server-specific properties 2 | 3 | #__hostname__ 4 | JAVA_HOME= 5 | JAVA14_HOME= 6 | #JAVA14_HOME= 7 | ANT_HOME= 8 | writableBuildRoot= 9 | serverAlias= 10 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/templates/build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/templates/builder/runtime/build.properties: -------------------------------------------------------------------------------- 1 | # TODO: set correct source and target levels here 2 | javacSource=5.0 3 | javacTarget=5.0 4 | 5 | buildDirectory=${builder}/../${archivePrefix} 6 | buildType=I 7 | buildId=${buildID} 8 | collPlace=. 9 | collBase=. 10 | baseLocation= 11 | configs=*,*,* 12 | baseos=win32 13 | basews=win32 14 | basearch=x86 15 | bootclasspath=${java.home}/lib/*.jar 16 | javacFailOnError=true 17 | javacVerbose=true 18 | javacDebugInfo=on 19 | zipargs= 20 | archivesFormat =*,*,*-antZip 21 | collectingFolder=${archivePrefix} 22 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/templates/builder/sdk/build.properties: -------------------------------------------------------------------------------- 1 | # TODO: set correct source and target levels here 2 | javacSource=5.0 3 | javacTarget=5.0 4 | 5 | buildDirectory=${builder}/../${archivePrefix} 6 | buildType=I 7 | buildId=${buildID} 8 | collPlace=. 9 | collBase=. 10 | baseLocation= 11 | configs=*,*,* 12 | baseos=win32 13 | basews=win32 14 | basearch=x86 15 | bootclasspath=${java.home}/lib/*.jar 16 | javacFailOnError=true 17 | javacVerbose=true 18 | javacDebugInfo=on 19 | zipargs= 20 | archivesFormat =*,*,*-antZip 21 | collectingFolder=${archivePrefix} 22 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/templates/maps/_subproject_.map: -------------------------------------------------------------------------------- 1 | \!*************** PROJECT CONTRIBUTION ******************************************************** 2 | 3 | !*** Special entries from eclipse 4 | 5 | plugin@org.eclipse.test=v20070226,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse, 6 | fragment@org.eclipse.ant.optional.junit=v20050226,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse, 7 | 8 | !*** Project's plugins, features and fragments 9 | 10 | feature@org.a11y.utils.accprobe.accservice=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe.accservice-feature 11 | feature@org.a11y.utils.accprobe.core.model=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib:/cvsroot/technology,,A11yAccProbe/org.a11y.utils.accprobe.core.model-feature 12 | 13 | plugin@org.a11y.utils.accprobe.core=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe.core 14 | plugin@org.a11y.utils.accprobe.core.model=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe.core.model 15 | plugin@org.a11y.utils.accprobe.accservice=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe.accservice 16 | 17 | fragment@org.a11y.utils.accprobe.accservice.win32.ia2=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe.accservice.win32.ia2-fragment 18 | fragment@org.a11y.utils.accprobe.accservice.win32.msaa=HEAD,:pserver:teegala:ribdev01@ibmac50.austin.ibm.com:/rib,,A11yAccProbe/org.a11y.utils.accprobe.accservice.win32.msaa-fragment 19 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe.releng/templates/maps/build.cfg: -------------------------------------------------------------------------------- 1 | # this file's contents are generated -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/.jazzignore: -------------------------------------------------------------------------------- 1 | ### Jazz Ignore 0 2 | # Default value for core.ignore.recursive is *.class 3 | # Changing this value changes check-in behaviour for the entire project. 4 | # 5 | # Default value for core.ignore is bin 6 | # Changing this value changes check-in behaviour for the local directory. 7 | # 8 | # Ignore properties should contain a space separated list of filename patterns. 9 | # Each pattern is case sensitive and surrounded by braces ('{' and '}'). 10 | # "*" matches zero or more characters, and "?" matches single characters. 11 | # 12 | # e.g: {*.sh} {\.*} ignores shell scripts and hidden files 13 | 14 | # NOTE: modifying ignore files will not change the ignore status of derived 15 | # resources. 16 | 17 | core.ignore.recursive= \ 18 | {*.class} 19 | 20 | core.ignore= \ 21 | {bin} \ 22 | {build.xml} \ 23 | {javaCompiler...args} \ 24 | {temp-base.zip} -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.a11y.utils.accprobe 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | org.eclipse.pde.ManifestBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.pde.SchemaBuilder 20 | 21 | 22 | 23 | 24 | 25 | org.eclipse.pde.PluginNature 26 | org.eclipse.jdt.core.javanature 27 | 28 | 29 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | #Thu Jul 17 10:56:22 CDT 2008 2 | eclipse.preferences.version=1 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 4 | org.eclipse.jdt.core.compiler.compliance=1.5 5 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 6 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 7 | org.eclipse.jdt.core.compiler.source=1.5 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/Delivery/.jazzignore: -------------------------------------------------------------------------------- 1 | ### Jazz Ignore 0 2 | # The property core.ignore specifies a list of file patterns that will be 3 | # ignored in this directory. 4 | # 5 | # The value of core.ignore.recursive will be ignored. 6 | # 7 | # Ignore properties should contain a space separated list of filename patterns. 8 | # Each pattern is case sensitive and surrounded by braces ('{' and '}'). 9 | # "*" matches zero or more characters, and "?" matches single characters. 10 | # 11 | # e.g: {*.sh} {\.*} ignores shell scripts and hidden files 12 | 13 | # NOTE: modifying ignore files will not change the ignore status of derived 14 | # resources. 15 | 16 | core.ignore.recursive= 17 | 18 | core.ignore= \ 19 | {*.zip} -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Bundle-ManifestVersion: 2 3 | Bundle-Name: %pluginName 4 | Bundle-SymbolicName: org.a11y.utils.accprobe; singleton:=true 5 | Bundle-Version: 1.2.1.qualifier 6 | Bundle-Activator: org.a11y.utils.accprobe.Activator 7 | Bundle-Vendor: %providerName 8 | Bundle-Localization: plugin 9 | Require-Bundle: org.eclipse.ui, 10 | org.eclipse.core.runtime, 11 | org.eclipse.ui.views, 12 | org.eclipse.core.resources, 13 | org.apache.commons.beanutils, 14 | org.apache.commons.jxpath, 15 | org.a11y.utils.accprobe.accservice;bundle-version="1.2.0", 16 | org.a11y.utils.accprobe.core;bundle-version="1.2.0" 17 | Eclipse-LazyStart: true 18 | Bundle-ClassPath: . 19 | Export-Package: org.a11y.utils.accprobe 20 | Bundle-RequiredExecutionEnvironment: J2SE-1.5 21 | Bundle-ActivationPolicy: lazy 22 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/Mysplash.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/Mysplash.bmp -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | About this Content 7 | 8 | 9 | 10 |

About This Content

11 |

March, 2010

12 | 13 |

License

14 | 15 |

Copyright (c) 2004, 2010 IBM Corporation.
16 | Copyright (c) 2010 Linux Foundation.

17 |

All rights reserved.

18 | 19 |
    20 |
  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • 21 | 22 |
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • 23 | 24 |
  • Neither the name of IBM Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
  • 25 |
26 | 27 |

28 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 |

30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/accprobe.product: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | %aboutText 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/autobuild.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/build.properties: -------------------------------------------------------------------------------- 1 | javacSource = 1.5 2 | javacTarget = 1.5 3 | bin.includes = plugin.xml,\ 4 | META-INF/,\ 5 | icons/,\ 6 | IAccessible2Proxy.dll,\ 7 | plugin.properties,\ 8 | product_lg.gif,\ 9 | product_customization.ini,\ 10 | accprobe.product,\ 11 | .,\ 12 | about.html,\ 13 | logging.properties 14 | jars.compile.order = . 15 | source..= src/ 16 | output..= bin/ 17 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/accprobe.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/accprobe.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/clearLog.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/clearLog.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/collapseall.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/collapseall.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/event.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/event.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/expand.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/expand.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/filter.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/filter.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/find.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/find.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/methpro_obj.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/methpro_obj.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/properties.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/properties.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/refresh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/refresh.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/refresh_desktop.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/refresh_desktop.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/resume.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/resume.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/sample2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/sample2.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/sample3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/sample3.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/search.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/search.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/start.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/start.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/stop.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/stop.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/icons/suspend.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/icons/suspend.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/plugin.properties: -------------------------------------------------------------------------------- 1 | pluginName=Accessibility Probe 2 | providerName=IBM 3 | aboutText=\n\n Accessibility Probe\n\ 4 | Version: 1.2.1.2\n\ 5 | Build: {0}\n\ 6 | \n\ 7 | (c) Copyright IBM 2007, 2010. All rights reserved.\n\ 8 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/product_customization.ini: -------------------------------------------------------------------------------- 1 | org.eclipse.ui/KEY_CONFIGURATION_ID=org.eclipse.ui.defaultAcceleratorConfiguration -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/product_lg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IBMa/AccProbe/17692fadbddcb17a341321e437d895de64004c0a/org.a11y.utils.accprobe/product_lg.gif -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/Application.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe; 8 | 9 | import org.a11y.utils.accprobe.advisors.ApplicationWorkbenchAdvisor; 10 | import org.eclipse.core.runtime.IPlatformRunnable; 11 | import org.eclipse.swt.widgets.Display; 12 | import org.eclipse.ui.PlatformUI; 13 | 14 | 15 | /** 16 | * This class controls all aspects of the application's execution 17 | */ 18 | public class Application implements IPlatformRunnable { 19 | /* (non-Javadoc) 20 | * @see org.eclipse.core.runtime.IPlatformRunnable#run(java.lang.Object) 21 | */ 22 | public Object run(Object args) throws Exception { 23 | Display display = PlatformUI.createDisplay(); 24 | try { 25 | int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor()); 26 | if (returnCode == PlatformUI.RETURN_RESTART) { 27 | return IPlatformRunnable.EXIT_RESTART; 28 | } 29 | return IPlatformRunnable.EXIT_OK; 30 | } finally { 31 | display.dispose(); 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/Perspective.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe; 8 | 9 | import org.a11y.utils.accprobe.views.EventMonitorView; 10 | import org.a11y.utils.accprobe.views.ExplorerView; 11 | import org.a11y.utils.accprobe.views.PropertiesView; 12 | import org.eclipse.ui.IPageLayout; 13 | import org.eclipse.ui.IPerspectiveFactory; 14 | 15 | 16 | public class Perspective implements IPerspectiveFactory { 17 | 18 | 19 | public void createInitialLayout(IPageLayout layout) { 20 | String editorArea = layout.getEditorArea(); 21 | layout.setEditorAreaVisible(false); 22 | layout.addStandaloneView(ExplorerView.ID, true, IPageLayout.LEFT, 0.5f, editorArea); 23 | layout.addView(EventMonitorView.ID, IPageLayout.BOTTOM, 0.8f, ExplorerView.ID); 24 | layout.addView(PropertiesView.ID, IPageLayout.RIGHT, 0.5f, ExplorerView.ID); 25 | 26 | layout.getViewLayout(ExplorerView.ID).setCloseable(false); 27 | layout.getViewLayout(PropertiesView.ID).setCloseable(false); 28 | layout.getViewLayout(EventMonitorView.ID).setCloseable(false); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/actions/AlwaysOnTopAction.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.actions; 8 | 9 | import org.a11y.utils.accprobe.accservice.AccessibilityServiceException; 10 | import org.a11y.utils.accprobe.accservice.AccessibilityServiceManager; 11 | import org.a11y.utils.accprobe.accservice.IAccessibilityService; 12 | import org.a11y.utils.accprobe.accservice.core.win32.msaa.MsaaAccessibilityService; 13 | import org.a11y.utils.accprobe.accservice.core.win32.msaa.MsaaWindowService; 14 | import org.a11y.utils.accprobe.views.AbstractViewPart; 15 | import org.eclipse.jface.action.Action; 16 | import org.eclipse.jface.action.IAction; 17 | import org.eclipse.jface.dialogs.MessageDialog; 18 | import org.eclipse.ui.IWorkbenchWindow; 19 | 20 | 21 | public class AlwaysOnTopAction extends Action 22 | { 23 | 24 | public static final String ID = "org.a11y.utils.accprobe.actions.AlwaysOnTopAction"; 25 | 26 | private final IWorkbenchWindow window; 27 | 28 | private IAccessibilityService accService = null; 29 | 30 | public AlwaysOnTopAction (IWorkbenchWindow window, String label) { 31 | super(label, IAction.AS_CHECK_BOX); 32 | this.window = window; 33 | try { 34 | accService = AccessibilityServiceManager.getInstance().getAccessibilityService( 35 | MsaaAccessibilityService.MSAA_ACCSERVICE_NAME); 36 | }catch (AccessibilityServiceException e) { 37 | // TODO Auto-generated catch block 38 | e.printStackTrace(); 39 | } 40 | // The id is used to refer to the action in a menu or toolbar 41 | setId(ID); 42 | //setChecked(true); //default value is true; 43 | } 44 | 45 | public void run () { 46 | if(AbstractViewPart.isActionSuspended()){ 47 | setChecked(!isChecked()); 48 | MessageDialog.openError( 49 | window.getShell(),"Always on Top", 50 | "Please resume all actions before changing this option"); 51 | return; 52 | } 53 | if (accService != null && accService instanceof MsaaAccessibilityService) { 54 | MsaaWindowService msaaService = (MsaaWindowService) accService.getWindowService(); 55 | if (isChecked()) { 56 | msaaService.setWindowOnTop(window.getShell().handle); 57 | }else { 58 | msaaService.setWindowNoTop(window.getShell().handle); 59 | } 60 | } 61 | } 62 | 63 | } 64 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/actions/CaretPositionAction.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.actions; 8 | 9 | import org.a11y.utils.accprobe.accservice.AccessibilityServiceException; 10 | import org.a11y.utils.accprobe.accservice.AccessibilityServiceManager; 11 | import org.a11y.utils.accprobe.accservice.IAccessibilityService; 12 | import org.a11y.utils.accprobe.accservice.core.win32.msaa.MsaaAccessibilityService; 13 | import org.a11y.utils.accprobe.views.AbstractViewPart; 14 | import org.a11y.utils.accprobe.views.ExplorerView; 15 | import org.eclipse.jface.action.Action; 16 | import org.eclipse.jface.action.IAction; 17 | import org.eclipse.ui.IWorkbenchWindow; 18 | 19 | 20 | public class CaretPositionAction extends Action 21 | { 22 | 23 | public static final String ID = "org.a11y.utils.accprobe.actions.KeyboardFocusAction"; 24 | 25 | private IWorkbenchWindow window; 26 | private IAccessibilityService accService = null; 27 | 28 | public CaretPositionAction (IWorkbenchWindow window, String label) { 29 | super(label, IAction.AS_CHECK_BOX); 30 | this.window = window; 31 | try { 32 | accService = AccessibilityServiceManager.getInstance().getAccessibilityService( 33 | MsaaAccessibilityService.MSAA_ACCSERVICE_NAME); 34 | }catch (AccessibilityServiceException e) { 35 | // TODO Auto-generated catch block 36 | e.printStackTrace(); 37 | } 38 | // The id is used to refer to the action in a menu or toolbar 39 | setId(ID); 40 | //setChecked(true); //default value is true; 41 | } 42 | 43 | public void run () { 44 | ExplorerView view = (ExplorerView) AbstractViewPart.findView(ExplorerView.ID); 45 | if (accService != null && accService instanceof MsaaAccessibilityService) { 46 | if (isChecked()) { 47 | if(getText().equals("&Caret position")){ 48 | if(!view.registerCaretEventListener()){ 49 | setChecked(false); 50 | } 51 | } 52 | }else { 53 | if(getText().equals("&Caret position")){ 54 | view.removeCaretEventListener(); 55 | } 56 | } 57 | } 58 | 59 | } 60 | 61 | } 62 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/actions/ClearEventLogAction.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.actions; 8 | 9 | import org.a11y.utils.accprobe.views.EventMonitorView; 10 | import org.eclipse.jface.action.IAction; 11 | 12 | 13 | public class ClearEventLogAction extends AbstractAction { 14 | 15 | public ClearEventLogAction() { 16 | super(); 17 | } 18 | 19 | public void run(IAction action) { 20 | if (view instanceof EventMonitorView) { 21 | EventMonitorView ev = (EventMonitorView) view; 22 | ev.clearEventsList(); 23 | } 24 | 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/actions/CollapseAllAction.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.actions; 9 | 10 | import org.a11y.utils.accprobe.providers.ExplorerViewNode; 11 | import org.a11y.utils.accprobe.views.ExplorerView; 12 | import org.a11y.utils.accprobe.views.PropertiesView; 13 | import org.eclipse.jface.action.IAction; 14 | import org.eclipse.swt.widgets.TreeItem; 15 | 16 | public class CollapseAllAction extends AbstractAction { 17 | 18 | public CollapseAllAction() { 19 | super(); 20 | } 21 | 22 | public void run(IAction action) { 23 | if (view instanceof ExplorerView) { 24 | ExplorerView ev = (ExplorerView) view; 25 | TreeItem[] items = ev.getTreeViewer().getTree().getItems(); 26 | for (int i=0;i 0) { 40 | File f = new File(filename); 41 | if (f.exists()) { 42 | boolean ok = MessageDialog.openConfirm( 43 | shell, "Confirm overwrite", 44 | "This file will be overwritten.\n Are you sure?"); 45 | if (ok) { 46 | ev.setLogEvents(filename, true); 47 | } else { 48 | ev.setLogEvents(null, false); 49 | action.setChecked(false); 50 | } 51 | }else { 52 | ev.setLogEvents(filename, true); 53 | } 54 | } 55 | }else { 56 | ev.setLogEvents(null, false); 57 | } 58 | } 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/actions/StartEventCaptureAction.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.actions; 9 | 10 | import org.a11y.utils.accprobe.views.EventMonitorView; 11 | import org.eclipse.jface.action.IAction; 12 | 13 | 14 | public class StartEventCaptureAction extends AbstractAction 15 | { 16 | 17 | public static final String ID = "org.a11y.utils.accprobe.actions.StartEventCaptureAction"; 18 | 19 | public StartEventCaptureAction () { 20 | super(); 21 | } 22 | 23 | public void run (IAction action) { 24 | if (view instanceof EventMonitorView) { 25 | EventMonitorView ev = (EventMonitorView) view; 26 | ev.enableToolbarButton(ID, false); 27 | ev.enableToolbarButton(StopEventCaptureAction.ID, true); 28 | ev.enableToolbarButton(PauseEventDisplayAction.ID, ev.isDisplayEvents()); 29 | ev.enableToolbarButton(ResumeEventDisplayAction.ID, !ev.isDisplayEvents()); 30 | ev.setCaptureEvents(true); 31 | ev.registerEventListener(); 32 | } 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/actions/StopEventCaptureAction.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.actions; 9 | 10 | import org.a11y.utils.accprobe.views.EventMonitorView; 11 | import org.eclipse.jface.action.IAction; 12 | 13 | 14 | public class StopEventCaptureAction extends AbstractAction 15 | { 16 | 17 | public static final String ID = "org.a11y.utils.accprobe.actions.StopEventCaptureAction"; 18 | 19 | public StopEventCaptureAction () { 20 | super(); 21 | } 22 | 23 | public void run (IAction action) { 24 | if (view instanceof EventMonitorView) { 25 | EventMonitorView ev = (EventMonitorView) view; 26 | ev.enableToolbarButton(StartEventCaptureAction.ID, true); 27 | ev.enableToolbarButton(ID, false); 28 | ev.enableToolbarButton(PauseEventDisplayAction.ID, false); 29 | ev.enableToolbarButton(ResumeEventDisplayAction.ID, false); 30 | ev.removeEventListener(); 31 | ev.setCaptureEvents(false); 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/advisors/ApplicationWorkbenchAdvisor.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.advisors; 8 | 9 | import org.eclipse.ui.application.IWorkbenchConfigurer; 10 | import org.eclipse.ui.application.IWorkbenchWindowConfigurer; 11 | import org.eclipse.ui.application.WorkbenchAdvisor; 12 | import org.eclipse.ui.application.WorkbenchWindowAdvisor; 13 | 14 | /** 15 | * This workbench advisor creates the window advisor, and specifies the 16 | * perspective id for the initial window. 17 | */ 18 | public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor { 19 | 20 | private static final String PERSPECTIVE_ID = "org.a11y.utils.accprobe.perspective"; 21 | 22 | public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor( 23 | IWorkbenchWindowConfigurer configurer) { 24 | return new ApplicationWorkbenchWindowAdvisor(configurer); 25 | } 26 | 27 | public String getInitialWindowPerspectiveId() { 28 | return PERSPECTIVE_ID; 29 | } 30 | 31 | @Override 32 | public void initialize(IWorkbenchConfigurer configurer) { 33 | configurer.setSaveAndRestore(true); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/advisors/ApplicationWorkbenchWindowAdvisor.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.advisors; 9 | 10 | import org.a11y.utils.accprobe.accservice.IAccessibilityService; 11 | import org.eclipse.swt.graphics.Point; 12 | import org.eclipse.ui.application.ActionBarAdvisor; 13 | import org.eclipse.ui.application.IActionBarConfigurer; 14 | import org.eclipse.ui.application.IWorkbenchWindowConfigurer; 15 | import org.eclipse.ui.application.WorkbenchWindowAdvisor; 16 | 17 | 18 | public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor 19 | { 20 | 21 | public static final String TITLE = "Accessibility Probe"; 22 | 23 | private int hwnd; 24 | 25 | private IAccessibilityService accService = null; 26 | 27 | private IWorkbenchWindowConfigurer windowConfigurer = null; 28 | 29 | public ApplicationWorkbenchWindowAdvisor (IWorkbenchWindowConfigurer configurer) { 30 | super(configurer); 31 | configurer.setShowProgressIndicator(true); 32 | windowConfigurer = configurer; 33 | } 34 | 35 | public ActionBarAdvisor createActionBarAdvisor (IActionBarConfigurer configurer) { 36 | return new ApplicationActionBarAdvisor(configurer); 37 | } 38 | 39 | public void preWindowOpen () { 40 | windowConfigurer.setInitialSize(new Point(800, 600)); 41 | windowConfigurer.setShowCoolBar(true); 42 | windowConfigurer.setShowStatusLine(false); 43 | windowConfigurer.setTitle(TITLE); 44 | } 45 | 46 | public void dispose () { 47 | // if (accService != null) { 48 | // accService.getWindowService().setWindowNoTop(hwnd); 49 | // } 50 | super.dispose(); 51 | } 52 | 53 | public int getHwnd () { 54 | return hwnd; 55 | } 56 | 57 | public void setHwnd (int hwnd) { 58 | this.hwnd = hwnd; 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/providers/EventFilterLabelProvider.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.providers; 8 | 9 | import org.a11y.utils.accprobe.core.model.events.ModelEventType; 10 | import org.eclipse.jface.viewers.ITableLabelProvider; 11 | import org.eclipse.jface.viewers.LabelProvider; 12 | import org.eclipse.swt.graphics.Image; 13 | 14 | 15 | public class EventFilterLabelProvider extends LabelProvider 16 | implements ITableLabelProvider 17 | { 18 | 19 | public static final int EVENT_COL = 0; 20 | 21 | public Image getColumnImage(Object element, int columnIndex) { 22 | // TODO Auto-generated method stub 23 | return null; 24 | } 25 | 26 | public String getColumnText(Object element, int index) { 27 | String result = ""; 28 | if (element instanceof ModelEventType) { 29 | if (index == EVENT_COL) { 30 | result = ((ModelEventType) element).getEventName(); 31 | } 32 | } 33 | return result; 34 | } 35 | 36 | public String getText (Object element) { 37 | return getColumnText(element, EVENT_COL); 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/providers/EventPreferencesLabelProvider.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.providers; 8 | 9 | import org.eclipse.jface.viewers.ITableLabelProvider; 10 | import org.eclipse.jface.viewers.LabelProvider; 11 | import org.eclipse.swt.graphics.Image; 12 | 13 | public class EventPreferencesLabelProvider extends LabelProvider implements 14 | ITableLabelProvider { 15 | 16 | public static final int COLUMN_NAMES_COL = 0; 17 | 18 | public Image getColumnImage(Object element, int columnIndex) { 19 | return null; 20 | } 21 | 22 | public String getColumnText(Object element, int index) { 23 | String result = ""; 24 | if (element instanceof String) { 25 | if (index == COLUMN_NAMES_COL) { 26 | result = element.toString(); 27 | } 28 | } 29 | return result; 30 | } 31 | 32 | public String getText(Object element) { 33 | return getColumnText(element, COLUMN_NAMES_COL); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/providers/EventTableContentProvider.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.providers; 9 | 10 | import org.a11y.utils.accprobe.views.EventMonitorView; 11 | import org.eclipse.jface.viewers.ArrayContentProvider; 12 | import org.eclipse.jface.viewers.Viewer; 13 | 14 | 15 | public class EventTableContentProvider extends ArrayContentProvider 16 | { 17 | 18 | 19 | private EventMonitorView ev = null; 20 | 21 | public EventTableContentProvider (EventMonitorView view) { 22 | ev = view; 23 | } 24 | 25 | public Object[] getElements (Object element) { 26 | return ev.getEvents().toArray(); 27 | } 28 | 29 | /* 30 | * input is assumed to be a ExplorerViewNode (non-Javadoc) 31 | * 32 | * @see org.eclipse.jface.viewers.ArrayContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, 33 | * java.lang.Object, java.lang.Object) 34 | */ 35 | public void inputChanged (Viewer viewer, Object oldInput, Object newInput) { 36 | if (oldInput != null) { 37 | ev.removeEventListener(oldInput); 38 | } 39 | if (newInput != null) { 40 | ev.registerEventListener(newInput); 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/providers/EventTableLabelProvider.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | * 4 | * 5 | * 6 | * 7 | * 8 | * Contributors: 9 | * IBM Corporation - initial API and implementation 10 | *******************************************************************************/ 11 | 12 | package org.a11y.utils.accprobe.providers; 13 | 14 | import java.text.SimpleDateFormat; 15 | import java.util.Date; 16 | 17 | import org.a11y.utils.accprobe.views.EventMonitorView; 18 | import org.eclipse.jface.viewers.ITableLabelProvider; 19 | import org.eclipse.jface.viewers.LabelProvider; 20 | import org.eclipse.swt.graphics.Image; 21 | import org.eclipse.swt.widgets.Table; 22 | 23 | public class EventTableLabelProvider extends LabelProvider implements 24 | ITableLabelProvider { 25 | 26 | protected Table t; 27 | 28 | private SimpleDateFormat formatter; 29 | 30 | private String pattern = "H:mm:ss:SSS"; // 18:15:55:624 31 | 32 | public EventTableLabelProvider(Table t) { 33 | this.t = t; 34 | formatter = new SimpleDateFormat(pattern); 35 | } 36 | 37 | public Image getColumnImage(Object element, int columnIndex) { 38 | return null; 39 | } 40 | 41 | public String getColumnText(Object element, int columnIndex) { 42 | String result = ""; 43 | if (element instanceof EventRecord) { 44 | EventRecord record = (EventRecord) element; 45 | String columnHeader = t.getColumn(columnIndex).getText(); 46 | if (columnHeader != null 47 | && columnHeader.equals(EventMonitorView.NAME_COLUMN)) { 48 | result = record.getName(); 49 | } else if (columnHeader != null 50 | && columnHeader.equals(EventMonitorView.ROLE_COLUMN)) { 51 | result = record.getRole(); 52 | } else if (columnHeader != null 53 | && columnHeader.equals(EventMonitorView.STATE_COLUMN)) { 54 | result = record.getState(); 55 | } else if (columnHeader != null 56 | && columnHeader.equals(EventMonitorView.TYPE_COLUMN)) { 57 | result = record.getType(); 58 | } else if (columnHeader != null 59 | && columnHeader.equals(EventMonitorView.TIMESTAMP_COLUMN)) { 60 | long time = record.getTimestamp(); 61 | result = formatter.format(new Date(time)); 62 | } else if (columnHeader != null 63 | && columnHeader.equals(EventMonitorView.MISC_DATA_COLUMN)) { 64 | result = record.getMiscData(); 65 | } 66 | 67 | } 68 | return result; 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/providers/ExplorerViewLabelProvider.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.providers; 9 | 10 | import org.a11y.utils.accprobe.Activator; 11 | import org.a11y.utils.accprobe.accservice.core.IAccessibleElement; 12 | import org.a11y.utils.accprobe.core.model.DefaultModelFactory; 13 | import org.a11y.utils.accprobe.core.model.IModel; 14 | import org.a11y.utils.accprobe.views.ExplorerView; 15 | import org.eclipse.jface.resource.ImageDescriptor; 16 | import org.eclipse.jface.viewers.IBaseLabelProvider; 17 | import org.eclipse.jface.viewers.LabelProvider; 18 | import org.eclipse.swt.graphics.Image; 19 | 20 | 21 | public class ExplorerViewLabelProvider extends LabelProvider 22 | implements IBaseLabelProvider 23 | { 24 | 25 | /** 26 | * 27 | */ 28 | protected final ExplorerView view; 29 | 30 | public static final String accessibleElementIcon = "/icons/methpro_obj.gif"; 31 | 32 | public String getText(Object comp) { 33 | String result = null; 34 | if (comp instanceof ExplorerViewNode) { 35 | try { 36 | ExplorerViewNode compNode = (ExplorerViewNode) comp; 37 | Object obj = compNode.getUnderlyingComponent(); 38 | String modelType = compNode.getModelType(); 39 | IModel model = DefaultModelFactory.getInstance().resolveModel(modelType); 40 | result = model.getNodeLocator().locate(obj, obj); 41 | } catch (Exception e) { 42 | e.printStackTrace(); 43 | } 44 | } 45 | 46 | if (result != null && result.startsWith("/")) { 47 | result = result.substring(1); 48 | } 49 | return result == null ? super.getText(comp) : result; 50 | } 51 | 52 | public Image getImage(Object comp) { 53 | Object element = ((ExplorerViewNode) comp).getUnderlyingComponent(); 54 | ImageDescriptor id = null; 55 | Image icon = null; 56 | if (element instanceof IAccessibleElement) { 57 | id = Activator.getImageDescriptor(accessibleElementIcon); 58 | } 59 | if (id == null) { 60 | id = Activator.getImageDescriptor(Activator.DEFAULT_IMAGE_NAME); 61 | } 62 | icon = id.createImage(); 63 | return icon; 64 | } 65 | 66 | public ExplorerViewLabelProvider(ExplorerView part) { 67 | super(); 68 | view = part; 69 | } 70 | 71 | } 72 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/providers/PropertiesFilterLabelProvider.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | package org.a11y.utils.accprobe.providers; 8 | 9 | import java.util.Map.Entry; 10 | 11 | import org.eclipse.jface.viewers.IBaseLabelProvider; 12 | import org.eclipse.jface.viewers.LabelProvider; 13 | import org.eclipse.swt.graphics.Image; 14 | 15 | public class PropertiesFilterLabelProvider extends LabelProvider implements 16 | IBaseLabelProvider { 17 | 18 | 19 | public static final int PROPERTY_COL = 0; 20 | 21 | 22 | public PropertiesFilterLabelProvider() { 23 | super(); 24 | } 25 | 26 | public Image getColumnImage(Object element, int index) { 27 | // TODO Auto-generated method stub 28 | return null; 29 | } 30 | 31 | public String getText(Object element) { 32 | String result = ""; 33 | if (element instanceof Entry) { 34 | result = (String) ((Entry)element).getKey(); 35 | } 36 | return result; 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/providers/PropertiesViewLabelProvider.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.providers; 9 | 10 | import java.util.Map.Entry; 11 | 12 | import org.a11y.utils.accprobe.GuiUtils; 13 | import org.a11y.utils.accprobe.accservice.core.IAccessibleElement; 14 | import org.a11y.utils.accprobe.filters.PropertyFilter; 15 | import org.eclipse.jface.viewers.ITableLabelProvider; 16 | import org.eclipse.jface.viewers.LabelProvider; 17 | import org.eclipse.swt.graphics.Image; 18 | 19 | 20 | public class PropertiesViewLabelProvider extends LabelProvider 21 | implements ITableLabelProvider { 22 | 23 | public static final int NAME_COLUMN = 0; 24 | 25 | public static final int VALUE_COLUMN = 1; 26 | 27 | public PropertiesViewLabelProvider() { 28 | super(); 29 | } 30 | 31 | public Image getColumnImage(Object element, int columnIndex) { 32 | return null; 33 | } 34 | 35 | public String getColumnText(Object element, int columnIndex) { 36 | String result = ""; 37 | 38 | if (element instanceof Entry) { 39 | Entry entry = (Entry) element; 40 | String key = (String) entry.getKey(); 41 | switch (columnIndex) { 42 | case NAME_COLUMN: 43 | result = (String) entry.getKey(); 44 | break; 45 | case VALUE_COLUMN: 46 | Object val = entry.getValue(); 47 | if( PropertyFilter.isPropertyGroup(entry)){ 48 | result = null; 49 | }else if (val != null) { 50 | Class type = val.getClass(); 51 | if (type.isArray()&& !type.getComponentType().isPrimitive()) { 52 | String typeName = type.getComponentType().getName(); 53 | String shortName = typeName.substring(typeName.lastIndexOf('.') + 1); 54 | result = shortName + "[" + ((Object[]) val).length + "]"; 55 | } else if (GuiUtils.isPrimitive(type) || GuiUtils.hasAcceptableToString(type)) { 56 | result = val.toString(); 57 | } else { 58 | String typeName = type.getName(); 59 | result = "class " + typeName.substring(typeName.lastIndexOf('.') + 1); 60 | if(val instanceof IAccessibleElement){ 61 | result = result + "="+ val.toString(); 62 | } 63 | } 64 | } 65 | break; 66 | } 67 | } 68 | 69 | return result; 70 | } 71 | 72 | } 73 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/providers/PropertyGroup.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | * 4 | * 5 | * 6 | * 7 | * 8 | * Contributors: 9 | * IBM Corporation - initial API and implementation 10 | *******************************************************************************/ 11 | package org.a11y.utils.accprobe.providers; 12 | 13 | import java.util.HashMap; 14 | import java.util.Map; 15 | 16 | import org.a11y.utils.accprobe.accservice.core.IAccessibleElement; 17 | import org.a11y.utils.accprobe.accservice.core.win32.ia2.IA2Accessible; 18 | import org.a11y.utils.accprobe.accservice.core.win32.msaa.MsaaAccessible; 19 | 20 | public class PropertyGroup { 21 | 22 | private String propGroupName =null; 23 | 24 | public PropertyGroup (String name){ 25 | this.propGroupName = name; 26 | } 27 | 28 | public String getName (){ 29 | return propGroupName; 30 | } 31 | 32 | public Map getProperties(Object element){ 33 | HashMap pMap = new HashMap(); 34 | if(element instanceof ExplorerViewNode){ 35 | if(getName().equals("ia2")) { 36 | pMap.put("ia2",(IA2Accessible)((ExplorerViewNode) element).getUnderlyingComponent()); 37 | }else if(getName().equals("msaa")) { 38 | pMap.put("msaa",(MsaaAccessible)((ExplorerViewNode) element).getUnderlyingComponent()); 39 | }else if(getName().equals("accservice")) { 40 | pMap.put("accservice",(IAccessibleElement) ((ExplorerViewNode) element).getUnderlyingComponent()); 41 | } 42 | } 43 | return pMap; 44 | } 45 | 46 | } 47 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/sorters/AbstractViewerSorter.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.sorters; 9 | 10 | import java.text.Collator; 11 | 12 | import org.eclipse.jface.viewers.ViewerSorter; 13 | 14 | public class AbstractViewerSorter extends ViewerSorter 15 | { 16 | 17 | 18 | 19 | protected int sortingField; 20 | 21 | private boolean ascending; 22 | 23 | public AbstractViewerSorter () { 24 | super(); 25 | } 26 | public AbstractViewerSorter (Collator collator) { 27 | super(collator); 28 | } 29 | 30 | protected int performIntCompare (int i1, int i2) { 31 | if (ascending) { 32 | return i1 - i2; 33 | }else { 34 | return i2 - i1; 35 | } 36 | } 37 | 38 | protected int performLongCompare (long l1, long l2) { 39 | if (ascending) { 40 | return (int) (l1 - l2); 41 | }else { 42 | return (int) (l2 - l1); 43 | } 44 | } 45 | 46 | protected int performStringCompare (String s1, String s2) { 47 | if (ascending) { 48 | return s1.compareTo(s2); 49 | }else { 50 | return s2.compareTo(s1); 51 | } 52 | } 53 | 54 | /** 55 | * @param sortingField The sortingField to set. 56 | */ 57 | public void setSortingField (int sortingField) { 58 | if (this.sortingField == sortingField) { 59 | ascending = !ascending; 60 | }else { 61 | ascending = true; 62 | } 63 | this.sortingField = sortingField; 64 | } 65 | 66 | public void setSortingField (int sortBy, boolean direction) { 67 | this.sortingField = sortBy; 68 | ascending = direction; 69 | } 70 | 71 | public boolean isSorterProperty (Object element, String property) { 72 | return true; 73 | } 74 | 75 | 76 | public boolean isAscending () { 77 | return ascending; 78 | } 79 | 80 | 81 | public void setAscending (boolean ascending) { 82 | this.ascending = ascending; 83 | } 84 | } -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/sorters/EventTableViewerSorter.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.sorters; 9 | 10 | import java.text.Collator; 11 | 12 | import org.a11y.utils.accprobe.providers.EventRecord; 13 | import org.eclipse.jface.viewers.Viewer; 14 | 15 | 16 | public class EventTableViewerSorter extends AbstractViewerSorter 17 | { 18 | 19 | public static final int ROLE = 0; 20 | 21 | public static final int NAME = 1; 22 | 23 | public static final int TYPE = 2; 24 | 25 | public static final int TIMESTAMP = 3; 26 | 27 | public static final int STATE = 4; 28 | 29 | public static final int MISC = 5; 30 | 31 | 32 | public EventTableViewerSorter(Collator collator) { 33 | super(collator); 34 | setSortingField(TIMESTAMP, false); 35 | } 36 | 37 | 38 | public EventTableViewerSorter () { 39 | super(); 40 | setSortingField(TIMESTAMP, false); 41 | } 42 | 43 | 44 | public int compare (Viewer viewer, Object e1, Object e2) { 45 | String s1 = null, s2 = null; 46 | long l1, l2; 47 | EventRecord r1 = (EventRecord) e1; 48 | EventRecord r2 = (EventRecord) e2; 49 | switch (sortingField) { 50 | case NAME: 51 | s1 = r1.getName(); 52 | s2 = r2.getName(); 53 | return performStringCompare(s1, s2); 54 | case ROLE: 55 | s1 = r1.getRole(); 56 | s2 = r2.getRole(); 57 | return performStringCompare(s1, s2); 58 | case STATE: 59 | s1 = r1.getState(); 60 | s2 = r2.getState(); 61 | return performStringCompare(s1, s2); 62 | case TYPE: 63 | s1 = r1.getType(); 64 | s2 = r2.getType(); 65 | return performStringCompare(s1, s2); 66 | case TIMESTAMP: 67 | l1 = r1.getTimestamp(); 68 | l2 = r2.getTimestamp(); 69 | return performLongCompare(l1, l2); 70 | case MISC: 71 | s1 = r1.getMiscData(); 72 | s2 = r2.getMiscData(); 73 | return performStringCompare(s1, s2); 74 | } 75 | return 0; 76 | } 77 | 78 | } 79 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/views/PartAdapter.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.views; 9 | 10 | import org.eclipse.ui.IPartListener; 11 | import org.eclipse.ui.IWorkbenchPart; 12 | 13 | public class PartAdapter implements IPartListener 14 | { 15 | 16 | public void partActivated (IWorkbenchPart part) { 17 | } 18 | 19 | public void partBroughtToTop (IWorkbenchPart part) { 20 | } 21 | 22 | public void partClosed (IWorkbenchPart part) { 23 | } 24 | 25 | public void partDeactivated (IWorkbenchPart part) { 26 | } 27 | 28 | public void partOpened (IWorkbenchPart part) { 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /org.a11y.utils.accprobe/src/org/a11y/utils/accprobe/views/ViewerControlAdapter.java: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2004, 2010 IBM Corporation. 3 | 4 | * Contributors: 5 | * IBM Corporation - initial API and implementation 6 | *******************************************************************************/ 7 | 8 | package org.a11y.utils.accprobe.views; 9 | 10 | import org.eclipse.swt.events.ControlAdapter; 11 | import org.eclipse.swt.events.ControlEvent; 12 | import org.eclipse.swt.graphics.Point; 13 | import org.eclipse.swt.widgets.Control; 14 | 15 | /** 16 | * @author barryf 17 | * 18 | */ 19 | public class ViewerControlAdapter extends ControlAdapter 20 | { 21 | 22 | private Control control; 23 | 24 | public ViewerControlAdapter (Control c) { 25 | control = c; 26 | } 27 | 28 | public void controlResized (ControlEvent e) { 29 | Point s = ((Control) e.getSource()).getSize(); 30 | control.setSize(s); 31 | } 32 | } 33 | --------------------------------------------------------------------------------