Login:

iMasters | Por uma internet mais criativa e dinâmica

Feeds

V. FoxPro

Feed da seção V. FoxPro

Newsletter de V. FoxPro

Patrocínio:

Quarta-feira, 14/03/2007 - 09:00 - Por Fabiano Costa
Seções relacionadas:

Totalmente IntelliSense

Quando o intellisense foi criado, todos os programadores de todas as linguagens ficaram eufóricos, pois agora a redução de digitação do código fonte era uma realidade. Nada como começar a escrever e as instruções já vão sendo visualizadas, digitar um ponto e todas as propriedades dos objetos prontamente listadas, realmente facilitou o nosso trabalho.

Porém, parece que o intellisense parou no tempo, que isso é o estado-de-arte incapaz de ser melhorado, mas no Visual Fox Pro o intellisense, embora muitos não saibam, tem apenas como a ponta do iceberg este processo, pois ele é muito mais que isso ele pode ser programado criando suas próprias funcionalidades chegando muitas vezes perto de um wizard.

Vamos ao exemplo típico: Se você digitar no VFP o comando _vfp, terá algo como na figura abaixo:

Até agora nada de mais, qualquer linguagem faz este processo, mas se você resolver digitar FOREND verá que o VFP cria a estrutura FOR...ENDFOR para você. Observe que isso não é mais simplesmente um intellisense, pois ele criou o bloco inicial e final do loop diminuindo a quantidade de código que você necessita digitar.

Como o comando que você sempre escreve na verdade é FOR T = 1 To <alguma coisa>, melhor fosse que o VFP colocasse isso tudo para você não é mesmo? Pois você pode programar o intellisense e criar seus próprios processos. Escolha no menu principal a opção TOOLS e depois Intellisense mananger e no form que aparecer, escolha a aba custom e ficará como a figura abaixo:

Esta é a página que você pode realizar qualquer customização que desejar nos comandos do intellisense do VFP com várias opções, mas vamos nos ater a uma específica: Criar bloco de comandos.

Embaixo do replace escreva FOR e depois de uma click no botão ADD e selecione o comando FOR propriamente dito e click no botão SCRIPT e logo aparecerá um campo memo para ser editado. Neste memo coloque as seguintes informações:
LPARAMETER oFoxCode
oFoxcode.valuetype="V"
return "FOR T=1 to ~"+chr(13)+"ENDFOR"

Salve e teste em um PRG e note que agora você customizou o comando FOR para realizar o que deseja e o cursor ficará posicionado exatamente no local onde foi inserido o símbolo (~).

Se desejar incrementar mais, pense em um pequeno wizard para o mesmo FOR:
LPARAMETER oFoxCode
oFoxcode.valuetype="V"
m.lcFor="FOR T=1 to "
if Messagebox("For de uma tabela?",36,"Pergunta")=6
	m.lcArquivo=getfile("Tabela:dbf")
	m.lcDBF=juststem(m.lcArquivo)
	m.lcFor=[if !used("]+m.lcDBF+[")]+chr(13)+chr(9)+[use "]+m.lcArquivo+[" in 0]+chr(13)+"ENDIF"+chr(13)+m.lcFor
	m.lcFor=m.lcFor+[reccount("]+m.lcDBF+[")]+chr(13)
endif
m.lcFor=m.lcFor+chr(9)+"~"+chr(13)+"ENDFOR"
return m.lcFor

Agora veja o comportamento do comando FOR no PRG respondendo SIM ou NÃO e imagine todos os procedimentos que você pode realizar e poupar muitas e muitas horas de trabalho de codificação. Isso é Visual Fox Pro.

Todos os artigos de Fabiano Costa

