package com.robonobo.gui.components.base;
import java.awt.*;
import javax.swing.JTextArea;
import javax.swing.text.Document;
import com.robonobo.gui.GuiUtil;
import com.robonobo.gui.RoboFont;
public class RTextArea extends JTextArea {
private Color bgColor = null;
public RTextArea() {
super();
setupFont();
}
public RTextArea(Document doc, String text, int rows, int columns) {
super(doc, text, rows, columns);
setupFont();
}
public RTextArea(Document doc) {
super(doc);
setupFont();
}
public RTextArea(int rows, int columns) {
super(rows, columns);
setupFont();
}
public RTextArea(String text, int rows, int columns) {
super(text, rows, columns);
setupFont();
}
public RTextArea(String text) {
super(text);
setupFont();
}
public void setBGColor(Color bgColor) {
this.bgColor = bgColor;
}
protected void setupFont() {
Font font = getRFont();
if (font != null)
setFont(font);
}
protected Font getRFont() {
return RoboFont.getFont(12, false);
}
@Override
protected void paintComponent(Graphics g) {
GuiUtil.makeTextLookLessRubbish(g);
if (bgColor != null) {
g.setColor(bgColor);
g.fillRect(0, 0, getWidth(), getHeight());
}
super.paintComponent(g);
}
}