superwaba mobile

43
Desenvolvendo Aplicações Móveis com SuperWaba 1 Desenvolvendo Desenvolvendo Desenvolvendo Desenvolvendo Aplicações Móveis Aplicações Móveis Aplicações Móveis Aplicações Móveis com SuperWaba com SuperWaba com SuperWaba com SuperWaba Wellington Pinto de Oliveira Wallace Pinto de Oliveira 1a. Edição Cópia não autorizada é crime – Lei 9.610 de 19/02/1998

Upload: viclo82

Post on 12-Jun-2015

355 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 1

Desenvolvendo Desenvolvendo Desenvolvendo Desenvolvendo

Aplicações Móveis Aplicações Móveis Aplicações Móveis Aplicações Móveis

com SuperWabacom SuperWabacom SuperWabacom SuperWaba

Wellington Pinto de Oliveira Wallace Pinto de Oliveira

1a. Edição Cópia não autorizada é crime – Lei 9.610 de 19/02/1998

Page 2: Superwaba Mobile

2 Desenvolvendo Aplicações Móveis com SuperWaba

Sobre os Autores

Wellington Pinto de Oliveira é formado em Ciência da Computação e entusiasta plataforma Palm desde 2001. Possui experiência com várias ferramentas, como Sattelite Forms, AppForge, CodeWarrior, NS Basic e HB++, e presta consultoria na área de desenvolvimento Palm. Embaiu para contato: [email protected] Wallace Pinto de Oliveira é Especialista em Engenharia de Software pela Pontifícia Universidade Católica de Minas Gerais e bacharel em Ciência da Computação pela Universidade Federal de Viçosa – MG. Trabalha com desenvolvimento de software há mais de dez anos é especialista nas ferramentas Borland Delphi, da qual é profissional certificado desde a versão 3, e Visual Studio .NET. E-mail para contato: [email protected]

Marcas Registradas

Várias Marcas Registradas aparecem no decorrer desta obra. Mais do que simplesmente listar estes nomes informar que possui seus direitos de exploração, ou ainda imprimir os logotipos das mesmas, os autores declaram estar utilizando tais nomes apenas para fins editoriais, em benefício exclusivo do dono da Marca Registrada, sem intenção de infringir as regras de sua utilização.

Dizeres Legais

Todos os direitos reservados a Wellington Pinto de Oliveira e Wallace Pinto de Oliveira. Nenhuma parte desta obra poderá ser reproduzida, transmitida e gravada, por qualquer meio eletrônico, mecânico, por fotocópia e outros, sem a prévia autorização, por escrito, dos autores.

Page 3: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 3

Índice

SOBRE OS AUTORES.....................................................................................................................................1

SOBRE OS AUTORES.....................................................................................................................................2

MARCAS REGISTRADAS ...............................................................................................................................2

DIZERES LEGAIS ............................................................................................................................................2

CAPÍTULO 1.....................................................................................................................................................7

INTRODUÇÃO..................................................................................................................................................7

Objetivos Deste Capítulo.................................................................................................................................. 7

SuperWaba........................................................................................................................................................ 7

Requerimentos .................................................................................................................................................. 7

Convenções ........................................................................................................................................................ 7

O Código do Livro ............................................................................................................................................ 8

Download........................................................................................................................................................... 8 JDK J2SE 6.0 ............................................................................................................................................................... 8 Eclipse 3.3.................................................................................................................................................................. 12 Palm OS Emulator...................................................................................................................................................... 13 SuperWaba SDK........................................................................................................................................................ 13

CAPÍTULO 2...................................................................................................................................................16

INSTALANDO E CONFIGURANDO O AMBIENTE.......................................................................................16

Objetivos Deste Capítulo................................................................................................................................ 16

Introdução ....................................................................................................................................................... 16

Instalando a JDK ............................................................................................................................................ 16

Instalando o Eclipse........................................................................................................................................ 20

Configurando o Eclipse .................................................................................................................................. 21

