コード例 #1
0
ファイル: SynthButtonUI.java プロジェクト: FauxFaux/jdk9-jdk
  void updateStyle(AbstractButton b) {
    SynthContext context = getContext(b, SynthConstants.ENABLED);
    SynthStyle oldStyle = style;
    style = SynthLookAndFeel.updateStyle(context, this);
    if (style != oldStyle) {
      if (b.getMargin() == null || (b.getMargin() instanceof UIResource)) {
        Insets margin = (Insets) style.get(context, getPropertyPrefix() + "margin");

        if (margin == null) {
          // Some places assume margins are non-null.
          margin = SynthLookAndFeel.EMPTY_UIRESOURCE_INSETS;
        }
        b.setMargin(margin);
      }

      Object value = style.get(context, getPropertyPrefix() + "iconTextGap");
      if (value != null) {
        LookAndFeel.installProperty(b, "iconTextGap", value);
      }

      value = style.get(context, getPropertyPrefix() + "contentAreaFilled");
      LookAndFeel.installProperty(b, "contentAreaFilled", value != null ? value : Boolean.TRUE);

      if (oldStyle != null) {
        uninstallKeyboardActions(b);
        installKeyboardActions(b);
      }
    }
  }
コード例 #2
0
ファイル: SynthButtonUI.java プロジェクト: FauxFaux/jdk9-jdk
  /** {@inheritDoc} */
  @Override
  protected void uninstallDefaults(AbstractButton b) {
    SynthContext context = getContext(b, ENABLED);

    style.uninstallDefaults(context);
    style = null;
  }
コード例 #3
0
ファイル: SynthButtonUI.java プロジェクト: FauxFaux/jdk9-jdk
  /**
   * Paints the specified component.
   *
   * @param context context for the component being painted
   * @param g the {@code Graphics} object used for painting
   * @see #update(Graphics,JComponent)
   */
  protected void paint(SynthContext context, Graphics g) {
    AbstractButton b = (AbstractButton) context.getComponent();

    g.setColor(context.getStyle().getColor(context, ColorType.TEXT_FOREGROUND));
    g.setFont(style.getFont(context));
    context
        .getStyle()
        .getGraphicsUtils(context)
        .paintText(
            context,
            g,
            b.getText(),
            getIcon(b),
            b.getHorizontalAlignment(),
            b.getVerticalAlignment(),
            b.getHorizontalTextPosition(),
            b.getVerticalTextPosition(),
            b.getIconTextGap(),
            b.getDisplayedMnemonicIndex(),
            getTextShiftOffset(context));
  }
コード例 #4
0
ファイル: SynthButtonUI.java プロジェクト: FauxFaux/jdk9-jdk
 private Icon getSynthIcon(AbstractButton b, int synthConstant) {
   return style.getIcon(getContext(b, synthConstant), getPropertyPrefix() + "icon");
 }