651 */ 652 void firePropertyChange(SystemTray tray, String propertyName, Object oldValue, Object newValue); 653 } 654 655 /** 656 * An accessor for the TrayIcon class 657 */ 658 public interface TrayIconAccessor { 659 void addNotify(TrayIcon trayIcon) throws AWTException; 660 void removeNotify(TrayIcon trayIcon); 661 } 662 663 /** 664 * An accessor for the DefaultKeyboardFocusManager class 665 */ 666 public interface DefaultKeyboardFocusManagerAccessor { 667 public void consumeNextKeyTyped(DefaultKeyboardFocusManager dkfm, KeyEvent e); 668 } 669 670 /* 671 * Accessor instances are initialized in the static initializers of 672 * corresponding AWT classes by using setters defined below. 673 */ 674 private static ComponentAccessor componentAccessor; 675 private static ContainerAccessor containerAccessor; 676 private static WindowAccessor windowAccessor; 677 private static AWTEventAccessor awtEventAccessor; 678 private static InputEventAccessor inputEventAccessor; 679 private static FrameAccessor frameAccessor; 680 private static KeyboardFocusManagerAccessor kfmAccessor; 681 private static MenuComponentAccessor menuComponentAccessor; 682 private static EventQueueAccessor eventQueueAccessor; 683 private static PopupMenuAccessor popupMenuAccessor; 684 private static FileDialogAccessor fileDialogAccessor; 685 private static ScrollPaneAdjustableAccessor scrollPaneAdjustableAccessor; 686 private static CheckboxMenuItemAccessor checkboxMenuItemAccessor; 687 private static CursorAccessor cursorAccessor; 688 private static MenuBarAccessor menuBarAccessor; 689 private static MenuItemAccessor menuItemAccessor; 690 private static MenuAccessor menuAccessor; 691 private static KeyEventAccessor keyEventAccessor; 692 private static ClientPropertyKeyAccessor clientPropertyKeyAccessor; 693 private static SystemTrayAccessor systemTrayAccessor; 694 private static TrayIconAccessor trayIconAccessor; 695 private static DefaultKeyboardFocusManagerAccessor defaultKeyboardFocusManagerAccessor; 696 697 /* 698 * Set an accessor object for the java.awt.Component class. 699 */ 700 public static void setComponentAccessor(ComponentAccessor ca) { 701 componentAccessor = ca; 702 } 703 704 /* 705 * Retrieve the accessor object for the java.awt.Component class. 706 */ 707 public static ComponentAccessor getComponentAccessor() { 708 if (componentAccessor == null) { 709 unsafe.ensureClassInitialized(Component.class); 710 } 711 712 return componentAccessor; 713 } 714 715 /* 1054 return trayIconAccessor; 1055 } 1056 1057 /** 1058 * Set an accessor object for the java.awt.DefaultKeyboardFocusManager class. 1059 */ 1060 public static void setDefaultKeyboardFocusManagerAccessor(DefaultKeyboardFocusManagerAccessor dkfma) { 1061 defaultKeyboardFocusManagerAccessor = dkfma; 1062 } 1063 1064 /** 1065 * Retrieve the accessor object for the java.awt.DefaultKeyboardFocusManager class. 1066 */ 1067 public static DefaultKeyboardFocusManagerAccessor getDefaultKeyboardFocusManagerAccessor() { 1068 if (defaultKeyboardFocusManagerAccessor == null) { 1069 unsafe.ensureClassInitialized(DefaultKeyboardFocusManagerAccessor.class); 1070 } 1071 return defaultKeyboardFocusManagerAccessor; 1072 } 1073 1074 } | 651 */ 652 void firePropertyChange(SystemTray tray, String propertyName, Object oldValue, Object newValue); 653 } 654 655 /** 656 * An accessor for the TrayIcon class 657 */ 658 public interface TrayIconAccessor { 659 void addNotify(TrayIcon trayIcon) throws AWTException; 660 void removeNotify(TrayIcon trayIcon); 661 } 662 663 /** 664 * An accessor for the DefaultKeyboardFocusManager class 665 */ 666 public interface DefaultKeyboardFocusManagerAccessor { 667 public void consumeNextKeyTyped(DefaultKeyboardFocusManager dkfm, KeyEvent e); 668 } 669 670 /* 671 * An accessor for the SequencedEventAccessor class 672 */ 673 public interface SequencedEventAccessor { 674 /* 675 * Returns the nested event. 676 */ 677 AWTEvent getNested(AWTEvent sequencedEvent); 678 679 /* 680 * Returns true if the event is an instances of SequencedEvent. 681 */ 682 boolean isSequencedEvent(AWTEvent event); 683 } 684 685 /* 686 * Accessor instances are initialized in the static initializers of 687 * corresponding AWT classes by using setters defined below. 688 */ 689 private static ComponentAccessor componentAccessor; 690 private static ContainerAccessor containerAccessor; 691 private static WindowAccessor windowAccessor; 692 private static AWTEventAccessor awtEventAccessor; 693 private static InputEventAccessor inputEventAccessor; 694 private static FrameAccessor frameAccessor; 695 private static KeyboardFocusManagerAccessor kfmAccessor; 696 private static MenuComponentAccessor menuComponentAccessor; 697 private static EventQueueAccessor eventQueueAccessor; 698 private static PopupMenuAccessor popupMenuAccessor; 699 private static FileDialogAccessor fileDialogAccessor; 700 private static ScrollPaneAdjustableAccessor scrollPaneAdjustableAccessor; 701 private static CheckboxMenuItemAccessor checkboxMenuItemAccessor; 702 private static CursorAccessor cursorAccessor; 703 private static MenuBarAccessor menuBarAccessor; 704 private static MenuItemAccessor menuItemAccessor; 705 private static MenuAccessor menuAccessor; 706 private static KeyEventAccessor keyEventAccessor; 707 private static ClientPropertyKeyAccessor clientPropertyKeyAccessor; 708 private static SystemTrayAccessor systemTrayAccessor; 709 private static TrayIconAccessor trayIconAccessor; 710 private static DefaultKeyboardFocusManagerAccessor defaultKeyboardFocusManagerAccessor; 711 private static SequencedEventAccessor sequencedEventAccessor; 712 713 /* 714 * Set an accessor object for the java.awt.Component class. 715 */ 716 public static void setComponentAccessor(ComponentAccessor ca) { 717 componentAccessor = ca; 718 } 719 720 /* 721 * Retrieve the accessor object for the java.awt.Component class. 722 */ 723 public static ComponentAccessor getComponentAccessor() { 724 if (componentAccessor == null) { 725 unsafe.ensureClassInitialized(Component.class); 726 } 727 728 return componentAccessor; 729 } 730 731 /* 1070 return trayIconAccessor; 1071 } 1072 1073 /** 1074 * Set an accessor object for the java.awt.DefaultKeyboardFocusManager class. 1075 */ 1076 public static void setDefaultKeyboardFocusManagerAccessor(DefaultKeyboardFocusManagerAccessor dkfma) { 1077 defaultKeyboardFocusManagerAccessor = dkfma; 1078 } 1079 1080 /** 1081 * Retrieve the accessor object for the java.awt.DefaultKeyboardFocusManager class. 1082 */ 1083 public static DefaultKeyboardFocusManagerAccessor getDefaultKeyboardFocusManagerAccessor() { 1084 if (defaultKeyboardFocusManagerAccessor == null) { 1085 unsafe.ensureClassInitialized(DefaultKeyboardFocusManagerAccessor.class); 1086 } 1087 return defaultKeyboardFocusManagerAccessor; 1088 } 1089 1090 /* 1091 * Set an accessor object for the java.awt.SequencedEvent class. 1092 */ 1093 public static void setSequencedEventAccessor(SequencedEventAccessor sea) { 1094 sequencedEventAccessor = sea; 1095 } 1096 1097 /* 1098 * Get the accessor object for the java.awt.SequencedEvent class. 1099 */ 1100 public static SequencedEventAccessor getSequencedEventAccessor() { 1101 // The class is not public. So we can't ensure it's initialized. 1102 // Null returned value means it's not initialized 1103 // (so not a single instance of the event has been created). 1104 return sequencedEventAccessor; 1105 } 1106 } |