home *** CD-ROM | disk | FTP | other *** search
- package javax.swing;
-
- import java.awt.Point;
- import java.beans.PropertyChangeEvent;
- import java.beans.PropertyChangeListener;
- import javax.accessibility.Accessible;
- import javax.accessibility.AccessibleContext;
- import javax.accessibility.AccessibleRole;
- import javax.accessibility.AccessibleSelection;
- import javax.accessibility.AccessibleState;
- import javax.accessibility.AccessibleStateSet;
- import javax.swing.event.ListDataEvent;
- import javax.swing.event.ListDataListener;
- import javax.swing.event.ListSelectionEvent;
- import javax.swing.event.ListSelectionListener;
-
- public class JList$AccessibleJList extends JComponent.AccessibleJComponent implements AccessibleSelection, PropertyChangeListener, ListSelectionListener, ListDataListener {
- int leadSelectionIndex;
- // $FF: synthetic field
- private final JList this$0;
-
- public JList$AccessibleJList(JList var1) {
- super(var1);
- this.this$0 = var1;
- ((JComponent)var1).addPropertyChangeListener(this);
- var1.getSelectionModel().addListSelectionListener(this);
- var1.getModel().addListDataListener(this);
- this.leadSelectionIndex = var1.getLeadSelectionIndex();
- }
-
- public void propertyChange(PropertyChangeEvent var1) {
- String var2 = var1.getPropertyName();
- Object var3 = var1.getOldValue();
- Object var4 = var1.getNewValue();
- if (var2.compareTo("model") == 0) {
- if (var3 != null && var3 instanceof ListModel) {
- ((ListModel)var3).removeListDataListener(this);
- }
-
- if (var4 != null && var4 instanceof ListModel) {
- ((ListModel)var4).addListDataListener(this);
- }
- } else if (var2.compareTo("selectionModel") == 0) {
- if (var3 != null && var3 instanceof ListSelectionModel) {
- ((ListSelectionModel)var3).removeListSelectionListener(this);
- }
-
- if (var4 != null && var4 instanceof ListSelectionModel) {
- ((ListSelectionModel)var4).addListSelectionListener(this);
- }
-
- ((AccessibleContext)this).firePropertyChange("AccessibleSelection", new Boolean(false), new Boolean(true));
- }
-
- }
-
- public void valueChanged(ListSelectionEvent var1) {
- int var2 = this.leadSelectionIndex;
- this.leadSelectionIndex = this.this$0.getLeadSelectionIndex();
- if (var2 != this.leadSelectionIndex) {
- Accessible var3 = var2 >= 0 ? this.getAccessibleChild(var2) : null;
- Accessible var4 = this.leadSelectionIndex >= 0 ? this.getAccessibleChild(this.leadSelectionIndex) : null;
- ((AccessibleContext)this).firePropertyChange("AccessibleActiveDescendant", var3, var4);
- }
-
- ((AccessibleContext)this).firePropertyChange("AccessibleVisibleData", new Boolean(false), new Boolean(true));
- ((AccessibleContext)this).firePropertyChange("AccessibleSelection", new Boolean(false), new Boolean(true));
- AccessibleStateSet var5 = this.getAccessibleStateSet();
- ListSelectionModel var6 = this.this$0.getSelectionModel();
- if (var6.getSelectionMode() != 0) {
- if (!var5.contains(AccessibleState.MULTISELECTABLE)) {
- var5.add(AccessibleState.MULTISELECTABLE);
- ((AccessibleContext)this).firePropertyChange("AccessibleState", (Object)null, AccessibleState.MULTISELECTABLE);
- }
- } else if (var5.contains(AccessibleState.MULTISELECTABLE)) {
- var5.remove(AccessibleState.MULTISELECTABLE);
- ((AccessibleContext)this).firePropertyChange("AccessibleState", AccessibleState.MULTISELECTABLE, (Object)null);
- }
-
- }
-
- public void intervalAdded(ListDataEvent var1) {
- ((AccessibleContext)this).firePropertyChange("AccessibleVisibleData", new Boolean(false), new Boolean(true));
- }
-
- public void intervalRemoved(ListDataEvent var1) {
- ((AccessibleContext)this).firePropertyChange("AccessibleVisibleData", new Boolean(false), new Boolean(true));
- }
-
- public void contentsChanged(ListDataEvent var1) {
- ((AccessibleContext)this).firePropertyChange("AccessibleVisibleData", new Boolean(false), new Boolean(true));
- }
-
- public AccessibleStateSet getAccessibleStateSet() {
- AccessibleStateSet var1 = super.getAccessibleStateSet();
- if (JList.access$100(this.this$0).getSelectionMode() != 0) {
- var1.add(AccessibleState.MULTISELECTABLE);
- }
-
- return var1;
- }
-
- public AccessibleRole getAccessibleRole() {
- return AccessibleRole.LIST;
- }
-
- public Accessible getAccessibleAt(Point var1) {
- int var2 = this.this$0.locationToIndex(var1);
- return var2 >= 0 ? new JList.AccessibleJList.AccessibleJListChild(this, this.this$0, var2) : null;
- }
-
- public int getAccessibleChildrenCount() {
- return this.this$0.getModel().getSize();
- }
-
- public Accessible getAccessibleChild(int var1) {
- return var1 >= this.this$0.getModel().getSize() ? null : new JList.AccessibleJList.AccessibleJListChild(this, this.this$0, var1);
- }
-
- public AccessibleSelection getAccessibleSelection() {
- return this;
- }
-
- public int getAccessibleSelectionCount() {
- return this.this$0.getSelectedIndices().length;
- }
-
- public Accessible getAccessibleSelection(int var1) {
- int var2 = this.getAccessibleSelectionCount();
- return var1 >= 0 && var1 < var2 ? this.getAccessibleChild(this.this$0.getSelectedIndices()[var1]) : null;
- }
-
- public boolean isAccessibleChildSelected(int var1) {
- return this.this$0.isSelectedIndex(var1);
- }
-
- public void addAccessibleSelection(int var1) {
- this.this$0.addSelectionInterval(var1, var1);
- }
-
- public void removeAccessibleSelection(int var1) {
- this.this$0.removeSelectionInterval(var1, var1);
- }
-
- public void clearAccessibleSelection() {
- this.this$0.clearSelection();
- }
-
- public void selectAllAccessibleSelection() {
- this.this$0.addSelectionInterval(0, this.getAccessibleChildrenCount() - 1);
- }
-
- // $FF: synthetic method
- static JList access$200(JList$AccessibleJList var0) {
- return var0.this$0;
- }
- }
-