00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 package com.realtime.crossfire.jxclient.gui.label;
00023
00024 import com.realtime.crossfire.jxclient.gui.gui.GUIElementListener;
00025 import com.realtime.crossfire.jxclient.gui.gui.GuiUtils;
00026 import com.realtime.crossfire.jxclient.gui.gui.TooltipManager;
00027 import java.awt.Color;
00028 import java.awt.Dimension;
00029 import java.awt.Font;
00030 import java.awt.Graphics;
00031 import java.awt.Graphics2D;
00032 import java.awt.image.BufferedImage;
00033 import org.jetbrains.annotations.NotNull;
00034 import org.jetbrains.annotations.Nullable;
00035
00040 public class GUIOneLineLabel extends GUILabel {
00041
00045 private static final long serialVersionUID = 1;
00046
00059 public GUIOneLineLabel(@NotNull final TooltipManager tooltipManager, @NotNull final GUIElementListener elementListener, @NotNull final String name, @Nullable final BufferedImage picture, @NotNull final Font font, @NotNull final Color color, @Nullable final Color backgroundColor, @NotNull final Alignment alignment, @NotNull final String text) {
00060 super(tooltipManager, elementListener, name, picture, text, font, color, backgroundColor, alignment);
00061 }
00062
00066 @Override
00067 public void paintComponent(@NotNull final Graphics g) {
00068 super.paintComponent(g);
00069 drawLine((Graphics2D)g, 0, getHeight(), getText());
00070 }
00071
00075 @Nullable
00076 @Override
00077 public Dimension getPreferredSize() {
00078 return getMinimumSizeInt();
00079 }
00080
00084 @Nullable
00085 @Override
00086 public Dimension getMinimumSize() {
00087 return getMinimumSizeInt();
00088 }
00089
00094 @NotNull
00095 private Dimension getMinimumSizeInt() {
00096 return GuiUtils.getTextDimension(getText(), getFontMetrics(getTextFont()));
00097 }
00098
00099 }