home *** CD-ROM | disk | FTP | other *** search
- package javax.swing.plaf.metal;
-
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Dimension;
- import java.awt.Font;
- import java.awt.FontMetrics;
- import java.awt.Graphics;
- import java.awt.Rectangle;
- import javax.swing.AbstractButton;
- import javax.swing.ButtonModel;
- import javax.swing.Icon;
- import javax.swing.JComponent;
- import javax.swing.SwingUtilities;
- import javax.swing.UIManager;
- import javax.swing.plaf.ComponentUI;
- import javax.swing.plaf.basic.BasicButtonUI;
- import javax.swing.plaf.basic.BasicGraphicsUtils;
- import javax.swing.plaf.basic.BasicRadioButtonUI;
-
- public class MetalRadioButtonUI extends BasicRadioButtonUI {
- private static final MetalRadioButtonUI metalRadioButtonUI = new MetalRadioButtonUI();
- protected Color focusColor;
- protected Color selectColor;
- protected Color disabledTextColor;
- private boolean defaults_initialized = false;
-
- public static ComponentUI createUI(JComponent var0) {
- return metalRadioButtonUI;
- }
-
- protected Color getDisabledTextColor() {
- return this.disabledTextColor;
- }
-
- protected Color getFocusColor() {
- return this.focusColor;
- }
-
- protected Color getSelectColor() {
- return this.selectColor;
- }
-
- public void installDefaults(AbstractButton var1) {
- super.installDefaults(var1);
- if (!this.defaults_initialized) {
- this.focusColor = UIManager.getColor(((BasicRadioButtonUI)this).getPropertyPrefix() + "focus");
- this.selectColor = UIManager.getColor(((BasicRadioButtonUI)this).getPropertyPrefix() + "select");
- this.disabledTextColor = UIManager.getColor(((BasicRadioButtonUI)this).getPropertyPrefix() + "disabledText");
- this.defaults_initialized = true;
- }
-
- ((JComponent)var1).setOpaque(true);
- }
-
- public synchronized void paint(Graphics var1, JComponent var2) {
- AbstractButton var3 = (AbstractButton)var2;
- ButtonModel var4 = var3.getModel();
- Dimension var5 = ((Component)var2).getSize();
- int var6 = var5.width;
- int var7 = var5.height;
- Font var8 = ((Component)var2).getFont();
- var1.setFont(var8);
- FontMetrics var9 = var1.getFontMetrics();
- Rectangle var10 = new Rectangle(var5);
- Rectangle var11 = new Rectangle();
- Rectangle var12 = new Rectangle();
- Icon var13 = var3.getIcon();
- Object var14 = null;
- Object var15 = null;
- String var16 = SwingUtilities.layoutCompoundLabel(var2, var9, var3.getText(), var13 != null ? var13 : ((BasicRadioButtonUI)this).getDefaultIcon(), var3.getVerticalAlignment(), var3.getHorizontalAlignment(), var3.getVerticalTextPosition(), var3.getHorizontalTextPosition(), var10, var11, var12, ((BasicButtonUI)this).getDefaultTextIconGap(var3));
- if (var2.isOpaque()) {
- var1.setColor(((Component)var3).getBackground());
- var1.fillRect(0, 0, var5.width, var5.height);
- }
-
- if (var13 != null) {
- if (!var4.isEnabled()) {
- var13 = var3.getDisabledIcon();
- } else if (var4.isPressed() && var4.isArmed()) {
- var13 = var3.getPressedIcon();
- if (var13 == null) {
- var13 = var3.getSelectedIcon();
- }
- } else if (var4.isSelected()) {
- if (var3.isRolloverEnabled() && var4.isRollover()) {
- var13 = var3.getRolloverSelectedIcon();
- if (var13 == null) {
- var13 = var3.getSelectedIcon();
- }
- } else {
- var13 = var3.getSelectedIcon();
- }
- } else if (var3.isRolloverEnabled() && var4.isRollover()) {
- var13 = var3.getRolloverIcon();
- }
-
- if (var13 == null) {
- var13 = var3.getIcon();
- }
-
- var13.paintIcon(var2, var1, var11.x, var11.y);
- } else {
- ((BasicRadioButtonUI)this).getDefaultIcon().paintIcon(var2, var1, var11.x, var11.y);
- }
-
- if (var16 != null) {
- if (var4.isEnabled()) {
- var1.setColor(((Component)var3).getForeground());
- BasicGraphicsUtils.drawString(var1, var16, var4.getMnemonic(), var12.x, var12.y + var9.getAscent());
- } else {
- var1.setColor(((Component)var3).getBackground().darker());
- BasicGraphicsUtils.drawString(var1, var16, var4.getMnemonic(), var12.x, var12.y + var9.getAscent());
- }
-
- if (((JComponent)var3).hasFocus() && var3.isFocusPainted() && var12.width > 0 && var12.height > 0) {
- this.paintFocus(var1, var12, var5);
- }
- }
-
- }
-
- protected void paintFocus(Graphics var1, Rectangle var2, Dimension var3) {
- var1.setColor(this.getFocusColor());
- var1.drawRect(var2.x, var2.y - 1, var2.width + 1, var2.height + 1);
- }
-
- protected void uninstallDefaults(AbstractButton var1) {
- super.uninstallDefaults(var1);
- this.defaults_initialized = false;
- }
- }
-