/** * UIManager.LazyValue method, returns the value from the desktop or the fallback value if the desktop value is * null. */ public Object createValue(UIDefaults table) { if (value == null) { value = configureValue(getValueFromDesktop()); if (value[0] == null) { value = configureValue(getDefaultValue()); } } return listener.convert(value); }
/** * Invalides the current value so that the next invocation of <code>createValue</code> will ask for the property * again. */ public void invalidate() { if (pcl != null) { for (int i = 0; i < getKeys().length; i++) { toolkit.removePropertyChangeListener(getKeys()[i], pcl); } toolkit = null; pcl = null; value = null; } }
public void propertyChange(PropertyChangeEvent pce) { ExtWindowsDesktopProperty property = (ExtWindowsDesktopProperty) get(); if (property == null) { // The property was GC'ed, we're no longer interested in // PropertyChanges, remove the listener. kit.removePropertyChangeListener(pce.getPropertyName(), this); } else { property.invalidate(); property.updateUI(); } } }
/** * Requests that all components in the GUI hierarchy be updated to reflect dynamic changes in this look&feel. This * update occurs by uninstalling and re-installing the UI objects. Requests are batched and collapsed into a single * update pass because often many desktop properties will change at once. */ protected void updateUI() { if (!isUpdatePending()) { setUpdatePending(true); Runnable uiUpdater = new Runnable() { public void run() { updateAllUIs(); setUpdatePending(false); } }; SwingUtilities.invokeLater(uiUpdater); } }
Object menuSelectionBackground = new ExtWindowsDesktopProperty(//Actual color 182, 189, 210 new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object menuBackground = new ExtWindowsDesktopProperty(//Actual color 249, 248, 247 new String[]{"win.3d.backgroundColor"}, new Object[]{UIDefaultsLookup.get("control")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object separatorColor = new ExtWindowsDesktopProperty(// Not exactly right new String[]{"win.3d.shadowColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object popupMenuBorder = new ExtWindowsDesktopProperty(new String[]{"null"}, new Object[]{((ThemePainter) UIDefaultsLookup.get("Theme.painter")).getMenuItemBorderColor()}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new BorderUIResource(BorderFactory.createCompoundBorder(BorderFactory.createLineBorder((Color) obj[0]), BorderFactory.createEmptyBorder(1, 1, 1, 1)));
/** * Updates the UIs of all the known Frames. */ private static void updateAllUIs() { Frame appFrames[] = Frame.getFrames(); for (Frame frame : appFrames) { updateWindowUI(frame); } }
/** * Configures the value as appropriate for a defaults property in the UIDefaults table. */ protected Object[] configureValue(Object[] value) { if (value != null) { for (int i = 0; i < value.length; i++) { value[i] = configureValue(value[i]); } } return value; }
Object defaultLightColor = new ExtWindowsDesktopProperty( new String[]{"win.3d.lightColor"}, new Object[]{UIDefaultsLookup.get("controlHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object borderColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(VsnetUtils.getButtonBorderColor((Color) obj[0])); Object menuSelectionBackground = new ExtWindowsDesktopProperty(//Actual color 182, 189, 210 new String[]{"win.3d.lightColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object menuBackground = new ExtWindowsDesktopProperty(//Actual color 249, 248, 247 new String[]{"win.3d.backgroundColor"}, new Object[]{UIDefaultsLookup.get("control")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object separatorColor = new ExtWindowsDesktopProperty(// Not exactly right new String[]{"win.3d.shadowColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object popupMenuBorder = new ExtWindowsDesktopProperty(new String[]{"null"}, new Object[]{((ThemePainter) UIDefaultsLookup.get("Theme.painter")).getMenuItemBorderColor()}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new BorderUIResource(BorderFactory.createCompoundBorder(BorderFactory.createLineBorder((Color) obj[0]), BorderFactory.createEmptyBorder(1, 1, 1, 1)));
/** * Updates the UI of the passed in window and all its children. */ private static void updateWindowUI(Window window) { SwingUtilities.updateComponentTreeUI(window); Window ownedWins[] = window.getOwnedWindows(); for (Window win : ownedWins) { updateWindowUI(win); } }
Object controlDk2 = new ExtWindowsDesktopProperty(new String[]{"win.3d.backgroundColor"}, new Object[]{UIDefaultsLookup.get("control")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object controlDk = new ExtWindowsDesktopProperty(new String[]{"win.3d.backgroundColor"}, new Object[]{UIDefaultsLookup.get("control")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object controlLt = new ExtWindowsDesktopProperty(new String[]{"win.3d.highlightColor"}, new Object[]{UIDefaultsLookup.get("controlLtHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object controlDkShadow = new ExtWindowsDesktopProperty(new String[]{"win.3d.shadowColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { WindowsDesktopProperty controlLtHighlight = new WindowsDesktopProperty("win.3d.highlightColor", UIDefaultsLookup.get("controlLtHighlight"), toolkit); WindowsDesktopProperty commandBarCaption = new WindowsDesktopProperty("", UIDefaultsLookup.get("inactiveCaption"), toolkit); Object menuItemBackground = new ExtWindowsDesktopProperty(//Actual color 249, 248, 247 new String[]{"win.3d.backgroundColor"}, new Object[]{UIDefaultsLookup.get("control")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) {
/** * Returns the value from the desktop. */ protected Object[] getValueFromDesktop() { if (this.toolkit == null) { this.toolkit = Toolkit.getDefaultToolkit(); } pcl = new WeakPCL(this, toolkit); Object[] values = new Object[getKeys().length]; for (int i = 0; i < getKeys().length; i++) { values[i] = toolkit.getDesktopProperty(getKeys()[i]); toolkit.addPropertyChangeListener(getKeys()[i], pcl); } return values; }
Object slidingEastFrameBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object slidingWestFrameBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object slidingNorthFrameBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object slidingSouthFrameBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object slidingEastFrameBorder2 = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object slidingWestFrameBorder2 = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object slidingNorthFrameBorder2 = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object slidingSouthFrameBorder2 = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"},
Object resizeBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object defaultFormBackground = new ExtWindowsDesktopProperty(new String[]{"win.3d.backgroundColor"}, new Object[]{UIDefaultsLookup.get("control")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return VsnetUtils.getDefaultBackgroundColor((Color) obj[0]); Object focusedButtonColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("textHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(VsnetUtils.getRolloverButtonColor((Color) obj[0])); Object selectedAndFocusedButtonColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("textHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(VsnetUtils.getSelectedAndRolloverButtonColor((Color) obj[0])); Object selectedButtonColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("textHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(VsnetUtils.getSelectedButtonColor((Color) obj[0])); Object singleLineBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.shadowColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new BorderUIResource(BorderFactory.createLineBorder((Color) obj[0])); Object borderColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(VsnetUtils.getButtonBorderColor((Color) obj[0])); Object gripperForeground = new ExtWindowsDesktopProperty(new String[]{"win.3d.backgroundColor"}, new Object[]{UIDefaultsLookup.get("control")}, toolkit, new ConvertListener() {
Object popupMenuBorder = new ExtWindowsDesktopProperty(new String[]{"null"}, new Object[]{((ThemePainter) UIDefaultsLookup.get("Theme.painter")).getMenuItemBorderColor()}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new BorderUIResource(BorderFactory.createCompoundBorder(BorderFactory.createLineBorder((Color) obj[0]), BorderFactory.createEmptyBorder(1, 1, 1, 1)));
Object singleLineBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.shadowColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new BorderUIResource(BorderFactory.createLineBorder((Color) obj[0])); Object resizeBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object defaultFormBackground = new ExtWindowsDesktopProperty(new String[]{"win.3d.backgroundColor"}, new Object[]{UIDefaultsLookup.get("control")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(XertoUtils.getDefaultBackgroundColor((Color) obj[0])); Object inactiveTabForground = new ExtWindowsDesktopProperty(// Not exactly right new String[]{"win.3d.shadowColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object focusedButtonColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("textHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(XertoUtils.getFocusedButtonColor((Color) obj[0])); Object selectedAndFocusedButtonColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("textHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(XertoUtils.getSelectedAndFocusedButtonColor((Color) obj[0])); Object selectedButtonColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("textHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(XertoUtils.getSelectedButtonColor((Color) obj[0])); Object gripperForeground = new ExtWindowsDesktopProperty(new String[]{"win.3d.backgroundColor"}, new Object[]{UIDefaultsLookup.get("control")}, toolkit, new ConvertListener() {
Object defaultFormBackground = new ExtWindowsDesktopProperty(// Not exactly right new String[]{"win.3d.shadowColor"}, new Object[]{UIDefaultsLookup.get("control")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object inactiveTabForeground = new ExtWindowsDesktopProperty(// Not exactly right new String[]{"win.3d.shadowColor"}, new Object[]{UIDefaultsLookup.get("controlShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) {
Object sunkenBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object focusedButtonColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("textHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(EclipseUtils.getFocusedButtonColor((Color) obj[0])); Object selectedAndFocusedButtonColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("textHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(EclipseUtils.getSelectedAndFocusedButtonColor((Color) obj[0])); Object selectedButtonColor = new ExtWindowsDesktopProperty(new String[]{"win.item.highlightColor"}, new Object[]{UIDefaultsLookup.get("textHighlight")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { return new ColorUIResource(EclipseUtils.getSelectedButtonColor((Color) obj[0])); Object slidingEastFrameBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object slidingWestFrameBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object slidingNorthFrameBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) { Object slidingSouthFrameBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"},
Object menuBorder = new ExtWindowsDesktopProperty(new String[]{"win.3d.lightColor", "win.3d.highlightColor", "win.3d.shadowColor", "win.3d.darkShadowColor"}, new Object[]{UIDefaultsLookup.get("control"), UIDefaultsLookup.get("controlLtHighlight"), UIDefaultsLookup.get("controlShadow"), UIDefaultsLookup.get("controlDkShadow")}, toolkit, new ConvertListener() { public Object convert(Object[] obj) {