Package kku.cs.fgl.gui

Source Code of kku.cs.fgl.gui.TButton

package kku.cs.fgl.gui;

import java.awt.AWTEvent;

import org.newdawn.slick.Color;
import org.newdawn.slick.Graphics;
import org.newdawn.slick.Image;
import org.newdawn.slick.SlickException;

public class TButton extends TComponent {
    private Image image;
    private Image hover;
    private String caption;
       
  public TButton() {
    this(0,0);
  }

  public TButton(float x, float y) {
    this(x,y,60,30);
  }

  public TButton(float x, float y, int width, int height) {
    super(x, y, width, height);
    try {
      image = new Image("gui/button-black.png");
      hover = new Image("gui/button-black-hover.png");
    } catch (SlickException e) {
      e.printStackTrace();
    }
  }


  @Override
  public void paint(Graphics g) {   
    //super.paint(g);
    Image img = image;
   
    if(isMouseEnterState() && hover != null)
      img=hover;
     
    if(img!=null){ 
      int iw = img.getWidth();
      int ih = img.getHeight();     
      g.drawImage(img,0,0,getWidth(),getHeight(),0,0,iw,ih,bcolor);
    }
    int h = getFont().getLineHeight();
    h = (getHeight()-h)/2;
    getFont().drawString(10,h,caption);
  }

  Color bcolor = Color.white;

  @Override
  public void mouseClicked(int button) {
    super.mouseClicked(button);
    if(button==0){
      bcolor = Color.yellow;
      fireActionEvent(100);
    }
  }

  int ctime=0;
  @Override
  public void update(int time) {
    super.update(time);
    ctime+=time;
    if(ctime>100){
      if(bcolor!=Color.white)bcolor = Color.white;
      ctime=0;
    }
  }

  public Color getBcolor() {
    return bcolor;
  }

  public void setBcolor(Color bcolor) {
    this.bcolor = bcolor;
  }

  public String getCaption() {
    return caption;
  }

  public void setCaption(String caption) {
    this.caption = caption;
  }

  public Image getHover() {
    return hover;
  }

  public void setHover(Image hover) {
    this.hover = hover;
  }

  public Image getImage() {
    return image;
  }

  public void setImage(Image image) {
    this.image = image;
  }


}
TOP

Related Classes of kku.cs.fgl.gui.TButton

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.