コード例 #1
0
ファイル: JMenu.java プロジェクト: flesire/jnode.mirror
  public void draw(Toolkit toolkit) {
    /* Get the absolute origin of this component.
     */
    Point origin = getLocationOnScreen();

    int colorpair = getCursesColor();

    toolkit.setCursor(origin);

    int attribute = 0;
    if (!(getParent() instanceof JMenuBar)) {
      // This menu is in a JPopupMenu.
      super.draw(toolkit);
    } else {
      attribute = (super.hasFocus()) ? Toolkit.A_BOLD : Toolkit.A_REVERSE;
      toolkit.addString(" ", attribute, colorpair);
      toolkit.addString(super.getText(), attribute, colorpair);
      toolkit.addString(" ", attribute, colorpair);

      if (super.getMnemonic() > 0) {
        int mnemonicPos = super.getText().indexOf((char) super.getMnemonic());
        if (mnemonicPos != -1) {
          toolkit.setCursor(origin.addOffset(mnemonicPos + 1, 0));
          toolkit.addChar(super.getMnemonic(), attribute | Toolkit.A_UNDERLINE, colorpair);
        }
      }
    }
  }