Tutorial Sobre as Funções Básica do "gmessage"

Escrito por Reinaldo Marques de Lima ( Plastico )
ultima atualização 02/01/2006

Sobre o gmessage

O gmessage é uma outra opção de caixa de dialogo para gnome, não sendo oficial não é encontrado instalado em todas as distribuições, porém é um programa facil e gostoso de usar muito bom para agrega-lo a scripts que usem interface grafica.

Restrições de uso e como conseguir

Para usuários do Gnome que queiram utilizar este recurso, o programa requer no minimo o GTK+ 1.2 ou superior para rodar.

A página oficial do projeto é http://computacion.cs.cinvestav.mx/~lgallardo/gmessage/index.html ( estava com uma mensagem de "Forbiden" da ultima vez que tentei acessa-la ).

Para baixar o programa você pode acessar o link do "tarball" http://computacion.cs.cinvestav.mx/~lgallardo/gmessage/gmessage-1.0.7.tar.gz e instala-lo manualmente, mas se você for usuário do Debian ou do Ubuntu basta dar um apt-get install gmessage como root para que o sistema já se encarregue de instala-lo para você.

Sitaxe de uso

A sintaxe do programa é bastante simples: usuario@linux:~ gmessage [ opção 1 ] [ opção 2 ] [ opção N ] "Texto"

Opções

E aqui veremos uma lista das principáis funções deste programa:

-bg "COR" - esta opção define a cor de fundo que será usada na caixa. ( deve-se especificar a cor em inglês off course ).

usuario@linux:~gmessage -bg "yellow" "Ola"

-borderless - desabilita a visualização da bordas de janela ( Metacity no Gnome ) da caixa.

usuario@linux:~gmessage -borderless

-buttons - define a legenda do botão, podemos adicionar mais botões passando os nomes separados por virgula, e podemos ainda definir valores aos botões definindo-os logo após o nome separando por dois pontos ":" o resultado é mostrado na saida padrão.

usuario@linux:~gmessage -buttons "OK:0,Cancel:1" "OK ou Cancel?"

( não esqueça de dar echo $? para que o programa mostre o resultado )

-center - posiciona a caixa no centro da tela.

-entry - habilita a entrada de dados e envia automaticamente para o stdout

usuario@linux:~gmessage -entry "Digite algo"

-print - opção que imprime na saida padrão o conteudo do botão escolhido, por exemplo: gmessage -print -buttons "OK,Cancel" ; caso escolhido o botão OK a saida padrão mostrará como resultado "OK".

-fg "COR" - define a cor da fonte usada na caixa.

usuario@linux:~gmessage -fg "Blue" "Ola"

-file - mostra na caixa o arquivo estecificado neste parametro.

usuario@linux:~gmessage -file ola.txt

-geometry COMPRIMENTOxALTURA - define o tamanho da caixa a ser mostrada.

-nearmouse - mostra a caixa proxima ao ponteiro do mouse.

-timeout - fecha a caixa no tempo especificado em segundos.

-title - define o titulo da caixa.

usuario@linux:~gmessage title Ola "Ola denovo"


Exemplos de Scripts com gmessage

#! /bin/bash

###########################################################################
# #
# Meu IP - Versão gmessage 0.1 #
# wrote by: Reinaldo Marques de Lima #
# ultima atualização: 26/12/2005 #
# #
###########################################################################
# #
# Descrição: #
# - Script que filtra a saida do comando ifconfig mostrando apena o #
# número do IP e da Subnet-mask do usuario, usando o 'gmessage' do Gnome #
# #
###########################################################################

#( Filtros )..............................................................#

IP=`ifconfig -a | grep inet | head -1 | awk '{print $2}' | cut -d: -f2`
MASK=`ifconfig -a | grep Mask |head -1 |cut -d: -f4`

#( Mensagem do Gmessage ).................................................#

gmessage "Meu ip eh
$IP
e minha subnet mask eh
$MASK
"

#( Fim, facil né? )......................................................#
baixe este script aqui

#! /bin/bash

##########################################################################
# #
# Sysinfo - versão 0.1 #
# Escrito por: Reinaldo Marques de Lima ( Plastico ) #
# ultima atualização: 02/01/2006 #
# #
##########################################################################
# #
# Descrição: #
# - mostra de forma clara e detalhada a situação do sistema, informa #
# nome do sistema, da maquina, versão do kernel, situação da memória, HD #
# e tempo ativo do sistema . #
# #
##########################################################################

#( Variaveis )...........................................................#

SISTEMA=`uname`
MAQUINA=`uname -n`
KERNEL=`uname -r`
HORA=`date +%T`
DATA=`date +%d/%m/%y`
UP=`uptime | awk '{print $3}'`
MEMT=`free -m |grep Mem | awk '{print $2}'`
MEMF=`free -m |grep Mem | awk '{print $4}'`
HDMB=`df -m | grep hda1 | awk '{print $2}'`
HDPC=`df -m | grep hda1 | awk '{print $5}'`

#( Mostrando tudo )......................................................#

gmessage -geometry 430x410 -buttons "OK" "
+----------------------------------------------+
| Olá, eis aqui a situação do sistema agora: |
+----------------------------------------------+

Sistema: $SISTEMA ;
Nome da Maquina: $MAQUINA ;
Versão do Kernel: $KERNEL ;
O sistema está up a $UP dias ;
A memória total do sistema é de $MEMT MB ;
Com $MEMF MB livres ;
O tamanho do HD é de $HDMB, com $HDPC usados

$HORA $DATA

+----------------------------------------------+"

#( Fim ).................................................................#
baixe este script aqui

xmessage ( Defalut em qualquer 'distro' )

semelhanças e diferenças

xmessage é um tipo de caixa de dialogo compativel com qualquer distribuição linux que tenha o XWINDOW instalado, sua sintaxe também é facil de trabalhar mas é um tanto pobre se comparada com a gmessage, tornando isso uma desvantagem por falta de recursos, em contrapartida ela pode ser usada fora do Gnome abrangendo um alcance maior de usuários, dando uma vantagem boa sobre a do seu primo de pé grande.

alguns exemplos de caixas xmessage

usuario@linux:~xmessage -geometry 200x70 "Ola"

usuario@linux:~xmessage -geometry 200x70 -buttons "OK,Cancel" "Ola denovo"

Como vimos nestes dois exemplos, o xmessage precisa a toda hora que sejam expecificados parametro de tamanho, caso contrario as caixas aparecem desta maneira:

usuario@linux:~xmessage "Ola"

Ou seja, do tamanho do texto especificado, de certa forma um ponto negativo caso se pense em padronização das caixas.


Considerações Finais

A deficiencia de conteúdo mesmo em inglês sobre o gmessage e até mesmo o xmessage limitaram um pouco a confecção deste tutorial, limitando-me a mostra o básico do básico, tentarei atualizar este documento de acordo com o material que eu encontrar e com script que eu for desenvolvendo com este recurso. Obrigado por acessar esta página e espero que ela tenha conseguido sanar algumas duvidas.

Abraços

:wq

Hosted by www.Geocities.ws

1