Instalando o SuperWaba SDK....................................................................................................................... 28

Instalando o Palm OS Emulator.................................................................................................................... 30

Configurando o Palm OS Emulator .............................................................................................................. 32

CAPÍTULO 3...................................................................................................................................................33

HELLO WORLD .............................................................................................................................................33

Page 4: Superwaba Mobile

4 Desenvolvendo Aplicações Móveis com SuperWaba

Objetivos Deste Capítulo ............................................................................................................................... 33

Introdução....................................................................................................................................................... 34

Page 5: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 5

Índice da Versão Completa CAPÍTULO 4 44 A LINGUAGEM 44 Objetivos Deste Capítulo 44 Introdução 44 Algoritmos 44 Variáveis, Operadores e Estruturas de Controle 45 Tipos de Dados Primitivos 45 Declaração de variáveis 47 Comentários 49 Operadores 50 Estruturas de Controle 54 Gerando suas Próprias Exceções 68 CAPÍTULO 5 70 PROGRAMAÇÃO ORIENTADA A OBJETOS 70 Objetivos Deste Capítulo 70 Introdução 70 Especificando uma Classe 70 Objetos 72 Atributos 72 Coleta automática de lixo 73 Acesso aos atributos e métodos e alterações dos atributos 73 Métodos 73 Sintaxe de declaração de métodos 73 this 75 Sintaxe de chamada ou acesso a métodos 76 Nova versão do programa Circulo 76 Construtores 78 Destrutores Ou "finalizers" 80 Ponteiros, Referências e Objetos 81 Passagem por Referência 81 Vetores e Matrizes 81 Encapsulamento 82 Encapsulando Métodos e Atributos 82 Quando Utilizar Encapsulamento? 84 Herança 84 Curiosidade 84 Hierarquia de Tipos 84 Uma Hierarquia Simples 85 Construtores e herança 85 Protected 88 Interfaces 88 Polimorfismo e Classes Abstratas 89 Redefinição de Métodos para uma Classe Herdeira 90 CAPÍTULO 6 90 USER INTERFACE 90 Objetivos Deste Capítulo 90 O que é uma Interface 91 Interface com SuperWaba 91 Principais classes do pacote waba.ui 91 Classe Container 91 Classe MainWindow 92 Adicionando Controles 94 Constantes para Posicionamento e Dimensão 96 Eventos 111 Classe Event 111 Controls 114 CAPÍTULO 7 142 CATALOG 143 Objetivos Deste Capítulo 143 O que é o Catalog 143 Principais Métodos da Classe 143

Page 6: Superwaba Mobile

6 Desenvolvendo Aplicações Móveis com SuperWaba

addRecord 143 close 144 delete 144 listCatalogs 144 getRecordCount 144 isOpen 144 rename 144 setRecordPos 145 Um Exemplo Prático 145 Total de Págias: 175

Atenção: Para adquirir o restante deste material acesse o site www.softpalm.com.br ou entre em contato com o autor pelo e-mail: [email protected]

Obrigado(a),

Wellington Pinto de Oliveira

Page 7: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 7

Capítulo 1

11 Introdução

Objetivos Deste Capítulo � Conhecer um pouco mais sobre as ferramentas adotadas e o SDK SuperWaba;

� Conhecer os requerimentos mínimos para se utilizar o Eclipse;

� Realizar o download dos arquivos necessários.

SuperWaba

Requerimentos

Antes de instalar a ferramenta devemos conhecer os requisitos mínimos para se executar o Eclipse e o SuperWaba:

� Windows® 98 ou superior, Windows® NT 4.0 (service pack 3 recomendado) ou

superior, Windows® 2000 ou Windows® XP;

� Pentium 233Mhz;

� Super VGA vídeo card;

� 128 MB de RAM;

Convenções

Utilizamos uma série de estilos de texto e layout no livro para auxiliar a distinguir os diferentes tipos de informações. A seguir estão exemplos dos estilos mais utilizados e uma explicação do que

