Flash Form, AS2 …

Action Script

Todos sabemos que o ColdFusion MX 7 foi lançado no começo de 2005, e o Flash MX 8 mais para o final do ano, contudo já naquela época a framework CFFORM/Flash Form já continha algumas classes desconhecidas ao player corrente e não encontradas na interface de desenvolvimento Flash MX 2004, e só foram compreendidas após o lançamento de um novo player e do lançamento do Flash MX 8.
Uma destas classes é a FileReference que nos possibilita o upload Flash Form, podendo ser encontrada em {cf_web_inf}/cfform/system_classes.
Porém os dois, Flash 8 e ColdFusion MX 7, dispõem da classe FileRefence de formas diferentes, no primeiro existem 7 métodos para esta classe e no segundo existem
24 métodos, no primeiro o caminho é flash.net.FileReference e no segundo ele está na raíz do diretório lib ({cf_web_inf}/cfform/system_classes).

Além disso o ColdFusion MX 7 permite também que implementemos nossas próprias classes
ActionScript, o que ficava confuso, pois havia uma dúvida de como instanciar uma classe já que não era permitido o uso de alguns operadores essencias, duvidas essas que foram esclarecidas com a utilização do #include no artigo anterior..

Configuração

Para que o compilador CFFORM/Flash Form possa encontrar nossas classes, é necessário informa-lo através do arquivo de configuração {cf_web_inf}/cfform/flex-config.xml, com as tags <actionscript-classpath> e <lib-path>. Para atribuir um caminho as tags foi criado o diretório classes, tendo como caminho completo {cf_web_inf}/cfform/classes, permitindo uma configuração como a seguir:

Implementando

Com a raíz de nossas classes cadastrada no configurador CFFORM/Flash Form, partimos ao desenvolvimento de nossa primeira classes CFFORM. Baseado em Flash MX 2004 – class e prototype – Pedro Claudio, salvaremos a classe palavra em {cf_web_inf}/cfform/classes/com/hello.

palavra.as

class com.hello.palavra extends String {
public function palavra(texto:String) {
super(texto);
}
function trim() {
var str = this;
var strlen = str.length;
var j = 0;
while (str.charAt(j) == ” “) {
j++;
}
if (j>0) {
str = str.substring(j, strlen);
}
strlen = str.length-1;
if (strlen>0) {
while (str.charAt(strlen) == ” “) {
strlen–;
}
str = str.substring(0, strlen+1);
}
return str;
}
}

Ao instanciar nossa classe utilizaremos o seguinte script:

script.as

function loadAS(){
import com.hello.palavra;
var listener:Object = new Object();
listener.click = function(evt){
var popup=”";
var string= new palavra(“hello world “);
popup=string+” (“+string.length+” caracteres)”+newline;
popup+=string.trim()+” (“+string.trim().length+” caracteres)”;
alert(popup);
}
_root.salvar.addEventListener(“click”, listener);
}

E para utilizar o código contido em script.as, que vai estar no mesmo diretório do arquivo cfm, construiremos o seguinte CFML:

cfform.cfm

<cfform name=”nome_form” format=”flash” onload=”loadAS();”>
<cfformitem type=”script”>
#include “script.as”
</cfformitem>
<cfinput type=”button” name=”salvar” value=”Salvar” />
</cfform>

Veja as telas do resultado:

Dependências

Uma implementeção completa depende de arquivos AS, que podem ser armazenados no diretório que cadastramos em flex-config.xml, basta copia-los e começar o desenvolvimento.
Existem ainda as classes que não necessitam ser copiadas, pois estão contidas de forma intrinsica, ou seja estão implementadas no player cliente.
Com isso devemos ter atenção ao que vai ser retirado de uma aplicação Flash e adicionado a uma aplicação CFML/Flash Form.
Observe o artigo Action Script Remote (ASR) (Flash MX 2004) – Mozart Petter, nele são utilizadas 6 classes, duas delas não podem ser importadas até que você as copie para diretório que criamos, são elas mx.remoting.DataGlue e mx.rpc.RelayResponder. As demais classes não são vistas em nenhum subdirtório de {cf_web_inf}/cfform/, porém estão declaradas na framework do compilador, com isso podemos importa-las sem provocar erros, com estes ajustes o conteúdo visto no artigo sobre ASR poderá ser usado sem problemas.

Conhecendo mais

Então ai vai algumas matérias que poderão ajudar a entender melhor o ActionScript.
Trabalhando com eventos – Neto Leal
Viajando pelo ActionScript 2 – introdução – Andrews Patrick
Viajando pelo ActionScript 2 – variáveis – Andrews Patrick
Viajando pelo ActionScript 2 – operadores – Andrews Patrick
Evoluoção do Action Script – Sarah Pimentel
Classes ActionScript – Sarah Pimentel



Pedro Claudio – pcsilva@mxstudio.com.br
visite o fórum MXStudio ColdFusion

Escrito por Pedro Claudio on novembro 29, 2005. Arquivado em Flash. Você pode seguir as respostas a esse artigo pelo RSS 2.0. Você pode deixar respostas para esse artigo

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>