private void configureAbstractButton(AbstractButton button, String resource) {
   String title = resources.getString(resource);
   int i = title.indexOf('&');
   int mnemonic = 0;
   if (i >= 0) {
     mnemonic = title.charAt(i + 1);
     title = title.substring(0, i) + title.substring(i + 1);
     button.setText(title);
     button.setMnemonic(Character.toUpperCase(mnemonic));
     button.setDisplayedMnemonicIndex(i);
   } else button.setText(title);
 }
Example #2
0
  private JComponent addItem(
      final Component pComponent, final KToolbarImpl pToolbar, final Action pAction) {
    JComponent item = null;
    final String key = (String) pAction.getValue(Action.NAME);

    if (pAction instanceof KMenu) {
      final KMenu actionMenu = (KMenu) pAction;
      item = actionMenu.create(pComponent);
      pToolbar.add(item);
    } else if (pAction == KAction.SEPARATOR) {
      pToolbar.addSeparator();
    } else if (pAction instanceof KComponentAction) {
      item = ((KComponentAction) pAction).getComponent();
      pToolbar.add(item);
    } else {
      AbstractButton button;
      ActionGroup group = (ActionGroup) pAction.getValue(KAction.KEY_GROUP);
      if (group != null) {
        button = new JToggleButton(pAction);
        ((JToggleButton) button).setSelected(group.getSelected() == pAction);
        ButtonGroup bg = group.getButtonGroup(ResKey.TOOLBAR);
        bg.add(button);
      } else {
        button = new JButton(pAction);
      }
      item = button;

      final WidgetResources wr = ResourceAdapter.getInstance().getWidget(key, ResKey.TOOLBAR);
      Icon icon = wr.getIcon();
      if (icon == null) {
        icon = DEF_ICON;
      }
      button.setIcon(icon);
      button.setToolTipText(wr.getToolTip());
      button.setMargin(ZERO_INSETS);
      button.setRequestFocusEnabled(false);
      button.setFocusable(false);

      if (false) {
        button.setText(wr.getText());
        button.setMnemonic(wr.getMnenomnic());
        button.setDisplayedMnemonicIndex(wr.getMnenomnicIndex());
      } else {
        button.setText(null);
      }
    }

    if (item != null) {
      pToolbar.add(item);
    }
    return item;
  }
 /** @noinspection ALL */
 private void $$$loadButtonText$$$(AbstractButton component, String text) {
   StringBuffer result = new StringBuffer();
   boolean haveMnemonic = false;
   char mnemonic = '\0';
   int mnemonicIndex = -1;
   for (int i = 0; i < text.length(); i++) {
     if (text.charAt(i) == '&') {
       i++;
       if (i == text.length()) break;
       if (!haveMnemonic && text.charAt(i) != '&') {
         haveMnemonic = true;
         mnemonic = text.charAt(i);
         mnemonicIndex = result.length();
       }
     }
     result.append(text.charAt(i));
   }
   component.setText(result.toString());
   if (haveMnemonic) {
     component.setMnemonic(mnemonic);
     component.setDisplayedMnemonicIndex(mnemonicIndex);
   }
 }