Page 8: Superwaba Mobile

8 Desenvolvendo Aplicações Móveis com SuperWaba

significam:

Os marcadores aparecem recuados, a seguinte maneira:

� Uma pequena esfera é utilizada para marcar um item;

Todos os caminhos e atalhos estão em negrito, exemplo:

Iniciar | Programas | Assessórios | Bloco de Notas

O caminho acima é um exemplo de atalho para o Bloco de Notas.

O código fonte está limitado entre duas linhas horizontais e com as linhas numeradas.

1

2 //criando uma variável

3 String minha_variavel = “”;

4 //atribuindo dados a uma variável

5 minha_variavel = “Wellington Pinto de Oliveira”;

6

E logo após o código estarei comentando o código fonte utilizando como referência os números das linhas.

Quando for necessário exibir uma sintaxe de algum método ou rotina estarei adicionando um fundo cinza, conforme o exemplo abaixo:

alguma Sintaxe

O Código do Livro O código do livro está disponível para download na página http://ww.softpalm.com.br/######.aspx

digite o código ************ para efetuar o download.

Nesta página também é possível encontrar todos os programas e aplicativos utilizados ao longo do livro.

Download Todos os arquivos necessários serão adquiridos na Internet, será necessário realizar o download de

quatro arquivos básicos, são eles:

JDK J2SE 6.0 O primeiro passo para que você comece a desenvolver programas em Java, consiste em obter o Kit

de Desenvolvimento Java, que já está na versão 1.6, atualmente conhecido com J2SE 6.0. Para conseguir o J2SE 6.0 JDK você deve acessar o endereço: http://developers.sun.com/downloads/ e selecionar a JDK atual conforme a imagem abaixo.

Atenção: Esta seqüência de imagens foram obtidas no dia 22/10/2007 no link acima informado.

Page 9: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 9

Figura 1 - Área de Download da Sun

Ao selecionar a JDK, o leitor será redirecionado a uma pagina semelhante a exibida abaixo, nela vários arquivos referentes a JDK estão listados e disponíveis para download.

Page 10: Superwaba Mobile

10 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 2 - Download da JDK

Neste momento só nos interessa a JDK, na imagem acima tem um botão, clique no botão para ser redirecionado para a área de downloads.

Figura 3 - Itens não seguros.

Pressione Sim para continuar com o processo.

Page 11: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 11

Figura 4 - Termo de licença.

Antes de realizar o download você tem que concordar com os termos, na imagem acima temos em foco Accept e Decline, para realizar o download pressione Accept.

Figura 5 - Selecionado o arquivo referente ao sistema operacional.

Page 12: Superwaba Mobile

12 Desenvolvendo Aplicações Móveis com SuperWaba

A pagina deve realizar um PostBack automaticamente, agora é só selecionar o arquivo de acordo com o seu sistema operacional.

Eclipse 3.3 No momento da edição deste livro, a versão disponível é a 3.3, mas como se trata de um

desenvolvimento open source, essas versões são rapidamente alteradas. Você pode baixar o IDE do Eclipse no endereço http://www.eclipse.org/downloads

Atenção: Esta seqüência de imagens foram obtidas no dia 22/10/2007 no link acima informado.

Figura 6 - Área de Download da comunidade eclipse.org

Realize o download do Eclipse Clássico, na imagem acima o link aparece em destaque.

Page 13: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 13

Figura 7 - Selecionando o mirror

Selecione o melhor mirror, no meu caso utilizei [Brazil] PUCPR(ftp).

Palm OS Emulator Ferramenta gratuita disponibilizada pela Palm destinada a depuração de código ainda na época do

C, ele é capaz de emular sistemas operacionais 68K. Esta ferramenta é ideal para apresentações de sistemas em Reuniões, palestras, etc.. Mesmo utilizando o Applet da SuperWaba para depurar os projetos é interessante ter esta ferramenta sempre em mãos.

