Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/openjdk-multiarch-jdk8u
Path: blob/aarch64-shenandoah-jdk8u272-b10/jdk/src/windows/native/sun/bridge/AccessBridgeEventHandler.cpp
32287 views
1
/*
2
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
3
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4
*
5
* This code is free software; you can redistribute it and/or modify it
6
* under the terms of the GNU General Public License version 2 only, as
7
* published by the Free Software Foundation. Oracle designates this
8
* particular file as subject to the "Classpath" exception as provided
9
* by Oracle in the LICENSE file that accompanied this code.
10
*
11
* This code is distributed in the hope that it will be useful, but WITHOUT
12
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14
* version 2 for more details (a copy is included in the LICENSE file that
15
* accompanied this code).
16
*
17
* You should have received a copy of the GNU General Public License version
18
* 2 along with this work; if not, write to the Free Software Foundation,
19
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20
*
21
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22
* or visit www.oracle.com if you need additional information or have any
23
* questions.
24
*/
25
26
/*
27
* A class to manage firing Accessibility events to Windows AT
28
*/
29
30
#include "AccessBridgeDebug.h"
31
#include "AccessBridgeEventHandler.h"
32
#include "AccessBridgePackages.h"
33
#include "WinAccessBridge.h"
34
35
DEBUG_CODE(extern HWND theDialogWindow);
36
extern "C" {
37
DEBUG_CODE(void AppendToCallInfo(char *s));
38
}
39
40
41
// -----------------------------
42
43
/**
44
* Initialization. Set all callbacks to null
45
*/
46
AccessBridgeEventHandler::AccessBridgeEventHandler() {
47
javaEventMask = 0;
48
accessibilityEventMask = 0;
49
50
propertyChangeFP = (AccessBridge_PropertyChangeFP) NULL;
51
javaShutdownFP = (AccessBridge_JavaShutdownFP) NULL;
52
focusGainedFP = (AccessBridge_FocusGainedFP) NULL;
53
focusLostFP = (AccessBridge_FocusLostFP) NULL;
54
caretUpdateFP = (AccessBridge_CaretUpdateFP) NULL;
55
mouseClickedFP = (AccessBridge_MouseClickedFP) NULL;
56
mouseEnteredFP = (AccessBridge_MouseEnteredFP) NULL;
57
mouseExitedFP = (AccessBridge_MouseExitedFP) NULL;
58
mousePressedFP = (AccessBridge_MousePressedFP) NULL;
59
mouseReleasedFP = (AccessBridge_MouseReleasedFP) NULL;
60
menuCanceledFP = (AccessBridge_MenuCanceledFP) NULL;
61
menuDeselectedFP = (AccessBridge_MenuDeselectedFP) NULL;
62
menuSelectedFP = (AccessBridge_MenuSelectedFP) NULL;
63
popupMenuCanceledFP = (AccessBridge_PopupMenuCanceledFP) NULL;
64
popupMenuWillBecomeInvisibleFP = (AccessBridge_PopupMenuWillBecomeInvisibleFP) NULL;
65
popupMenuWillBecomeVisibleFP = (AccessBridge_PopupMenuWillBecomeVisibleFP) NULL;
66
67
propertyNameChangeFP = (AccessBridge_PropertyNameChangeFP) NULL;
68
propertyDescriptionChangeFP = (AccessBridge_PropertyDescriptionChangeFP) NULL;
69
propertyStateChangeFP = (AccessBridge_PropertyStateChangeFP) NULL;
70
propertyValueChangeFP = (AccessBridge_PropertyValueChangeFP) NULL;
71
propertySelectionChangeFP = (AccessBridge_PropertySelectionChangeFP) NULL;
72
propertyTextChangeFP = (AccessBridge_PropertyTextChangeFP) NULL;
73
propertyCaretChangeFP = (AccessBridge_PropertyCaretChangeFP) NULL;
74
propertyVisibleDataChangeFP = (AccessBridge_PropertyVisibleDataChangeFP) NULL;
75
propertyChildChangeFP = (AccessBridge_PropertyChildChangeFP) NULL;
76
propertyActiveDescendentChangeFP = (AccessBridge_PropertyActiveDescendentChangeFP) NULL;
77
78
propertyTableModelChangeFP = (AccessBridge_PropertyTableModelChangeFP) NULL;
79
80
}
81
82
/**
83
* Destruction.
84
*/
85
AccessBridgeEventHandler::~AccessBridgeEventHandler() {
86
}
87
88
89
// ------------ Event handling methods
90
91
#define SET_JAVA_EVENT_FP(function, eventFP, callbackFP, eventConstant) \
92
void AccessBridgeEventHandler::function(eventFP fp, WinAccessBridge *wab) { \
93
callbackFP = fp; \
94
if (fp != (eventFP) 0) { \
95
javaEventMask |= eventConstant; \
96
wab->addJavaEventNotification(eventConstant); \
97
} else { \
98
javaEventMask &= (0xFFFFFFFF - eventConstant); \
99
wab->removeJavaEventNotification(eventConstant); \
100
} \
101
}
102
103
SET_JAVA_EVENT_FP(setPropertyChangeFP, AccessBridge_PropertyChangeFP, propertyChangeFP, cPropertyChangeEvent)
104
SET_JAVA_EVENT_FP(setJavaShutdownFP, AccessBridge_JavaShutdownFP, javaShutdownFP, cJavaShutdownEvent)
105
SET_JAVA_EVENT_FP(setFocusGainedFP, AccessBridge_FocusGainedFP, focusGainedFP, cFocusGainedEvent)
106
SET_JAVA_EVENT_FP(setFocusLostFP, AccessBridge_FocusLostFP, focusLostFP, cFocusLostEvent)
107
SET_JAVA_EVENT_FP(setCaretUpdateFP, AccessBridge_CaretUpdateFP, caretUpdateFP, cCaretUpdateEvent)
108
SET_JAVA_EVENT_FP(setMouseClickedFP, AccessBridge_MouseClickedFP, mouseClickedFP, cMouseClickedEvent)
109
SET_JAVA_EVENT_FP(setMouseEnteredFP, AccessBridge_MouseEnteredFP, mouseEnteredFP, cMouseEnteredEvent)
110
SET_JAVA_EVENT_FP(setMouseExitedFP, AccessBridge_MouseExitedFP, mouseExitedFP, cMouseExitedEvent)
111
SET_JAVA_EVENT_FP(setMousePressedFP, AccessBridge_MousePressedFP, mousePressedFP, cMousePressedEvent)
112
SET_JAVA_EVENT_FP(setMouseReleasedFP, AccessBridge_MouseReleasedFP, mouseReleasedFP, cMouseReleasedEvent)
113
SET_JAVA_EVENT_FP(setMenuCanceledFP, AccessBridge_MenuCanceledFP, menuCanceledFP, cMenuCanceledEvent)
114
SET_JAVA_EVENT_FP(setMenuDeselectedFP, AccessBridge_MenuDeselectedFP, menuDeselectedFP, cMenuDeselectedEvent)
115
SET_JAVA_EVENT_FP(setMenuSelectedFP, AccessBridge_MenuSelectedFP, menuSelectedFP, cMenuSelectedEvent)
116
SET_JAVA_EVENT_FP(setPopupMenuCanceledFP, AccessBridge_PopupMenuCanceledFP, popupMenuCanceledFP, cPopupMenuCanceledEvent)
117
SET_JAVA_EVENT_FP(setPopupMenuWillBecomeInvisibleFP, AccessBridge_PopupMenuWillBecomeInvisibleFP, popupMenuWillBecomeInvisibleFP, cPopupMenuWillBecomeInvisibleEvent)
118
SET_JAVA_EVENT_FP(setPopupMenuWillBecomeVisibleFP, AccessBridge_PopupMenuWillBecomeVisibleFP, popupMenuWillBecomeVisibleFP, cPopupMenuWillBecomeVisibleEvent)
119
120
#define SET_ACCESSIBILITY_EVENT_FP(function, eventFP, callbackFP, eventConstant) \
121
void AccessBridgeEventHandler::function(eventFP fp, WinAccessBridge *wab) { \
122
callbackFP = fp; \
123
if (fp != (eventFP) 0) { \
124
accessibilityEventMask |= eventConstant; \
125
wab->addAccessibilityEventNotification(eventConstant); \
126
} else { \
127
accessibilityEventMask &= (0xFFFFFFFF - eventConstant); \
128
wab->removeAccessibilityEventNotification(eventConstant); \
129
} \
130
}
131
132
133
SET_ACCESSIBILITY_EVENT_FP(setPropertyNameChangeFP, AccessBridge_PropertyNameChangeFP, propertyNameChangeFP, cPropertyNameChangeEvent)
134
SET_ACCESSIBILITY_EVENT_FP(setPropertyDescriptionChangeFP, AccessBridge_PropertyDescriptionChangeFP, propertyDescriptionChangeFP, cPropertyDescriptionChangeEvent)
135
SET_ACCESSIBILITY_EVENT_FP(setPropertyStateChangeFP, AccessBridge_PropertyStateChangeFP, propertyStateChangeFP, cPropertyStateChangeEvent)
136
SET_ACCESSIBILITY_EVENT_FP(setPropertyValueChangeFP, AccessBridge_PropertyValueChangeFP, propertyValueChangeFP, cPropertyValueChangeEvent)
137
SET_ACCESSIBILITY_EVENT_FP(setPropertySelectionChangeFP, AccessBridge_PropertySelectionChangeFP, propertySelectionChangeFP, cPropertySelectionChangeEvent)
138
SET_ACCESSIBILITY_EVENT_FP(setPropertyTextChangeFP, AccessBridge_PropertyTextChangeFP, propertyTextChangeFP, cPropertyTextChangeEvent)
139
SET_ACCESSIBILITY_EVENT_FP(setPropertyCaretChangeFP, AccessBridge_PropertyCaretChangeFP, propertyCaretChangeFP, cPropertyCaretChangeEvent)
140
SET_ACCESSIBILITY_EVENT_FP(setPropertyVisibleDataChangeFP, AccessBridge_PropertyVisibleDataChangeFP, propertyVisibleDataChangeFP, cPropertyVisibleDataChangeEvent)
141
SET_ACCESSIBILITY_EVENT_FP(setPropertyChildChangeFP, AccessBridge_PropertyChildChangeFP, propertyChildChangeFP, cPropertyChildChangeEvent)
142
SET_ACCESSIBILITY_EVENT_FP(setPropertyActiveDescendentChangeFP, AccessBridge_PropertyActiveDescendentChangeFP, propertyActiveDescendentChangeFP, cPropertyActiveDescendentChangeEvent)
143
144
SET_ACCESSIBILITY_EVENT_FP(setPropertyTableModelChangeFP, AccessBridge_PropertyTableModelChangeFP, propertyTableModelChangeFP, cPropertyTableModelChangeEvent)
145
146
147
/**
148
* propertyChange - extends the Java method call to Windows:
149
* propertyChange(PropertyChangeEvent e, )
150
*
151
* Note: PropertyChangeEvent object passed in is a globalReference;
152
* It is critical that releaseJavaObject() be called
153
* on the PropertyChangeEvent once it is no longer needed,
154
* otherwise the JavaVM/JNI will suffer memory leaks
155
*
156
*/
157
void
158
AccessBridgeEventHandler::firePropertyChange(long vmID,
159
JOBJECT64 event, JOBJECT64 source,
160
wchar_t *property, wchar_t *oldName,
161
wchar_t *newName) {
162
DEBUG_CODE(char debugBuf[255]);
163
#ifdef ACCESSBRIDGE_ARCH_LEGACY // JOBJECT64 is jobject (32 bit pointer)
164
DEBUG_CODE(sprintf(debugBuf, "\r\nCalling firePropertyChange(%p, %p):\r\n", event, source));
165
#else // JOBJECT64 is jlong (64 bit)
166
DEBUG_CODE(sprintf(debugBuf, "\r\nCalling firePropertyChange(%016I64X, %016I64X):\r\n", event, source));
167
#endif
168
DEBUG_CODE(AppendToCallInfo(debugBuf));
169
170
if (propertyChangeFP != (AccessBridge_PropertyChangeFP) 0) {
171
propertyChangeFP(vmID, event, source, property, oldName, newName);
172
} else {
173
DEBUG_CODE(AppendToCallInfo("[ERROR]: propertyChangeFP == 0"));
174
}
175
}
176
177
178
/**
179
* FIRE_EVENT - macro for all fireXXX methods (which
180
* all are basically identical to one another...)
181
*
182
* Note: the event and source objects passed in are globalReferences;
183
* It is critical that releaseJavaObject() be called
184
* on them once they are no longer needed, otherwise
185
* the JavaVM/JNI will suffer memory leaks
186
*
187
*/
188
#ifdef ACCESSBRIDGE_ARCH_LEGACY // JOBJECT64 is jobject (32 bit pointer)
189
const char fireEventDebugString[] = "[INFO]: In AccessBridgeEventHandler::%s(%p, %p); vmID = %X\r\n";
190
#else // JOBJECT64 is jlong (64 bit)
191
const char fireEventDebugString[] = "[INFO]: In AccessBridgeEventHandler::%s(%016I64X, %016I64X); vmID = %X\r\n";
192
#endif
193
194
#define FIRE_EVENT(method, FPprototype, eventFP) \
195
void AccessBridgeEventHandler::method(long vmID, JOBJECT64 event, JOBJECT64 source) { \
196
DEBUG_CODE(char debugBuf[255]); \
197
DEBUG_CODE(sprintf(debugBuf, fireEventDebugString, #method, event, source, vmID)); \
198
DEBUG_CODE(AppendToCallInfo(debugBuf)); \
199
if (eventFP != (FPprototype) 0) { \
200
eventFP(vmID, event, source); \
201
} else { \
202
DEBUG_CODE(AppendToCallInfo("[ERROR]: eventFP == 0")); \
203
} \
204
}
205
206
void AccessBridgeEventHandler::fireJavaShutdown(long vmID) {
207
DEBUG_CODE(char debugBuf[255]);
208
DEBUG_CODE(sprintf(debugBuf, "[INFO]: Calling fireJavaShutdown; vmID = %X\r\n", vmID));
209
DEBUG_CODE(AppendToCallInfo(debugBuf));
210
if (javaShutdownFP != (AccessBridge_JavaShutdownFP) 0) {
211
javaShutdownFP(vmID);
212
} else {
213
DEBUG_CODE(AppendToCallInfo("[ERROR]: javaShutdownFP == 0"));
214
}
215
}
216
217
FIRE_EVENT(fireFocusGained, AccessBridge_FocusGainedFP, focusGainedFP)
218
FIRE_EVENT(fireFocusLost, AccessBridge_FocusLostFP, focusLostFP)
219
FIRE_EVENT(fireCaretUpdate, AccessBridge_CaretUpdateFP, caretUpdateFP)
220
FIRE_EVENT(fireMouseClicked, AccessBridge_MouseClickedFP, mouseClickedFP)
221
FIRE_EVENT(fireMouseEntered, AccessBridge_MouseEnteredFP, mouseEnteredFP)
222
FIRE_EVENT(fireMouseExited, AccessBridge_MouseExitedFP, mouseExitedFP)
223
FIRE_EVENT(fireMousePressed, AccessBridge_MousePressedFP, mousePressedFP)
224
FIRE_EVENT(fireMouseReleased, AccessBridge_MouseReleasedFP, mouseReleasedFP)
225
FIRE_EVENT(fireMenuCanceled, AccessBridge_MenuCanceledFP, menuCanceledFP)
226
FIRE_EVENT(fireMenuDeselected, AccessBridge_MenuDeselectedFP, menuDeselectedFP)
227
FIRE_EVENT(fireMenuSelected, AccessBridge_MenuSelectedFP, menuSelectedFP)
228
FIRE_EVENT(firePopupMenuCanceled, AccessBridge_PopupMenuCanceledFP, popupMenuCanceledFP)
229
FIRE_EVENT(firePopupMenuWillBecomeInvisible, AccessBridge_PopupMenuWillBecomeInvisibleFP, popupMenuWillBecomeInvisibleFP)
230
FIRE_EVENT(firePopupMenuWillBecomeVisible, AccessBridge_PopupMenuWillBecomeVisibleFP, popupMenuWillBecomeVisibleFP)
231
232
233
/**
234
* FIRE_PROPERTY_CHANGE - macro for all fireXXX methods (which
235
* all are basically identical to one another...
236
*
237
* Note: the event and source objects passed in are globalReferences;
238
* It is critical that releaseJavaObject() be called
239
* on them once they are no longer needed, otherwise
240
* the JavaVM/JNI will suffer memory leaks
241
*
242
*/
243
#ifdef ACCESSBRIDGE_ARCH_LEGACY // JOBJECT64 is jobject (32 bit pointer)
244
const char firePropertyChangeDebugString[] = "[INFO]: In AccessBridgeEventHandler::%s, Firing a no-param property change (%p, %p):\r\n";
245
#else // JOBJECT64 is jlong (64 bit)
246
const char firePropertyChangeDebugString[] = "[INFO]: In AccessBridgeEventHandler::%s, Firing a no-param property change (%016I64X, %016I64X):\r\n";
247
#endif
248
249
#define FIRE_PROPERTY_CHANGE(method, FPprototype, eventFP) \
250
void AccessBridgeEventHandler::method(long vmID, JOBJECT64 event, JOBJECT64 source) { \
251
DEBUG_CODE(char debugBuf[255]); \
252
DEBUG_CODE(sprintf(debugBuf, firePropertyChangeDebugString, #method, event, source)); \
253
DEBUG_CODE(AppendToCallInfo(debugBuf)); \
254
if (eventFP != (FPprototype) 0) { \
255
eventFP(vmID, event, source); \
256
} else { \
257
DEBUG_CODE(AppendToCallInfo("[ERROR]: eventFP == 0")); \
258
} \
259
}
260
261
/**
262
* FIRE_STRING_PROPERTY_CHANGE - macro for all firePropertyXXXChange methods
263
* that have strings as the old/new values
264
265
* Note: the event and source objects passed in are globalReferences;
266
* It is critical that releaseJavaObject() be called
267
* on them once they are no longer needed, otherwise
268
* the JavaVM/JNI will suffer memory leaks
269
*
270
*/
271
#ifdef ACCESSBRIDGE_ARCH_LEGACY // JOBJECT64 is jobject (32 bit pointer)
272
const char fireStringPropertyChangeDebugString[] = "[INFO]: In AccessBridgeEventHandler::%s, Firing a string property change (%p, %p, %ls, %ls):\r\n";
273
#else // JOBJECT64 is jlong (64 bit)
274
const char fireStringPropertyChangeDebugString[] = "[INFO]: In AccessBridgeEventHandler::%s, Firing a string property change (%016I64X, %016I64X, %ls, %ls):\r\n";
275
#endif
276
277
#define FIRE_STRING_PROPERTY_CHANGE(method, FPprototype, eventFP, oldValue, newValue) \
278
void AccessBridgeEventHandler::method(long vmID, JOBJECT64 event, JOBJECT64 source, \
279
wchar_t *oldValue, wchar_t *newValue) { \
280
DEBUG_CODE(char debugBuf[255]); \
281
DEBUG_CODE(sprintf(debugBuf, fireStringPropertyChangeDebugString, #method, event, source, oldValue, newValue)); \
282
DEBUG_CODE(AppendToCallInfo(debugBuf)); \
283
if (eventFP != (FPprototype) 0) { \
284
eventFP(vmID, event, source, oldValue, newValue); \
285
} else { \
286
DEBUG_CODE(AppendToCallInfo("[ERROR]: eventFP == 0\r\n")); \
287
} \
288
}
289
290
/**
291
* FIRE_INT_PROPERTY_CHANGE - macro for all firePropertyXXXChange methods
292
* that have ints as the old/new values
293
*
294
* Note: the event and source objects passed in are globalReferences;
295
* It is critical that releaseJavaObject() be called
296
* on them once they are no longer needed, otherwise
297
* the JavaVM/JNI will suffer memory leaks
298
*
299
*/
300
#ifdef ACCESSBRIDGE_ARCH_LEGACY // JOBJECT64 is jobject (32 bit pointer)
301
const char fireIntPropertyChangeDebugString[] = "[INFO]: In AccessBridgeEventHandler::%s, Firing an int property change (%p, %p, %d, %d):\r\n";
302
#else // JOBJECT64 is jlong (64 bit)
303
const char fireIntPropertyChangeDebugString[] = "[INFO]: In AccessBridgeEventHandler::%s, Firing an int property change (%016I64X, %016I64X, %d, %d):\r\n";
304
#endif
305
306
#define FIRE_INT_PROPERTY_CHANGE(method, FPprototype, eventFP) \
307
void AccessBridgeEventHandler::method(long vmID, JOBJECT64 event, JOBJECT64 source, \
308
int oldValue, int newValue) { \
309
DEBUG_CODE(char debugBuf[255]); \
310
DEBUG_CODE(sprintf(debugBuf, fireIntPropertyChangeDebugString, #method, event, source, oldValue, newValue)); \
311
DEBUG_CODE(AppendToCallInfo(debugBuf)); \
312
if (eventFP != (FPprototype) 0) { \
313
eventFP(vmID, event, source, oldValue, newValue); \
314
} else { \
315
DEBUG_CODE(AppendToCallInfo("[ERROR]: eventFP == 0\r\n")); \
316
} \
317
}
318
319
/**
320
* FIRE_AC_PROPERTY_CHANGE - macro for all firePropertyXXXChange methods
321
* that have jobjects (AccessibleContexts) as the old/new values
322
*
323
* Note: the event and source objects passed in are globalReferences;
324
* It is critical that releaseJavaObject() be called
325
* on them once they are no longer needed, otherwise
326
* the JavaVM/JNI will suffer memory leaks
327
*
328
*/
329
#ifdef ACCESSBRIDGE_ARCH_LEGACY // JOBJECT64 is jobject (32 bit pointer)
330
const char fireACPropertyChangeDebugString[] = "[INFO]: In AccessBridgeEventHandler::%s, Firing an AC property change (%p, %p, %p, %p):\r\n";
331
#else // JOBJECT64 is jlong (64 bit)
332
const char fireACPropertyChangeDebugString[] = "[INFO]: In AccessBridgeEventHandler::%s, Firing an AC property change (%016I64X, %016I64X, %016I64X, %016I64X):\r\n";
333
#endif
334
335
#define FIRE_AC_PROPERTY_CHANGE(method, FPprototype, eventFP) \
336
void AccessBridgeEventHandler::method(long vmID, JOBJECT64 event, JOBJECT64 source, \
337
JOBJECT64 oldValue, JOBJECT64 newValue) { \
338
DEBUG_CODE(char debugBuf[255]); \
339
DEBUG_CODE(sprintf(debugBuf, fireACPropertyChangeDebugString, #method, event, source, oldValue, newValue)); \
340
DEBUG_CODE(AppendToCallInfo(debugBuf)); \
341
if (eventFP != (FPprototype) 0) { \
342
eventFP(vmID, event, source, oldValue, newValue); \
343
} else { \
344
DEBUG_CODE(AppendToCallInfo("[ERROR]: eventFP == 0\r\n")); \
345
} \
346
}
347
348
FIRE_STRING_PROPERTY_CHANGE(firePropertyNameChange,
349
AccessBridge_PropertyNameChangeFP,
350
propertyNameChangeFP, oldName, newName)
351
FIRE_STRING_PROPERTY_CHANGE(firePropertyDescriptionChange,
352
AccessBridge_PropertyDescriptionChangeFP,
353
propertyDescriptionChangeFP,
354
oldDescription, newDescription)
355
FIRE_STRING_PROPERTY_CHANGE(firePropertyStateChange,
356
AccessBridge_PropertyStateChangeFP,
357
propertyStateChangeFP, oldState, newState)
358
FIRE_STRING_PROPERTY_CHANGE(firePropertyValueChange,
359
AccessBridge_PropertyValueChangeFP,
360
propertyValueChangeFP, oldValue, newValue)
361
FIRE_PROPERTY_CHANGE(firePropertySelectionChange,
362
AccessBridge_PropertySelectionChangeFP,
363
propertySelectionChangeFP)
364
FIRE_PROPERTY_CHANGE(firePropertyTextChange,
365
AccessBridge_PropertyTextChangeFP,
366
propertyTextChangeFP);
367
FIRE_INT_PROPERTY_CHANGE(firePropertyCaretChange,
368
AccessBridge_PropertyCaretChangeFP,
369
propertyCaretChangeFP)
370
FIRE_PROPERTY_CHANGE(firePropertyVisibleDataChange,
371
AccessBridge_PropertyVisibleDataChangeFP,
372
propertyVisibleDataChangeFP)
373
FIRE_AC_PROPERTY_CHANGE(firePropertyChildChange,
374
AccessBridge_PropertyChildChangeFP,
375
propertyChildChangeFP)
376
FIRE_AC_PROPERTY_CHANGE(firePropertyActiveDescendentChange,
377
AccessBridge_PropertyActiveDescendentChangeFP,
378
propertyActiveDescendentChangeFP)
379
380
FIRE_STRING_PROPERTY_CHANGE(firePropertyTableModelChange,
381
AccessBridge_PropertyTableModelChangeFP,
382
propertyTableModelChangeFP, oldValue, newValue)
383
384