< prev index next >
src/java.desktop/share/classes/javax/swing/plaf/basic/BasicButtonUI.java
Print this page
*** 36,45 ****
--- 36,46 ----
import java.awt.*;
import java.awt.event.*;
import javax.swing.plaf.ButtonUI;
import javax.swing.plaf.UIResource;
import javax.swing.plaf.ComponentUI;
+ import javax.swing.plaf.TextUIDrawing;
import javax.swing.text.View;
/**
* BasicButton implementation
*
*** 62,71 ****
--- 63,74 ----
/**
* The default offset of a text.
*/
protected int defaultTextShiftOffset;
+ private TextUIDrawing textUIDrawing;
+
private static final String propertyPrefix = "Button" + ".";
private static final Object BASIC_BUTTON_UI_KEY = new Object();
// ********************************
*** 138,147 ****
--- 141,151 ----
if (rollover != null) {
LookAndFeel.installProperty(b, "rolloverEnabled", rollover);
}
LookAndFeel.installProperty(b, "iconTextGap", Integer.valueOf(4));
+ textUIDrawing = SwingUtilities2.getTextUIDrawing(textUIDrawing);
}
/**
* Registers listeners.
*
*** 215,224 ****
--- 219,232 ----
*
* @param b an abstract button
*/
protected void uninstallDefaults(AbstractButton b) {
LookAndFeel.uninstallBorder(b);
+ if (textUIDrawing != SwingUtilities2.DEFAULT_UI_TEXT_DRAWING
+ && textUIDrawing instanceof UIResource) {
+ textUIDrawing = SwingUtilities2.DEFAULT_UI_TEXT_DRAWING;
+ }
}
// ********************************
// Create Listeners
// ********************************
*** 379,399 ****
/* Draw the Text */
if(model.isEnabled()) {
/*** paint the text normally */
g.setColor(b.getForeground());
! SwingUtilities2.drawStringUnderlineCharAt(c, g,text, mnemonicIndex,
textRect.x + getTextShiftOffset(),
textRect.y + fm.getAscent() + getTextShiftOffset());
}
else {
/*** paint the text disabled ***/
g.setColor(b.getBackground().brighter());
! SwingUtilities2.drawStringUnderlineCharAt(c, g,text, mnemonicIndex,
textRect.x, textRect.y + fm.getAscent());
g.setColor(b.getBackground().darker());
! SwingUtilities2.drawStringUnderlineCharAt(c, g,text, mnemonicIndex,
textRect.x - 1, textRect.y + fm.getAscent() - 1);
}
}
/**
--- 387,407 ----
/* Draw the Text */
if(model.isEnabled()) {
/*** paint the text normally */
g.setColor(b.getForeground());
! textUIDrawing.drawStringUnderlineCharAt(c, g,text, mnemonicIndex,
textRect.x + getTextShiftOffset(),
textRect.y + fm.getAscent() + getTextShiftOffset());
}
else {
/*** paint the text disabled ***/
g.setColor(b.getBackground().brighter());
! textUIDrawing.drawStringUnderlineCharAt(c, g,text, mnemonicIndex,
textRect.x, textRect.y + fm.getAscent());
g.setColor(b.getBackground().darker());
! textUIDrawing.drawStringUnderlineCharAt(c, g,text, mnemonicIndex,
textRect.x - 1, textRect.y + fm.getAscent() - 1);
}
}
/**
< prev index next >