Efetue o download através do link: http://www.softpalm.com.br/download/PalmOSEmulator.zip .O link é direto e não precisa Login.

SuperWaba SDK Para realizar o download da SDK, primeiro o usuário deve se cadastrar na comunidade, para isso o

leitor deve acessar: http://www.superwaba.com.br/pt/inscricao.asp , conforme a imagem abaixo.

Page 14: Superwaba Mobile

14 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 8 - Cadastro do SuperWaba

Ao realizar o cadastro o novo usuário deve receber um e-mail, estas informações estão disponíveis em uma mensagem exibida logo após o cadastro.

Figura 9 - Considerações finais

Na caixa de e-mail, o novo usuário deve receber um e-mail com um link de ativação, veja na imagem abaixo o e-mail recebido quando o autor escreveu este livro.

Page 15: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 15

Figura 10 - E-mail recebido pelo autor

Ao clicar no link será aberto uma nova janela no seu navegador, faça o login e será exibido uma pagina com alguns links e considerações (Ver figura abaixo), faça download do Kit de Desenvolvimento de Software completo.

Figura 11 - Arquivos para download no superwaba.com.br

O leitor deve aceitar os termos para liberar o link.

Figura 12 - Termos

Page 16: Superwaba Mobile

16 Desenvolvendo Aplicações Móveis com SuperWaba

Capítulo 2

22 Instalando e Configurando o Ambiente

Objetivos Deste Capítulo � Instalar o Eclipse e configurar;

� Importar o pacote SuperWaba.jar;

� Instalar e configurar o Palm OS Emulator;

Introdução O SuperWaba não possui um IDE próprio, ele utiliza o eclipse para manipulação de código fonte, ele

utiliza o Eclipse. O Eclipse é uma IDE de desenvolvimento de programação, inicialmente desenvolvida pela IBM, que, segundo notícias, gastou mais de 40 Milhões de dólares no seu desenvolvimento antes de se transformar essa ferramenta em Open Source para um consórcio, chamado Eclipse.org, que inicialmente incluiu a Borland, IBM, Merant, QNX Software Systems, Rational Software, Red Hat, SuSE, TogetherSoft e Webgain.

Instalando a JDK A primeira instalação deve ser a JDK, encontre o arquivo obtido no download na SUN e execute o

arquivo, abaixo temos uma seqüência de telas obtidas durante o processo de instalação.

Page 17: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 17

Figura 13 - Instalando o JDK jdk-6u-windows-j586-p.exe

Leia os termos de licença exibidos pela ferramenta, afinal não se deve aceitar nada sem ler nos dias de hoje.

Figura 14 - Termos de licença.

Caso esteja de acordo pressione Accept e avance no processo de instalação.

Figura 15 - Opções de instalação de arquivos

Faça uma analise e instale o que realmente achar importante, caso queira manter a mesma instalação do autor prossiga sem alteração pressionando Next.

Page 18: Superwaba Mobile

18 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 16 - Processo de instalação de arquivos.

Aguarde o termino do processo de instalação, isso pode demorar alguns minutos. Após a instalação devemos verificar se a variável de ambiente foi criada corretamente, para isso acesso o Painel de Controle do Windows em Iniciar | Painel de Controle, no painel procure pelo ícone Sistema.

Variáveis de ambiente são seqüência de caracteres que contem uma informação importante para o sistema ou para um software, controlando o comportamento dos programas. Como exemplos de variáveis de ambiente temos: PATH, CLASSPATH, USER, TEMP, JAVA_HOME, etc.

Figura 17 - TabPanel Sistema

Pressione o botão Variáveis de ambiente conforme imagem acima.

Page 19: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 19

Figura 18 - Variáveis de ambiente

Na figura acima temos as variáveis de ambiente do meu sistema operacional, veja que não existe JAVA_HOME, para criar pressiono o botão Nova.

Figura 19 - Basta informar o nome e o caminho

