类javax.swing.plaf.ButtonUI源码实例Demo

下面列出了怎么用javax.swing.plaf.ButtonUI的API类实例代码及写法,或者点击链接到github查看源代码。

private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码2 项目: dragonwell8_jdk   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码3 项目: TencentKona-8   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码4 项目: jdk8u60   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码5 项目: JDKSourceCode1.8   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码6 项目: radiance   文件: SubstanceCoreUtilities.java
/**
 * Uninstalls the specified menu item.
 *
 * @param menuItem Menu item.
 */
public static void uninstallMenu(JMenuItem menuItem) {
    if (menuItem instanceof JMenu) {
        JMenu menu = (JMenu) menuItem;
        for (Component comp : menu.getMenuComponents())
            if (comp instanceof JMenuItem)
                SubstanceCoreUtilities.uninstallMenu((JMenuItem) comp);
    }

    ButtonUI menuItemUI = menuItem.getUI();
    if (menuItemUI instanceof SubstanceMenu) {
        SubstanceMenu sMenu = (SubstanceMenu) menuItemUI;
        if (sMenu.getAssociatedMenuItem() != null) {
            menuItemUI.uninstallUI(menuItem);
        }
    }

    for (ActionListener actionListener : menuItem.getActionListeners())
        menuItem.removeActionListener(actionListener);

    menuItem.removeAll();
}
 
源代码7 项目: openjdk-jdk8u   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码8 项目: netbeans   文件: ThemeValue.java
private static SynthContext getSynthContext () {
    try {
        JButton dummyButton = getDummyButton();
        
        ButtonUI bui = dummyButton.getUI();
        if (bui instanceof SynthUI) {
            return ((SynthUI) bui).getContext(dummyButton);
        } else {
           throw new IllegalStateException ("I don't have a SynthButtonUI to play with"); //NOI18N
        }
    } catch (Exception e) {
        functioning = Boolean.FALSE;
        if (log) {
            e.printStackTrace();
        }
        return null;
    }
}
 
