summaryrefslogtreecommitdiff
path: root/accessibility/workben/org/openoffice
diff options
context:
space:
mode:
authorFrank Schoenheit [fs] <frank.schoenheit@sun.com>2010-04-21 11:11:09 +0200
committerFrank Schoenheit [fs] <frank.schoenheit@sun.com>2010-04-21 11:11:09 +0200
commit52308ad9262c17879baa88473917decde16e231b (patch)
tree62169df717a684568aef794896beccca5487adc4 /accessibility/workben/org/openoffice
parente3c620fd0394b7ce7b5c8cce2a498a03713a3666 (diff)
slidecopy: in the event logger, display event numbers / revoke the ObjectViewContainer as listener from unselected nodes, to not display their events/properties (which is confusing especially in the case of the event logger)
Diffstat (limited to 'accessibility/workben/org/openoffice')
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java32
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java21
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java6
3 files changed, 35 insertions, 24 deletions
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java b/accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java
index 02ec7fea2232..6e8e45bc4e82 100644
--- a/accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java
+++ b/accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java
@@ -588,28 +588,39 @@ public class AccessibilityWorkBench
javax.swing.tree.TreePath aPath = aEvent.getPath();
maTree.scrollPathToVisible (aPath);
Object aObject = aPath.getLastPathComponent();
- if (aObject instanceof XAccessible) {
- XAccessible xAccessible = (XAccessible) aObject;
- if (maObjectViewContainer != null) {
- ((AccessibilityModel) maTree.getModel()).addEventListener((TreeNode) aObject, maObjectViewContainer);
- maObjectViewContainer.SetObject (xAccessible.getAccessibleContext());
- }
+ implSetCurrentObject( aObject );
+ if (aObject instanceof XAccessible)
+ {
+ if (maObjectViewContainer != null)
+ maObjectViewContainer.SetObject( ((XAccessible)aObject).getAccessibleContext() );
}
if (maCanvas != null)
maCanvas.SelectObject ((TreeNode) aObject);
setCursor (aCursor);
} else {
- if (maObjectViewContainer != null) {
- ((AccessibilityModel) maTree.getModel()).removeEventListener((TreeNode) aEvent.getPath().getLastPathComponent(), maObjectViewContainer);
+ implSetCurrentObject( aEvent.getPath().getLastPathComponent() );
+ if (maObjectViewContainer != null)
maObjectViewContainer.SetObject (null);
- }
if (maCanvas != null)
maCanvas.SelectObject (null);
}
}
-
+ private void implSetCurrentObject( Object i_object )
+ {
+ if ( maObjectViewContainer == null )
+ return;
+ if ( maCurrentObject != null )
+ {
+ AccessibilityModel.removeEventListener( (TreeNode)maCurrentObject, maObjectViewContainer );
+ }
+ maCurrentObject = i_object;
+ if ( maCurrentObject != null )
+ {
+ AccessibilityModel.addEventListener( (TreeNode)maCurrentObject, maObjectViewContainer );
+ }
+ }
// XEventListener
public void disposing (EventObject aSourceObj)
@@ -687,4 +698,5 @@ public class AccessibilityWorkBench
maShapesButton;
private JMenuBar maMenuBar;
private boolean mbInitialized;
+ private Object maCurrentObject = null;
}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java
index 93823e9a1941..81a499aabf0d 100644
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java
@@ -75,8 +75,7 @@ class AccessibilityNode extends DefaultMutableTreeNode implements XAccessible,
if (xAccessibleContext != null) {
try {
XAccessibleEventBroadcaster xAccessibleEventBroadcaster =
- (XAccessibleEventBroadcaster) UnoRuntime.queryInterface(
- XAccessibleEventBroadcaster.class, xAccessibleContext);
+ UnoRuntime.queryInterface( XAccessibleEventBroadcaster.class, xAccessibleContext );
if (xAccessibleEventBroadcaster != null) {
if (attach) {
xAccessibleEventBroadcaster.addEventListener(this);
@@ -91,9 +90,9 @@ class AccessibilityNode extends DefaultMutableTreeNode implements XAccessible,
}
public void disposing(com.sun.star.lang.EventObject eventObject) {
- XAccessibleEventListener listener = this.listener;
- if (listener != null) {
- listener.disposing(eventObject);
+ XAccessibleEventListener localListener = this.listener;
+ if (localListener != null) {
+ localListener.disposing(eventObject);
}
treeModel.removeNode(userObject);
@@ -135,22 +134,20 @@ class AccessibilityNode extends DefaultMutableTreeNode implements XAccessible,
public void notifyEvent(AccessibleEventObject accessibleEventObject) {
if (accessibleEventObject.EventId == AccessibleEventId.CHILD) {
- XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(
- XAccessible.class, accessibleEventObject.OldValue);
+ XAccessible xAccessible = UnoRuntime.queryInterface( XAccessible.class, accessibleEventObject.OldValue );
if (xAccessible != null) {
handleChildRemoved(xAccessible);
}
- xAccessible = (XAccessible) UnoRuntime.queryInterface(
- XAccessible.class, accessibleEventObject.NewValue);
+ xAccessible = UnoRuntime.queryInterface( XAccessible.class, accessibleEventObject.NewValue );
if (xAccessible != null) {
handleChildAdded(xAccessible);
}
}
- XAccessibleEventListener listener = this.listener;
- if (listener != null) {
- listener.notifyEvent(accessibleEventObject);
+ XAccessibleEventListener localListener = this.listener;
+ if (localListener != null) {
+ localListener.notifyEvent(accessibleEventObject);
}
}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java
index 5b4bdcdcc4e4..67e8091e027f 100644
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java
@@ -64,6 +64,7 @@ class EventMonitorView
public EventMonitorView (ObjectViewContainer aContainer)
{
super (aContainer);
+ mnLineNo = 0;
Layout();
}
@@ -85,7 +86,7 @@ class EventMonitorView
maScrollPane = new JScrollPane (maText,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
- maScrollPane.setPreferredSize (new Dimension (300,80));
+ maScrollPane.setPreferredSize (new Dimension (300,200));
GridBagConstraints aConstraints = new GridBagConstraints ();
aConstraints.weightx = 1;
@@ -112,7 +113,7 @@ class EventMonitorView
public void notifyEvent (AccessibleEventObject aEvent)
{
- maText.append (NameProvider.getEventName (aEvent.EventId) + " : "
+ maText.append ((mnLineNo++) + ". " + NameProvider.getEventName (aEvent.EventId) + " : "
+ aEvent.OldValue.toString()
+ " -> "
+ aEvent.NewValue.toString() + "\n");
@@ -120,5 +121,6 @@ class EventMonitorView
}
private JTextArea maText;
+ private int mnLineNo;
private JScrollPane maScrollPane;
}