Para criar a variável JAVA_HOME atribua este nome a variável e adicione o caminho no valor da variável, lembre-se que este valor muda de instalação para instalação.

Page 20: Superwaba Mobile

20 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 20 - Variáveis de ambiente

Veja na figura acima que agora temos a variável JAVA_HOME cadastrada.

Instalando o Eclipse Para manter um padrão de URL crie um novo diretório na pasta Program Files chamado eclipse,

conforme figura abaixo.

Figura 21 - Criando a pasta eclipse

O Eclipse não possui um instalador, basta descompactar o arquivo obtido no download e já podemos executar o programa, logo descompacte o eclipse dentro da pasta criada.

Page 21: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 21

Figura 22 - Arquivos descompactados na pasta eclipse

Na figura acima podemos ver os arquivos descompactados na pasta eclipse, agora só precisamos criar um ícone na área de trabalho para agilizar o dia a dia do programador (Ver figura abaixo).

Figura 23 - Criando um ícone na área de trabalho

Altere o nome do ícone na área de trabalho para ter uma interface mais agradável.

Figura 24 - Ícone na área de trabalho

Configurando o Eclipse

Com o Eclipse instalado na maquina execute o arquivo .exe através do atalho criado.

Page 22: Superwaba Mobile

22 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 25 - Abertura do Eclipse

Quando o eclipse é executado ele solicita ao desenvolvedor que informe o Workspace, neste workspace serão armazenados todos os projetos de forma organizada.

Figura 26 - Informando o local do Workspace

Ao iniciar o eclipse pela primeira vez o desenvolvedor tem que atualizar seus componentes, no nosso caso vamos apenas importar os componentes do SuperWaba, é simples basta acessar Help | Software Updates | Find and Install....

Figura 27 - Atualizando componentes

Nesta nova janela marque a opção “Search for new freatures to install” conforme figura abaixo e clique em Next.

Page 23: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 23

Figura 28 - Opções do mecanismo da atualização

Com certeza não vamos encontrar o site do superwaba na nossa lista de sites, por isso clique em New Remote Site... conforme figura abaixo.

Page 24: Superwaba Mobile

24 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 29 - Lista de sites, por padrão temos duas opções

Ao clicar em New Remote Site uma pequena janela deve ser aberta, informe o nome do site e seu URL, no caso do SuperWaba vamos utilizar:

Propriedade Valor

Name SuperWaba PlugIn

URL http://superwaba-ide.sourceforge.net/update

Conforme figura abaixo.

Figura 30 - Dados do novo site

Clique em OK para finalizar. Repare que na tela anterior aparece o SuperWaba PlugIn, isso é bom. Mantenha ele selecionado e clique em Finish.

Page 25: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 25

Figura 31 - Sites cadastrados no Eclipse

Neste momento o eclipse deve validar os sites selecionados, conforme figura abaixo e exibir uma lista de itens que podem ser instalados.

Page 26: Superwaba Mobile

26 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 32 - Sites ativos

Deixe a opção marcada, vamos atualizar todos os objetos do SuperWaba, clique em Next e avance.

Figura 33 - Termos de licença dos componentes

Page 27: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 27

Leia os termos com atenção, se aceitar marque a opção “I accept the terms in the license agreement” e clique em Next.

Figura 34 - Informações sobre o PlugIn

Clique em Finish.

Figura 35 - O eclipse se conecta no site automaticamente para fazer o download

Com o download realizado pressione Install All conforme visto na figura abaixo.

Page 28: Superwaba Mobile

28 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 36 - Arquivos disponíveis para a instalação

Ao final da instalação será solicitado a reinicializarão do eclipse, clique em yes.

Figura 37 - Reiniciando o Eclipse

Instalando o SuperWaba SDK Execute o arquivo de instalação obtido no site www.superwaba.com.br, o processo de instalação é

similar a de um software qualquer. Na verdade o que o instalador faz é criar diretórios e armazenar arquivos.

Page 29: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 29

Figura 38 - Confirmação do Sistema Operacional