源代码9 项目: openjdk-jdk8u-backup   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码10 项目: openjdk-jdk9   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码11 项目: jdk8u-jdk   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码12 项目: hottub   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码13 项目: openjdk-8-source   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码14 项目: openjdk-8   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码15 项目: jdk8u_jdk   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码16 项目: jdk8u-jdk   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码17 项目: jdk8u-dev-jdk   文件: WindowsIconFactory.java
private static WindowsMenuItemUIAccessor getAccessor(
        JMenuItem menuItem) {
    WindowsMenuItemUIAccessor rv = null;
    ButtonUI uiObject = (menuItem != null) ? menuItem.getUI()
            : null;
    if (uiObject instanceof WindowsMenuItemUI) {
        rv = ((WindowsMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsMenuUI) {
        rv = ((WindowsMenuUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsCheckBoxMenuItemUI) {
        rv = ((WindowsCheckBoxMenuItemUI) uiObject).accessor;
    } else if (uiObject instanceof WindowsRadioButtonMenuItemUI) {
        rv = ((WindowsRadioButtonMenuItemUI) uiObject).accessor;
    }
    return rv;
}
 
源代码18 项目: consulo   文件: StripeTabPanel.java
@Nonnull
@RequiredUIAccess
public TabInfo addTab(@Nonnull String tabName, @Nonnull JComponent component, @Nullable JComponent preferredFocusableComponent) {
  StaticAnchoredButton button = new StaticAnchoredButton(tabName, ToolWindowAnchor.LEFT);

  button.addItemListener(myItemListener);
  button.setFont(UIUtil.getLabelFont(UIUtil.FontSize.SMALL));
  button.setBackground(new Color(247, 243, 239));
  button.setUI((ButtonUI)DesktopStripeButtonUI.createUI(button));

  myTabPanel.add(button);

  TabInfo tabInfo = new TabInfo(button, component, preferredFocusableComponent);
  button.putClientProperty(TabInfo.class, tabInfo);

  myButtonGroup.add(button);
  myContentPanel.add(component, tabName);
  if(myButtonGroup.getSelection() == null) {
    tabInfo.select();
  }
  return tabInfo;
}
 
源代码19 项目: radiance   文件: MenuUtilities.java
/**
 * Returns the layout metrics of the specified popup menu.
 * 
 * @param popupMenu
 *            Popup menu.
 * @return Layout metrics of the specified popup menu.
 */
public static MenuLayoutMetrics getMetrics(JPopupMenu popupMenu, boolean forPainting) {
    MenuLayoutMetrics metrics = new MenuLayoutMetrics();
    for (int i = 0; i < popupMenu.getComponentCount(); i++) {
        Component comp = popupMenu.getComponent(i);
        if (comp instanceof JMenuItem) {
            JMenuItem childMenuItem = (JMenuItem) comp;
            ButtonUI bui = childMenuItem.getUI();
            if (!(bui instanceof SubstanceMenu))
                continue;
            SubstanceMenu ui = (SubstanceMenu) bui;
            MenuLayoutInfo mli = MenuUtilities.getMenuLayoutInfo(forPainting, childMenuItem,
                    ui.getAcceleratorFont(), ui.getCheckIcon(), ui.getArrowIcon(),
                    ui.getDefaultTextIconGap());
            metrics.maxIconWidth = Math.max(metrics.maxIconWidth, mli.iconRect.width);
            metrics.maxCheckIconWidth = Math.max(metrics.maxCheckIconWidth,
                    mli.checkIconRect.width);
            metrics.maxTextWidth = Math.max(metrics.maxTextWidth, mli.textRect.width);
            metrics.maxAcceleratorWidth = Math.max(metrics.maxAcceleratorWidth,
                    mli.acceleratorRect.width);
            metrics.maxArrowIconWidth = Math.max(metrics.maxArrowIconWidth,
                    mli.arrowIconRect.width);
            metrics.maxIconTextGap = Math.max(metrics.maxIconTextGap,
                    ui.getDefaultTextIconGap());
        }
    }
    return metrics;
}
 
源代码20 项目: radiance   文件: MenuUtilities.java
/**
 * Returns the layout metrics of the popup menu of the specified menu item.
 * 
 * @param menuItem
 *            Menu item.
 * @return Layout metrics of the popup menu of the specified menu item.
 */
public static MenuLayoutMetrics getPopupLayoutMetrics(JMenuItem menuItem, boolean forPainting) {
    Component comp = menuItem.getParent();
    if (comp instanceof JPopupMenu) {
        JPopupMenu popupMenu = (JPopupMenu) comp;
        return getPopupLayoutMetrics(popupMenu, forPainting);
    }
    // fix for issue 347 - menu item in menu bar is not
    // covered by the code above
    if (!(comp instanceof JMenu)) {
        ButtonUI bui = menuItem.getUI();
        if (bui instanceof SubstanceMenu) {
            SubstanceMenu ui = (SubstanceMenu) bui;

            MenuLayoutInfo mli = MenuUtilities.getMenuLayoutInfo(forPainting, menuItem,
                    ui.getAcceleratorFont(), ui.getCheckIcon(), ui.getArrowIcon(),
                    ui.getDefaultTextIconGap());
            MenuLayoutMetrics metrics = new MenuLayoutMetrics();
            metrics.maxIconWidth = mli.iconRect.width;
            metrics.maxCheckIconWidth = mli.checkIconRect.width;
            metrics.maxTextWidth = mli.textRect.width;
            metrics.maxAcceleratorWidth = mli.acceleratorRect.width;
            metrics.maxArrowIconWidth = mli.arrowIconRect.width;
            metrics.maxIconTextGap = ui.getDefaultTextIconGap();
            return metrics;
        }
    }

    // If here, the parent is not popup menu - this is a top-level menu
    // in a menu bar. No need to align the different rectangles
    return null;
}
 
源代码21 项目: netbeans   文件: BasicSlidingTabDisplayerUI.java
@Override
public void updateUI () {
    SlidingTabDisplayerButtonUI ui = null;
    try {
        ui = (SlidingTabDisplayerButtonUI) UIManager.getUI(this);
        setUI (ui);
        return;
    } catch (Error e) {
        System.err.println ("Error getting sliding button UI: " + e.getMessage());
    } catch (Exception ex) {
        System.err.println ("Exception getting button UI: " + ex.getMessage());
    }
    setUI ((ButtonUI) SlidingTabDisplayerButtonUI.createUI(this));
}
 
源代码22 项目: openjdk-jdk9   文件: AbstractButtonOperator.java
/**
 * Maps {@code AbstractButton.getUI()} through queue
 */
public ButtonUI getUI() {
    return (runMapping(new MapAction<ButtonUI>("getUI") {
        @Override
        public ButtonUI map() {
            return ((AbstractButton) getSource()).getUI();
        }
    }));
}
 
源代码23 项目: openjdk-jdk9   文件: AbstractButtonOperator.java
/**
 * Maps {@code AbstractButton.setUI(ButtonUI)} through queue
 */
public void setUI(final ButtonUI buttonUI) {
    runMapping(new MapVoidAction("setUI") {
        @Override
        public void map() {
            ((AbstractButton) getSource()).setUI(buttonUI);
        }
    });
}
 
源代码24 项目: orbit-image-analysis   文件: OutlookBarMain.java
void addTab(JOutlookBar tabs, String title) {
  JPanel panel = new JPanel();
  panel.setLayout(new PercentLayout(PercentLayout.VERTICAL, 0));
  panel.setOpaque(false);

  String[] buttons = new String[] {"Inbox", "icons/outlook-inbox.gif",
    "Outbox", "icons/outlook-outbox.gif", "Drafts", "icons/outlook-inbox.gif",
    "Templates", "icons/outlook-inbox.gif", "Deleted Items",
    "icons/outlook-trash.gif",};

  for (int i = 0, c = buttons.length; i < c; i += 2) {
    JButton button = new JButton(buttons[i]);
    try {
      button.setUI((ButtonUI)Class.forName(
        (String)UIManager.get("OutlookButtonUI")).newInstance());
    } catch (Exception e) {
      e.printStackTrace();
    }
    button.setIcon(new ImageIcon(OutlookBarMain.class
      .getResource(buttons[i + 1])));
    panel.add(button);
  }

  JScrollPane scroll = tabs.makeScrollPane(panel);
  tabs.addTab("", scroll);

  // this to test the UI gets notified of changes
  int index = tabs.indexOfComponent(scroll);
  tabs.setTitleAt(index, title);
  tabs.setToolTipTextAt(index, title + " Tooltip");
}
 
源代码25 项目: pumpernickel   文件: TextSearchBar.java
/**
 * Sets the ButtonUI for all the non-checkbox buttons in this search bar.
 * 
 * @param ui
 *            the button UI to use for all non-checkbox buttons.
 */
public void setButtonUI(ButtonUI ui) {
	for (int a = 0; a < getComponentCount(); a++) {
		if (getComponent(a) instanceof JButton) {
			((JButton) getComponent(a)).setUI(ui);
		} else if (getComponent(a) instanceof JCheckBox) {
			// do nothing
		} else if (getComponent(a) instanceof JToggleButton) {
			((JToggleButton) getComponent(a)).setUI(ui);
		}
	}
	updateLayout(); // must update the UI of the close button correctly
}
 
源代码26 项目: pentaho-reporting   文件: ImageToggleButton.java
public void setUI( final ButtonUI ui ) {
  super.setUI( ui );

  if ( alignment != null ) {
    setAlignmentX( alignment );
  }
}
 
源代码27 项目: consulo   文件: JBCheckBox.java
/**
 * Sets given icon to display between checkbox icon and text.
 *
 * @return true in case of success and false otherwise
 */
public boolean setTextIcon(@Nonnull Icon icon) {
  ButtonUI ui = getUI();
  if (ui instanceof BasicRadioButtonUI) {
    Icon defaultIcon = ((BasicRadioButtonUI) ui).getDefaultIcon();
    if (defaultIcon != null) {
      MergedIcon mergedIcon = new MergedIcon(defaultIcon, 10, icon);
      setIcon(mergedIcon);
      return true;
    }
  }
  return false;
}
 
源代码28 项目: consulo   文件: StickyButton.java
@Override
public void setUI(ButtonUI ui) {
  if (ui instanceof StickyButtonUI) {
    super.setUI(ui);
  } else {
    super.setUI(createUI());
  }
}
 
源代码29 项目: dragonwell8_jdk   文件: ScreenMenuItemCheckbox.java
public void addNotify() {
    super.addNotify();

    // Avoid the Auto toggle behavior of AWT CheckBoxMenuItem
    CCheckboxMenuItem ccb = (CCheckboxMenuItem) getPeer();
    ccb.setAutoToggle(false);

    fMenuItem.addComponentListener(this);
    fPropertyListener = new ScreenMenuPropertyListener(this);
    fMenuItem.addPropertyChangeListener(fPropertyListener);
    addActionListener(this);
    addItemListener(this);
    fMenuItem.addItemListener(this);
    setIndeterminate(IndeterminateListener.isIndeterminate(fMenuItem));

    // can't setState or setAccelerator or setIcon till we have a peer
    setAccelerator(fMenuItem.getAccelerator());

    final Icon icon = fMenuItem.getIcon();
    if (icon != null) {
        this.setIcon(icon);
    }

    final String tooltipText = fMenuItem.getToolTipText();
    if (tooltipText != null) {
        this.setToolTipText(tooltipText);
    }

    // sja fix is this needed?
    fMenuItem.addItemListener(this);

    final ButtonUI ui = fMenuItem.getUI();
    if (ui instanceof ScreenMenuItemUI) {
        ((ScreenMenuItemUI)ui).updateListenersForScreenMenuItem();
    }

    if (fMenuItem instanceof JCheckBoxMenuItem) {
        forceSetState(fMenuItem.isSelected());
    } else {
        forceSetState(fMenuItem.getModel().isSelected());
    }
}
 
源代码30 项目: TencentKona-8   文件: ScreenMenuItemCheckbox.java
public void addNotify() {
    super.addNotify();

    // Avoid the Auto toggle behavior of AWT CheckBoxMenuItem
    CCheckboxMenuItem ccb = (CCheckboxMenuItem) getPeer();
    ccb.setAutoToggle(false);

    fMenuItem.addComponentListener(this);
    fPropertyListener = new ScreenMenuPropertyListener(this);
    fMenuItem.addPropertyChangeListener(fPropertyListener);
    addActionListener(this);
    addItemListener(this);
    fMenuItem.addItemListener(this);
    setIndeterminate(IndeterminateListener.isIndeterminate(fMenuItem));

    // can't setState or setAccelerator or setIcon till we have a peer
    setAccelerator(fMenuItem.getAccelerator());

    final Icon icon = fMenuItem.getIcon();
    if (icon != null) {
        this.setIcon(icon);
    }

    final String tooltipText = fMenuItem.getToolTipText();
    if (tooltipText != null) {
        this.setToolTipText(tooltipText);
    }

    // sja fix is this needed?
    fMenuItem.addItemListener(this);

    final ButtonUI ui = fMenuItem.getUI();
    if (ui instanceof ScreenMenuItemUI) {
        ((ScreenMenuItemUI)ui).updateListenersForScreenMenuItem();
    }

    if (fMenuItem instanceof JCheckBoxMenuItem) {
        forceSetState(fMenuItem.isSelected());
    } else {
        forceSetState(fMenuItem.getModel().isSelected());
    }
}
 
 类所在包
 类方法
 同包方法