Usarei o Shadow Post-It para mostrar como o Perl utilizando Tk pode-se desenvolver ferramentas uteis e de tamanho bem pequeno.
Ok para esta demonstração imagino que o leitor ja tenha uma base de Perl caso contrário um excelente texto para isso poderá ser encontrado não seguinte endereço: http://perldoc.perl.org/perlintro.html
Abaixo segue o código com uma pequena imagem do utilitário cujo o código fonte tem aproximadamente 3Kb.
#!/usr/bin/perl
## Name: Shadow Post It
## Author: Daniel Vinciguerra - Daniel Shadow
## E-mail: daniel_5h4d0w@hotmail.com
## Site: http://danielshadow.blogspot.com
## Mantenha as referencias do autor original.
## Declaração dos modulos urilizados pelo programa.
use strict;
use Tk;
use Tk::Button;
use Tk::Frame;
use Tk::Text;
## Variaveis
my $postit;
my ($post, $arquivo);
## Aqui é declarada e chacada a localização do Banco de Dados ## Em SO Windows fica em C:\ já em SO Linux fica em /home/user/
if($ENV{POSTIT}){
$postit = $ENV{POST}
}else{
$postit = $ENV{HOME}.'/Post-it';
}
## Inicio da GUI (Interface gráfica do usuário)
my $mw=MainWindow->new(-title=>'Shadow Post It');
## Configurando o tamanho exato da janela
$mw->minsize(qw(150 150));
$mw->maxsize(qw(150 150));
my $Frame_Banner = $mw -> Frame ( -borderwidth=>2, -label=>'Shadow Post It', -relief=>'raised' ) -> pack(-fill=>'both');
my $Frame_Body = $mw -> Frame ( -background=>'Yellow', -relief=>'flat' ) -> pack(-ipady=>50, -ipadx=>80);
my $Text_post = $Frame_Body -> Text ( -background=>'Yellow', -relief=>'flat', -wrap=>'none', -state=>'normal' ) -> place(-height=>100, -width=>160);
my $Bt_Postit = $mw -> Button ( -background=>'Yellow', -text=>'Post It', -relief=>'flat', -state=>'normal', -command=>\&get_post ) -> pack(-fill=>'both');
## Checa para ver se o Banco de Dados existe...
## Caso exista ele extraira as informações dele e exibirá logo na execução.
if(-e $postit){
open(FILE, "< $postit") or die "\n Arquivo não encontrado!!!\n";
{
local $/=undef;
$arquivo =
}
$arquivo =~ s/^ //g;
$Text_post -> insert('end',"$arquivo");
close(FILE);
}
MainLoop;
## Iniciando a criação dos CallBacks (Funções do Programa)
sub get_post(){
## Este callback pegará as informações do Text Widget e ## salvará no Banco de Dados.
$post = $Text_post->get('1.0', 'end');
open(POST, "> $postit") or die "\n Arquivo não encontrado!!!\n";
print POST ("$post");
close(POST);
## Limpa o Text Widget...
$Text_post -> delete('1.0','end');
## Inseri as novas informações no Text Widget...
open(FILE, "< $postit") or die "\n Arquivo não encontrado!!!\n";
{
local $/=undef;
$arquivo =
}
$arquivo =~ s/^ //g;
$Text_post -> insert('end',"$arquivo");
close(FILE);
return 0;
}
Pois bem isso é simplesmente um pequeno utilitário que construi devido minha constante falta de memória... Ele é bem util e bem pequeno como podem ver.
Porem meu objetivo aqui não é divulgar esta pequena ferramenta e sim mostrar como em poucas linhas pode-se se construir ferramentas e utilitários completamente funcionais e uteis com a Perl.
Por hoje é isso...
Um comentário:
cara onde eu acho esse Post-It.Daniel Shadow para versao windows
Postar um comentário