swtUbuntuMenor

Este post tem como objetivo explicar como configurar o Eclipse (versão 3.4) em um sistema operacional que utiliza GTK (neste caso o Ubuntu 8.10) como biblioteca gráfica. Não vou mencionar aqui vantagens ou desvantagens dessas bibliotecas em relação ao SWING, pois não existe uma melhor ou pior que a outra. SWT/JFace, no meu ponto de vista, são uma alternativa e não substitutos para SWING.

SWT e JFace são duas bibliotecas criadas pelos desenvolvedores do Eclipse como uma alternativa a SWING, pois eles queriam uma ferramenta que possibilitasse GUIs Java rodarem em desktops com a mesma performance de uma aplicação nativa.

Para maiores informações sobre SWT/JFace eu recomendo a leitura do livro SWT/JFace in Action. Os passos a seguir foram tirados, em sua maioria de um dos apêndices desse livro com algumas modificações.

1 – Abra o Eclipse e inicie um novo projeto Java

Criando um novo projeto Java

Criando um novo projeto Java

Escolha um nome para o projeto, como por exemplo SWT_JFace teste e clique em Finish

Escolhendo um nome para o projeto

Escolhendo um nome para o projeto

Vá até a basta onde estão localizados os plugins do eclipse. No meu caso, eles estão em  /home/rafael/Programas/eclipse/plugins. Copie os seguintes JARs:

org.eclipse.core.boot_<version info>.jar
org.eclipse.core.commands_<version info>.jar
org.eclipse.core.runtime_<version info>.jar
org.eclipse.equinox.common_<version info>.jar
org.eclipse.jface_<version info>.jar
org.eclipse.osgi_<version info>.jar
org.eclipse.ui.workbench_<version info>.jar
org.eclipse.swt.gtk_<version info>.jar OU org.eclipse.swt.gtk.linux.x86_<version info>

Cole os JARs em uma basta separada. Aconselho criar uma basta onde você possa armazenar suas bibliotecas preferidas.

Agora, retorne ao Eclpse e clique com o botão direito do mouse em cima no projeto que você criou (SWT_JFace teste) e no menu que irá aparecer selecione Build Path → Configure Build Path…

Configurando o Build Path

Configurando o Build Path

Na janela que irá aparecer, clique no botão Add External JARs

Configurando JARs

Configurando JARs

Vá até a pasta onde estão os JARs que copiamos e colomas agora a pouco e selecione todos eles. Então clique em OK.

Adicionando JARS

Adicionando JARs

Clique em OK novamente. No seu projeto irá aparecer mais um pequeno ícone chamado Referenced Libraries. Ao clicar nele, você verá que todas as nossas bibliotecas podem ser utilizadas em nosso projeto.

As nossas bibliotecas já estão no nosso projeto prontas para ser usadas

As nossas bibliotecas já estão no nosso projeto prontas para ser usadas

Agora vamos fazer um pequeno exemplo para verificar se já podemos utilizar SWT/JFace. Crie uma nova classe Java, dê a ela o nome de  SWT_JFaceTest e faça-a estender a classe ApplicationWindow.

O seguinto código foi retirado do livro SWT/JFace in Action. Copie-o:

import org.eclipse.jface.window.ApplicationWindow;
import org.eclipse.swt.*;
import org.eclipse.swt.widgets.*;

public class SWT_JFaceTestextends ApplicationWindow
{

    //Window allocation
    public SWT_JFaceTest()
    {
        super(null);
    }

    protected Control createContents(Composite parent)
    {
        Text helloText = new Text(parent, SWT.CENTER);
        helloText.setText("Hello SWT/JFace");
        parent.pack();
        return parent;
    }

    //Window operation
    public static void main(String[] args)
    {
        SWT_JFaceTest awin = new SWT_JFaceTest();
        awin.setBlockOnOpen(true);
        awin.open();
        Display.getCurrent().dispose();
    }
}

Execute a aplicação como uma Java Application para ver o resultado.

Hello SWT/JFace

Hello SWT/JFace

Pronto! Nosso teste foi um sucesso.

Agora que você já sabe como preparar o Eclipse para desenvolver GUIs que utilizam SWT/JFace. Aconselho, mais uma vez, a leitura do livro SWT/JFace in Action.

Alguns links interessantes: