/* * EstruturaProcessoMutableTreeNode.java * * Created on 29 de Abril de 2007, 18:57 * * To change this template, choose Tools | Template Manager * and open the template in the editor. */ package siprp.medicina.processo.estrutura; import com.evolute.utils.data.IDObject; import com.evolute.utils.images.ImageIconLoader; import javax.swing.Icon; import javax.swing.tree.DefaultMutableTreeNode; /** * * @author Frederico */ abstract public class EstruturaProcessoMutableTreeNode extends DefaultMutableTreeNode implements IDObject { protected Icon icon; protected Integer id; protected String descricao; /** Creates a new instance of EstruturaProcessoMutableTreeNode */ public EstruturaProcessoMutableTreeNode( Integer id, String descricao ) { super( descricao ); this.id = id; this.descricao = descricao; } public Integer getID() { return id; } public void setID( Integer id ) { this.id = id; } public String getDescricao() { return descricao; } public void setDescricao( String descricao ) { this.descricao = descricao; setUserObject( descricao ); } abstract protected String getIconPath(); public Icon getICon() { loadIcon(); return icon; } protected void loadIcon() { if( icon == null ) { try { icon = ImageIconLoader.loadImageIcon( getClass(), getIconPath() ); } catch( Exception ex ) { ex.printStackTrace(); } } } }