Clique em Executar para iniciar o processo de instalação.

Figura 39 – Termos de Licença

Mais termos para ler, pode ir se acostumando. Caso aceite pressione Aceitar.

Page 30: Superwaba Mobile

30 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 40 - Diretório de instalação

Por motivos de padronização, mantenha as mesmas opções de instalação, isso vai ajudar o leitor inexperiente, muitos exemplos e citações estão relacionados a estes dados padrões.

Figura 41 - Gerando diretórios e arquivos.

Instalando o Palm OS Emulator O Palm OS Emulator foi projetado para suportar/emular diversos modelos de dispositivos. Visto que

cada modelo possui suas peculiaridades de hardware e software, devemos instalar no POSE um arquivo chamado ROM. Desta forma, estaremos testando o aplicativo para um ou mais modelo(s) específico(s).

Page 31: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 31

Figura 42 - New Session

� Em ROM File, localize o arquivo ROM referente ao Palm para o qual pretende desenvolver seus aplicativos. Neste curso utilizaremos o arquivo PalmOS40-en-color.rom que está no baixado no link acima. Veja mais abaixo instruções sobre sua localização;

� Em Device, selecione o modelo do seu Palm na lista. Se o Emulator conseguir detectar a ROM que você baixou, ele lhe dará somente a opção do modelo específico da ROM.

� Em Skin, deixe Generic. O Skin determina a aparência do dispositivo.

� Em RAM Size, selecione a quantidade de memória para o Emulator. Você pode colocar aqui a quantidade de memória que seu Palm dispõe.

Para o nosso curso, selecione o ROM conforme a seqüência de figuras:

Figura 43 - Abrindo o Choose ROM File

Figura 44 - Selecionando a ROM

Após selecionar o arquivo acima, clique no botão Abrir. Retornando para o diálogo “New Session”, clique no botão OK e confirme a gravação da instalação.

Page 32: Superwaba Mobile

32 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 45 - Entrando com as configurações o Sistema

Ao clicar em OK, o Emulator pergunta se você quer salvar a sessão. Clicando em Sim ele grava um arquivo com a extensão. PSF que será utilizado na próxima vez em que for executado o Emulator, não sendo mais necessário informar o ROM desejado.

Figura 46 - Salvando as configurações

Na figura abaixo veja o visual do nosso Emulator.

Figura 47 - Palm OS Emulator

Configurando o Palm OS Emulator Após concluirmos a instalação, podemos configurar o Emulator desabilitando todas as opções de

Debug. Esta configuração pode deve ser feita através do dialogo “Debug Options”, acessado através das teclas de atalho Alt + \ ou pelo menu “Settings | Debugging...”. Veja a figura abaixo:

Page 33: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 33

Figura 48 - Opções de Debug do POSE

Observe que todas as opções do diálogo acima foram desmarcadas. Vamos abrir mão dos recursos de Debug do Emulator e utilizar, em seu lugar o Applet desenvolvido pela SuperWaba. Pronto já temos um Emulador para apresentação do projeto perante o cliente.

Capítulo 3

33 Hello World

Objetivos Deste Capítulo � Criar um projeto no eclipse;

� Importar o SDK SuperWaba;

� Escrever uma linha de comando;

Page 34: Superwaba Mobile

34 Desenvolvendo Aplicações Móveis com SuperWaba

� Depurar o projeto.

Introdução O Hello World tem como objetivo demonstrar ao estudante como criar um projeto muito simples e

depois como o executar. Se esta etapa for concluída com sucesso deve gerar no aluno uma satisfação que eleva a moral, isso faz com que o aprendizado seja mais fácil pois um aluno motivado é mais atento, O Hello World é o capítulo mais importante e ele não pode ser deixado de lado pelos iniciantes.

Neste capítulo ainda vamos ter muitas imagens, como se fosse um grande tutorial, isso deve acabar nos próximos capítulos, pois encerra-se aqui a nossa introdução ao SuperWaba e devemos partir para os conceitos da linguagem.

