package mage.client.components.ext; import javax.swing.*; import java.awt.*; /** * @author mw, noxx */ public class ShadowLabel extends JLabel { private String text; private Font f; private boolean invertColors = false; public ShadowLabel() { super(); } public ShadowLabel(String text, int size) { super(); this.text = text; f = new Font("Dialog", 1, size); } @Override public void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2D = (Graphics2D) g; // //////////////////////////////////////////////////////////////// // antialiasing g2D.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); // //////////////////////////////////////////////////////////////// /** * draw text */ if (!invertColors) { g2D.setFont(f); g2D.setColor(new Color(0, 0, 0)); g2D.drawString(this.text, 1, 14); g2D.setColor(new Color(255, 255, 255, 230)); g2D.drawString(this.text, 0, 13); } else { g2D.setFont(f); g2D.setColor(new Color(255, 255, 255, 230)); g2D.drawString(this.text, 1, 14); g2D.setColor(new Color(0, 0, 0)); g2D.drawString(this.text, 0, 13); } g2D.dispose(); } public void setInvertColors(boolean invertColors) { this.invertColors = invertColors; } public void setText(String text) { this.text = text; repaint(); } /** * Default UID */ private static final long serialVersionUID = 1L; }