import java.awt.Color;
import java.awt.Font;
import javax.tv.xlet.Xlet;
import javax.tv.xlet.XletContext;
import javax.tv.xlet.XletStateChangeException;
import org.havi.ui.HScene;
import org.havi.ui.HSceneFactory;
import org.havi.ui.HScreen;
import org.havi.ui.HStaticText;
public class SampleXlet implements Xlet{
private XletContext contexto;
private HStaticText labelHello;
private HScene scene;
/**
* Construtor do Xlet que deve permanecer vazio.
*/
public SampleXlet() {
}
/**
* Metodo de inicializão do Xlet, onde todos os componentes devem ser
* iniciados.
*/
public void initXlet(XletContext contexto) throws XletStateChangeException {
// Seta o Contexto e Scene
this.contexto = contexto;
this.scene = HSceneFactory.getInstance().getFullScreenScene(
HScreen.getDefaultHScreen().getDefaultHGraphicsDevice());
// Seta as propriedades no label
this.labelHello = new HStaticText("MyFirst");
this.labelHello.setFont(new Font("Verdana", Font.BOLD, 30));
this.labelHello.setBounds(100,99, 200, 50);
this.labelHello.setForeground(Color.WHITE);
this.labelHello.setBackground(new Color(0, 0, 0, 128));
// Adiciona o Label a Scene
this.scene.add(this.labelHello);
}
/**
* Metodo que é executado quando o Xlet começa a rodar
*/
public void startXlet() {
this.scene.setVisible(true);
}
/**
* Caso possa ser pausada a aplicação todos os recursos devem ser liberados nesse método
*/
public void pauseXlet() {
}
/**
* Metodo chamado para finalizar um Xlet.
* Liberar todos os recursos antes de finalizar a aplicação
*/
public void destroyXlet(boolean condicao) throws XletStateChangeException {
this.contexto.notifyDestroyed();
}
}
Essa aplicação é simplesmente para colocar um label na tela com um texto. Para compilar o código você vai precisar do XletView:
Despois de baixar é só extrair e executar o xletview.jar, onde encontram-se todas as classes que vamos precisar para construir nossa primeira xlet, adicione essa biblioteca ao seu CLASSPATH. Um ponto importante do código que merece destaque são as classes importadas, ela utiliza um pacote org.havi.ui para a construção das interfaces.
Para executar esse exemplo, vá em Applications / Manage Applications, uma tela deverá aparecer na lista da esquerda, selecione o item e suas propriedades aparecem na parte direita, escolhe o caminho onde está o .class do nosso aplicativo e salve, agora é só rodar a aplicação e se divertir com o código.
A sua execução começa pelo método Loaded() onde ele só entra uma única vez, depois a aplicação é executada ele direciona para o método Started() e agora pode ser pausada Paused() ou destruida Destroyed() onde termina seu ciclo de vida, esse fluxo é semelhante ao applets e MIDlets.
public interface Xlet {
public void initXlet(XletContext context) throws XletStateChangeException;
public void startXlet() throws XletStateChangeException;
public void pauseXlet();
public void destroyXlet(boolean unconditional) throws XletStateChangeException;
}
Nenhum comentário foi encontrado.