| /* |
| * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved. |
| * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
| * |
| * This code is free software; you can redistribute it and/or modify it |
| * under the terms of the GNU General Public License version 2 only, as |
| * published by the Free Software Foundation. Oracle designates this |
| * particular file as subject to the "Classpath" exception as provided |
| * by Oracle in the LICENSE file that accompanied this code. |
| * |
| * This code is distributed in the hope that it will be useful, but WITHOUT |
| * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
| * version 2 for more details (a copy is included in the LICENSE file that |
| * accompanied this code). |
| * |
| * You should have received a copy of the GNU General Public License version |
| * 2 along with this work; if not, write to the Free Software Foundation, |
| * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
| * |
| * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
| * or visit www.oracle.com if you need additional information or have any |
| * questions. |
| */ |
| |
| /* |
| * A class to manage firing Accessibility events to Windows AT |
| */ |
| |
| #ifndef __AccessBridgeEventHandler_H__ |
| #define __AccessBridgeEventHandler_H__ |
| |
| #include "AccessBridgeCallbacks.h" |
| #include "AccessBridgePackages.h" |
| |
| class WinAccessBridge; |
| |
| class AccessBridgeEventHandler { |
| long javaEventMask; |
| long accessibilityEventMask; |
| |
| AccessBridge_PropertyChangeFP propertyChangeFP; |
| AccessBridge_JavaShutdownFP javaShutdownFP; |
| AccessBridge_FocusGainedFP focusGainedFP; |
| AccessBridge_FocusLostFP focusLostFP; |
| AccessBridge_CaretUpdateFP caretUpdateFP; |
| AccessBridge_MouseClickedFP mouseClickedFP; |
| AccessBridge_MouseEnteredFP mouseEnteredFP; |
| AccessBridge_MouseExitedFP mouseExitedFP; |
| AccessBridge_MousePressedFP mousePressedFP; |
| AccessBridge_MouseReleasedFP mouseReleasedFP; |
| AccessBridge_MenuCanceledFP menuCanceledFP; |
| AccessBridge_MenuDeselectedFP menuDeselectedFP; |
| AccessBridge_MenuSelectedFP menuSelectedFP; |
| AccessBridge_PopupMenuCanceledFP popupMenuCanceledFP; |
| AccessBridge_PopupMenuWillBecomeInvisibleFP popupMenuWillBecomeInvisibleFP; |
| AccessBridge_PopupMenuWillBecomeVisibleFP popupMenuWillBecomeVisibleFP; |
| |
| AccessBridge_PropertyNameChangeFP propertyNameChangeFP; |
| AccessBridge_PropertyDescriptionChangeFP propertyDescriptionChangeFP; |
| AccessBridge_PropertyStateChangeFP propertyStateChangeFP; |
| AccessBridge_PropertyValueChangeFP propertyValueChangeFP; |
| AccessBridge_PropertySelectionChangeFP propertySelectionChangeFP; |
| AccessBridge_PropertyTextChangeFP propertyTextChangeFP; |
| AccessBridge_PropertyCaretChangeFP propertyCaretChangeFP; |
| AccessBridge_PropertyVisibleDataChangeFP propertyVisibleDataChangeFP; |
| AccessBridge_PropertyChildChangeFP propertyChildChangeFP; |
| AccessBridge_PropertyActiveDescendentChangeFP propertyActiveDescendentChangeFP; |
| |
| AccessBridge_PropertyTableModelChangeFP propertyTableModelChangeFP; |
| |
| |
| |
| public: |
| AccessBridgeEventHandler(); |
| ~AccessBridgeEventHandler(); |
| long getJavaEventMask() {return javaEventMask;}; |
| long getAccessibilityEventMask() {return accessibilityEventMask;}; |
| |
| // ------- Registry methods |
| void setPropertyChangeFP(AccessBridge_PropertyChangeFP fp, WinAccessBridge *wab); |
| void setJavaShutdownFP(AccessBridge_JavaShutdownFP fp, WinAccessBridge *wab); |
| void setFocusGainedFP(AccessBridge_FocusGainedFP fp, WinAccessBridge *wab); |
| void setFocusLostFP(AccessBridge_FocusLostFP fp, WinAccessBridge *wab); |
| void setCaretUpdateFP(AccessBridge_CaretUpdateFP fp, WinAccessBridge *wab); |
| void setMouseClickedFP(AccessBridge_MouseClickedFP fp, WinAccessBridge *wab); |
| void setMouseEnteredFP(AccessBridge_MouseEnteredFP fp, WinAccessBridge *wab); |
| void setMouseExitedFP(AccessBridge_MouseExitedFP fp, WinAccessBridge *wab); |
| void setMousePressedFP(AccessBridge_MousePressedFP fp, WinAccessBridge *wab); |
| void setMouseReleasedFP(AccessBridge_MouseReleasedFP fp, WinAccessBridge *wab); |
| void setMenuCanceledFP(AccessBridge_MenuCanceledFP fp, WinAccessBridge *wab); |
| void setMenuDeselectedFP(AccessBridge_MenuDeselectedFP fp, WinAccessBridge *wab); |
| void setMenuSelectedFP(AccessBridge_MenuSelectedFP fp, WinAccessBridge *wab); |
| void setPopupMenuCanceledFP(AccessBridge_PopupMenuCanceledFP fp, WinAccessBridge *wab); |
| void setPopupMenuWillBecomeInvisibleFP(AccessBridge_PopupMenuWillBecomeInvisibleFP fp, |
| WinAccessBridge *wab); |
| void setPopupMenuWillBecomeVisibleFP(AccessBridge_PopupMenuWillBecomeVisibleFP fp, |
| WinAccessBridge *wab); |
| |
| void setPropertyNameChangeFP(AccessBridge_PropertyNameChangeFP fp, WinAccessBridge *wab); |
| void setPropertyDescriptionChangeFP(AccessBridge_PropertyDescriptionChangeFP fp, |
| WinAccessBridge *wab); |
| void setPropertyStateChangeFP(AccessBridge_PropertyStateChangeFP fp, WinAccessBridge *wab); |
| void setPropertyValueChangeFP(AccessBridge_PropertyValueChangeFP fp, WinAccessBridge *wab); |
| void setPropertySelectionChangeFP(AccessBridge_PropertySelectionChangeFP fp, |
| WinAccessBridge *wab); |
| void setPropertyTextChangeFP(AccessBridge_PropertyTextChangeFP fp, WinAccessBridge *wab); |
| void setPropertyCaretChangeFP(AccessBridge_PropertyCaretChangeFP fp, WinAccessBridge *wab); |
| void setPropertyVisibleDataChangeFP(AccessBridge_PropertyVisibleDataChangeFP fp, |
| WinAccessBridge *wab); |
| void setPropertyChildChangeFP(AccessBridge_PropertyChildChangeFP fp, WinAccessBridge *wab); |
| void setPropertyActiveDescendentChangeFP(AccessBridge_PropertyActiveDescendentChangeFP fp, |
| WinAccessBridge *wab); |
| |
| void setPropertyTableModelChangeFP(AccessBridge_PropertyTableModelChangeFP fp, |
| WinAccessBridge *wab); |
| |
| // ------- Event notification methods |
| void firePropertyChange(long vmID, JOBJECT64 event, JOBJECT64 source, |
| wchar_t *property, wchar_t *oldName, wchar_t *newName); |
| void fireJavaShutdown(long vmID); |
| void fireFocusGained(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void fireFocusLost(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void fireCaretUpdate(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void fireMouseClicked(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void fireMouseEntered(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void fireMouseExited(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void fireMousePressed(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void fireMouseReleased(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void fireMenuCanceled(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void fireMenuDeselected(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void fireMenuSelected(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void firePopupMenuCanceled(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void firePopupMenuWillBecomeInvisible(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void firePopupMenuWillBecomeVisible(long vmID, JOBJECT64 event, JOBJECT64 source); |
| |
| void firePropertyNameChange(long vmID, JOBJECT64 event, JOBJECT64 source, |
| wchar_t *oldName, wchar_t *newName); |
| void firePropertyDescriptionChange(long vmID, JOBJECT64 event, JOBJECT64 source, |
| wchar_t *oldDescription, wchar_t *newDescription); |
| void firePropertyStateChange(long vmID, JOBJECT64 event, JOBJECT64 source, |
| wchar_t *oldState, wchar_t *newState); |
| void firePropertyValueChange(long vmID, JOBJECT64 event, JOBJECT64 source, |
| wchar_t *oldValue, wchar_t *newValue); |
| void firePropertySelectionChange(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void firePropertyTextChange(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void firePropertyCaretChange(long vmID, JOBJECT64 event, JOBJECT64 source, |
| int oldPosition, int newPosition); |
| void firePropertyVisibleDataChange(long vmID, JOBJECT64 event, JOBJECT64 source); |
| void firePropertyChildChange(long vmID, JOBJECT64 event, JOBJECT64 source, |
| JOBJECT64 oldChild, JOBJECT64 newChild); |
| void firePropertyActiveDescendentChange(long vmID, JOBJECT64 event, JOBJECT64 source, |
| JOBJECT64 oldActiveDescendent, JOBJECT64 newActiveDescendent); |
| |
| void firePropertyTableModelChange(long vmID, JOBJECT64 event, JOBJECT64 source, |
| wchar_t *oldValue, wchar_t *newValue); |
| |
| }; |
| |
| |
| #endif |