/*
* JavaXYQ Engine
*
* javaxyq@2008 all rights.
* http://www.javaxyq.com
*/
package com.javaxyq.ui;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import com.javaxyq.model.Option;
/**
* @author ����ΰ
* @history 2008-6-9 ����ΰ �½�
*/
public class OptionLabel extends RichLabel {
private static final long serialVersionUID = -2826555036505106535L;
private Option option;
private static EventHandler eventHandler = new EventHandler();
public Option getOption() {
return option;
}
public void setOption(Option option) {
this.option = option;
}
public OptionLabel(Option option) {
super("#R"+option.getText());
this.option = option;
this.addMouseListener(eventHandler);
this.addMouseMotionListener(eventHandler);
}
private static class EventHandler implements MouseListener, MouseMotionListener {
public void mouseClicked(MouseEvent e) {
}
public void mouseDragged(MouseEvent e) {
}
public void mousePressed(MouseEvent e) {
RichLabel label = (RichLabel) e.getSource();
label.setLocation(label.getX() + 1, label.getY() + 1);
}
public void mouseReleased(MouseEvent e) {
RichLabel label = (RichLabel) e.getSource();
label.setLocation(label.getX() - 1, label.getY() - 1);
}
public void mouseMoved(MouseEvent e) {
//RichLabel label = (RichLabel) e.getSource();
//String text = label.getText();
//label.setText(text.replaceAll("#R", "#G"));
}
public void mouseExited(MouseEvent e) {
RichLabel label = (RichLabel) e.getSource();
String text = label.getText();
label.setText(text.replaceAll("#G", "#R"));
}
public void mouseEntered(MouseEvent e) {
RichLabel label = (RichLabel) e.getSource();
String text = label.getText();
label.setText(text.replaceAll("#R", "#G"));
}
}
@Override
public void paintImmediately(int x, int y, int w, int h) {
//super.paintImmediately(x, y, w, h);
}
}