Para iniciar um projeto no eclipse é muito simples, pressione File | New | Other conforme imagem abaixo.

Figura 49 - Iniciando um Projeto

É fácil localizar o projeto SuperWaba, quando o eclipse se conectou ao site da SuperWaba ele automaticamente importou e instalou os plugins que facilitam a vida do programador waba. Na imagem abaixo demonstro como criar um novo projeto.

Page 35: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 35

Figura 50 - Criando um novo projeto

Clique em Next para avançar, na próxima tela defina o nome do projeto, neste caso vamos chamar de Hello World.

Figura 51 - Definindo o nome do projeto

Clique em Next para avançar, neste novo formulário devemos definir quais as bibliotecas que devemos importar par o nosso projeto, repare que já temos por padrão a JRE correspondente ao download efetuado na Sun. Para adicionar a biblioteca do SuperWaba pressione o botão Add External JARs..., veja a imagem abaixo.

Page 36: Superwaba Mobile

36 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 52 - Bibliotecas

Automaticamente o eclipse deve abrir uma janela solicitando o endereço do arquivo .jar. Como nossa instalação foi padrão encontramos este arquivo em C:\SuperWabaSDK\lib.

Figura 53 - Biblioteca SuperWaba "C:\SuperWabaSDK\lib"

Ao clicar em Abrir esta SDK automaticamente será anexada ao projeto, conforme figura abaixo.

Page 37: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 37

Figura 54 - Bibliotecas

Finalize pressionando Finish. Neste momento o eclipse deve gerar os arquivos do projeto e exibir no lado esquerdo de sua IDE (ver figura abaixo).

Figura 55 - Estrutura do projeto

Todo bom programador deve organizar suas classes em pacotes bem definidos, mesmo um projeto tão simples quanto este requer a criação de um pacote. Para criar um pacote clique com o botão direito do mouse sobre a pasta src e selecione New | Package conforme imagem abaixo.

Figura 56 - Criando um novo pacote

Um pacote define as funcionalidades das classes envolvidas, por exemplo o pacote waba.ui, neste pacote temos todas as classes que manipulam informações no display do equipamento tais como Label, Button, etc..

Page 38: Superwaba Mobile

38 Desenvolvendo Aplicações Móveis com SuperWaba

Este nosso primeiro pacote vamos denominar de teste pois ele se refere ao nossos testes. Repare que todo nome de pacote é escrito com letras minúsculas.

Figura 57 - Definindo o nome do pacote

Agora com nosso pacote criado podemos adicionar classes a ele, o processo é muito similar ao de criação de pacotes, basta selecionar o pacote e com o botão direito do mouse pressione New | Class conforme imagem abaixo.

Figura 58 - Criando uma Classe

Devemos atribuir um nome a esta classe, vamos chamar de Primeira pois se trata de nossa primeira classe. Repare que o nome tem a primeira letra maiúscula, toda classe deve seguir este esquema. Ainda nesta tela vamos informar a SuperClasse na qual esta classe deve herdar, como devemos criar um formulário informe o seguinte valor no campo Superclass: waba.ui.MainWindow conforme imagem abaixo.

Page 39: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 39

Figura 59 - Criando uma Classe

Acabamos de criar uma classe que na verdade é um formulário, afinal na programação orientada a objetos o ditado “filho de peixinho, peixinho é” é válido.

Encontre a nova classe na janela Package Explorer e exiba ela no editor de código.

Figura 60 - Classe em destaque na janela Package Explorer

Edite o código da listagem abaixo (Código 1) nesta nova classe.

Código da classe Primeira 1 //Veja no começo do livro como adquir os fontes

2 package testes; 3

4 import waba.ui.MainWindow; 5