8 comentários publicados

  • 1. Intellisense

    Sexta-feira, 16/03/2007, por Paulo Dias

    Se não me engano... No .NET Framework 2.0 existe um Intellisense mais inteligente chamado "CODE SNIPES" que permite da mesma forma criar templates de código.

    Responder comentário
  • 2. Sim

    Sexta-feira, 16/03/2007, por Fabiano Costa

    Sim, existe no .NET 2005, e no Visual Fox Pro desde a versão 7.0 (se não me engano) e mesmo assim pouco usado pelos programadores que utilizam apenas o basicão do intellisense. Nesta coluna o interesse não é fazer uma analogia entre o .NET e o VFP, mas o VFP e o mercado em geral, que não possui esse tipo de ferramenta e principalmente para os programadores de Visual Fox Pro, para que a cada dias saibam o que podem fazer com essa ferramenta. Mas mesmo assim valeu a dica. Muito obrigado.

    Responder comentário
  • 3. Sim

    Sexta-feira, 16/03/2007, por Rafael Capucho

    o Intellisense do NetBeans também é muito bom, um exemplo disso é: se você cria uma função (public void) e leva junto a ela uma string public void (String nome){}
    quando você chama a função o Intellisense da seta que a variavel q você vai ter passar primeiro é em String Ex: funcao("Rafael"); ... ótimo não?

    Responder comentário
  • 4. Esse é o ponto

    Sábado, 17/03/2007, por Fabiano Costa

    Este artigo não deseja dizer quem é melhor nem pior, mas sim comentar exatamente o que você postou: Informar as possibilidades do código é o básico, o melhor do intellisense é criar blocos de código para realmente otimizar o processo de codificação usando sua própria linguagem nativa. Muitas linguagens (as IDES para o pessoal não pegar no meu pé :D) não implementam esta função e quando implementam muitos programadores desconhecem. Como disse o intelissense como a maioria conhece é apenas a ponta do iceberg.

    Responder comentário
  • 5. Intellisense = Produtividade

    Quinta-feira, 26/04/2007, por Cesar Chalom

    Salve Fabiano ! Mais um excelente artigo. Além da possibilidade de se criar scripts, o Intellisense nos mostra parâmetros e métodos para as classes que usamos. Muita gente não se aproveita disso. Este tópico está ainda muito longe do seu final... Que tal algumas continuações ? Abração! César.

    Responder comentário
  • 6. Muito BOM !!!

    Domingo, 29/04/2007, por ROGERIO RIOS

    Parabens Fabiano. Precisamos de mais e mais materias desse nível !!!

    Responder comentário
  • 7. Uma Duvida

    Domingo, 29/04/2007, por ROGERIO RIOS

    Onde encontro esses modelos de scripts e suas sintaxes ? Veja que voce ensinou que o ~(til ) é onde vai ficar o cursor, e qual mais regras, sintaxes os scripts tem ?

    Responder comentário
  • 8. Intellisense Scripts

    Quarta-feira, 02/05/2007, por Cesar Chalom

    Rogério,
    No www.fox.wikis.com o pessoal já publicou verdadeiras jóias de scripts para Intellisense. Veja no link direto: http://fox.wikis.com/wc.dll?Wiki~IntelliSenseCustomScripts~VFP . Tb existem alguns ótimos artigos a respeito, mas sempre em inglês. O ideal é esperar pela segunda parte desta série do Fabiano, heheh
    Abraços!

    Responder comentário

Poste um comentário


Os textos publicados neste espaço são de responsabilidade única de seus autores (colunistas e leitores) e podem não expressar necessariamente a opinião do iMasters.

Sobre o autor

Fabiano Costa é consultor e trabalha com Fox Pro a mais de 13 anos.


Indique para um amigo

captcha

TI SHOP Produtos iMasters

  • Lançamento: CD-ROM Treinamento Aplicado de SQL - Lançamento! Treinamento Aplicado de SQL - Aprenda a trabalhar com SQL com bancos de dados Oracle e SQL Server. São mais de 100 tópicos explicados por Mauro Pichilliani, um articulistas mais lidos do iMasters. Aproveite! Apenas R$ 69,90 no TI SHOP.
  • Lançamento: Livro iMasters "O Encontro de 2 Mundos"- Este livro conta com 56 crônicas de profissionais mais admirados e influentes do mercado brasileiro de Internet. Aproveite o preço especial para leitores do iMasters. Apenas R$ 40,00 e envio imediato!
  • DVD Curso Completo de Photoshop - Do conceito à finalização Lançamento! Curso Completo de Photoshop, em DVD, com mais de 230 aulas dividas em 4 módulos: conceito, básico, avançado e finalização. Apenas R$ 69,50 no TI SHOP - Frete com 50% de desconto
  • DVD Javascript Starter - Curso Completo Com mais de 9 horas de vídeo-aulas, é um curso completo sobre Javascript. Ideal para quem deseja aprender a linguagem. Apenas R$ 64,90 no TI SHOP - Frete com 50% de desconto!

2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.