/* * ButtonPainter.java * * Created on 29 ������� 2006 �., 22:44 * */ package datechooser.view.appearance.swing; import datechooser.view.appearance.*; import java.awt.*; import javax.swing.*; import javax.swing.border.Border; /** * Draws cells using JButton, Look & Feel support.<br> * ����������� �����-������. ���������� ��� ��������� ����� JButton. * ������������ Look & Feel. * @author Androsov Vadim * @since 1.0 */ public class ButtonPainter implements Painter, SwingCellAttributes { private JButton button; private ButtonModel model; public ButtonPainter() { setButton(new JButton("?")); model = button.getModel(); button.setMargin(new Insets(2, 2, 2, 2)); button.setOpaque(true); } public JButton getButton() { return button; } public void setButton(JButton button) { this.button = button; } public void setText(String text) { button.setText(text); } public void setFont(Font font) { button.setFont(font); } public Font getFont() { return button.getFont(); } public void setTextColor(Color color) { button.setForeground(color); } public void updateUI() { button.updateUI(); } public void setSize(int width, int height) { button.setSize(width, height); } public void paint(Graphics2D g) { button.paint(g); } public Border getBorder() { return button.getBorder(); } public void setPressed(boolean pressed) { model.setPressed(pressed); model.setArmed(pressed); } public void setEnabled(boolean enabled) { model.setEnabled(enabled); } public Color getTextColor() { return button.getForeground(); } public Object clone() { return new ButtonPainter(); } public void assign(CellAppearance newAppearance) { } public Component getComponent(Component c) { return button; } }