UEA – UNIVERSIDADE ESTADUAL DO AMAZONAS

Desenvolvimento de interfaces gráficas com Glade

Élson Vasquez

Luiz Montenegro

Roberto Silva

Trabalho solicitado pelo Professor Tiago de Melo que ministra o módulo de Ferramentas para Desenvolvimento de Software Livre do Curso de especialização em Desenvolvimento em Software Livre.

Manaus, 31 de Janeiro de 2006

Introdução

Glade é uma ferramenta visual para construção de interfaces gráficas baseada nas bibliotecas GTK e aplicativos GNOME. Desde seu lançamento em 1998, ela vem evoluindo e facilitando a vida dos desenvolvedores de aplicativos poupando-lhes tempo e trabalho.

É utilizada para o desenvolvimento rápido de protótipos.

Ela provê um framework que possibilita ao desenvolvedor adicionar e/ou remover dinamicamente acessórios como botões, menus e barras de tarefa. É de fácil utilização, permitindo assim, o desenvolvimento de interfaces em um curto espaço e tempo até mesmo por novatos na ferramenta.

Apesar da Glade poder gerar códigos em C ou C++ para serem utilizados nos aplicativos, nem sempre esta é a melhor maneira de extrair o máximo desta ferramenta. ela grava a descrição das interfaces em um arquivo XML, que pode ser utilizado dinamicamente no aplicativo com a utilização da biblioteca libglade, tornando-se assim, um código com maior manutenibilidade, separando a interface do código geral. A libglade é muito útil pois, o arquivo XML é carregado na execução do aplicativo, permitindo a mudança na interface sem que se recompile o aplicativo.

A ferramenta

Escrever a interface gráfica de programas envolve dois passos básicos. Primeiro, é necessário escrever o código que irá criar a interface com elementos como, botões, menus e campos de entrada,por exemplo. Depois, escrever o código que será executado quando ocorrer algum evento, o clique de um botão, por exemplo. Quando o programa está rodando, ele entra em um loop de espera por algum evento e assim que ele ocorre, processa o que foi definido para o mesmo. Exemplificando, um código deve ser escrito para executar uma função que mostrará na tela a mensagem "Versão do Sistema". Outro código será escrito para definir e associar o botão "Sobre o sistema..." ao evento que mostra a mensagem. Um processo demorado para ser feito à mão.

Para facilitar este processo, existem muitos programas que possibilitam o desenvolvimento destas interfaces graficamente. Uma delas é a Glade, que foi escrita por Damon Chaplin e lançada sob a licença GNU GPL. Ela é baseada nas bibliotecas GNOME e GTK. Está disponível para Linux e Windows.

A sigla GTK é uma abreviação para Gimp Tool Kit, uma biblioteca inicialmente escrita para o desenvolvimento do programa de tratamento de imagens Gimp mas, devido a sua versatilidade e facilidade de uso, se tornou uma boa ferramenta no desenvolvimento gráfico.

O GTK foi desenvolvido primeiramente para a programação sobre linguagem C, mesmo tendo a visão de orientação a objetos como uma de suas características básicas.

A Glade permite ao desenvolvedor programar visualmente o layout de sua aplicação e armazená-lo como um código XML que pode ser facilmente aplicado a várias linguagens de programação. Ela também gera códigos em C que contém as chamadas para as funções que criarão os botões e ações para os mesmos (o que não é recomendável para grandes aplicativos).

Figura 1 – Janela Principal da Glade

As interfaces desenvolvidas com Glade são armazenadas como um código XML e, utilizando a biblioteca libglade, eles podem ser carregados dinamicamente por diversos aplicativos de acordo com a necessidade.

Com a utilização da libglade, os arquivos XML podem ser utilizados em linguagens como C/C++/C#, Java, Perl, Python, Pike,Ruby, Haskell, Objective Caml e Scheme. Suportes adicionais a outras liguagens são facilmente adicionados.

Sua primeira versão, a 0.1 foi lançada em 18 de abril de 1998 e evoluiu bastante nestes últimos anos, alcançando a versão, a 2.10.0, que foi lançada em 16 de março de 2005. Além de corrigir bugs presentes em edições anteriores, adicionou suporte a novas opções de desenvolvimento como botões e caixas de diálogo e atualizações de traduções para outros idiomas.

Figura 2 – Paleta da Glade

Conclusão

Glade é uma ferramenta visual do tipo “O que você vê é o que você terá” ,

versátil e confiável para a construção de interfaces gráficas para aplicativos. Sua utilização é fácil e intuitiva. Ela pode gerar códigos em C ou C++ mas, o que a torna mais interessante (e compatível) é que ela gera as interfaces em código XML, tornando-a assim mais fácil de ser integrada com o restante do aplicativo. Tal forma possibilita a separação da interface do código geral. Assim, além de facilitar a manutenção do código, ele torna o aplicativo mais leve, pois só é carregado na execução do aplicativo e pode ser alterado rapidamente, sem que haja a necessidade de recompilar o programa inteiro.

Recomendada para desenvolvedores que desejam elaborar rapidamente interfaces gráficas ou protótipos e para a economia de tempo e trabalho.

Bibliografia

Glade GUI Builder

http://developer.gnome.org/tools/glade.html

Glade User Interface Builder

http://glade.gnome.org/index.html

GTK+ programming with Glade

http://wingtk.sourceforge.net/ishan/glade.html

Escrevendo descrições de pacotes para Debian

http://people.debian.org/~walters/descriptions-pt_BR.html

Projeto Trivial GTK com Glade

http://geocities.yahoo.com.br/lcristante/pt_glade/index.html

The Gnome Development Site – Documentation

http://developer.gnome.org/doc/

Create User Interfaces with Glade – Linux Journal

http://www.linuxjournal.com/article/4702

Tutorial Glade

http://olinux.uol.com.br/artigos/420/2.html

UEA – UNIVERSIDADE ESTADUAL DO AMAZONAS

HOMERO

2006-01-28T14:24:00