6 public class Primeira extends MainWindow { 7

8 public Primeira() 9 {

10

11 }

12

Page 40: Superwaba Mobile

40 Desenvolvendo Aplicações Móveis com SuperWaba

13 public void onStart() 14 {

15 String mensagem = "Hello World";

16 waba.ui.MessageBox msg = new waba.ui.MessageBox("Titulo MSG Box",mensagem);

17 msg.popupModal();

18 }

19

20 public void onEvent(waba.ui.Event event) 21 {

22

23 }

24

25 }

Código 1 - Código da classe Primeira v.: 1.0

Toda classe deve iniciar definindo o pacote a qual ela pertence, isso é feito na linha 2. Quando informamos ao Wizard do eclipse que esta classe estende da classe MainWindow ele automaticamente criou a linha 4 importando a classe waba.ui.MainWindow e na linha 5 estendeu a classe a MainWindow.

Na linha 8 criamos um construtor, no momento não estamos utilizando mas o defini, não teríamos erros se este não fosse criado.

Na linha 13 criamos o método onStart() que é executado sempre que a classe é carregada. Na linha 15 estou criando uma variável String e atribuindo a ela um valor.

Outra variável que está sendo criada é a variável msg, ela é criada a partir da classe waba.ui.MessageBox(String titulo,String mensagem).

A mensagem só é exibida na linha 17 quando invocamos o método popupModal(). Vamos agora criar um Break Point, para analisar como funciona o esquema de Debug do SuperWaba, para adicionar tal ponto de parada basta selecionar a linha que deseja parar durante a execução pressionar simultaneamente Ctrl + Shift + B, conforme figura abaixo.

Figura 61 - Linha de código com Break Point

Repare que o IDE adiciona uma bolinha azul informando que este é um ponto de parada. Agora vamos configurar o IDE do eclipse para executar nosso primeiro projeto.

Figura 62 - Abrindo a tela de configuração

Page 41: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 41

Em Debug selecione a opção Open Debug Dialog... conforme figura acima.

Figura 63 - Criando nova configuração

Na nova janela selecione Java Application com o botão direito do mouse e selecione New.

Figura 64 - Informando a classe inicial

Entre com os dados acima, repare que a classe inicial não é a Primeira, e sim waba.applet.Applet, esta classe foi criada pelo grupo de desenvolvimento do SuperWaba e ela simula em um applet o software desenvolvido.

Mas como ela sabe que nossa classe é a Primeira? Simples vamos passar como argumento o nome da classe, conforme a figura abaixo.

Figura 65 - Informando a classe que deve ser executada pelo Applet

Pressione o botão Apply e logo em seguida o Debug para iniciar o processo de depuração. Se for a primeira vez deverá aparecer a seguinte janela:

Page 42: Superwaba Mobile

42 Desenvolvendo Aplicações Móveis com SuperWaba

Figura 66 - Mudança de perspective

Clique em Yes e o eclipse vai mudar todo o posicionamento das janelas, não se assuste. Repare que ele vai parar a execução bem em cima da bolinha azul e vai marcar com uma setinha também azul a posição de parada (Figura abaixo).

Figura 67 - Código em modo debug

Com o código parado, podemos analisar os valores nas variáveis, como exemplo clique com o botão direito do mouse e selecione a opção Watch, conforme figura abaixo.

Figura 68 - Adicionando uma variável a lista de variáveis em observação

Veja na imagem abaixo que podemos ver em tempo de execução o valor da variável.

Page 43: Superwaba Mobile

Desenvolvendo Aplicações Móveis com SuperWaba 43

Figura 69 - Exibindo o valor de uma variável

Pressione F8 para liberar a execução. Será exibido na mensagem no formulário, conforme a figura abaixo.

Figura 70 - Classe em execução.

Para parar a execução basta pressionar o botão Terminate conforme imagem abaixo ou simplesmente pressionar Ctrl + F2.

Figura 71 - Terminando a execução.

Até o momento não me preocupei com estilo de formulário, se é PalmOS, Pocket. Quando for falar da classe do pacote waba.ui vamos entrar nos mínimos detalhes sobre este assunto.