Feb 14 2010

Hobnox Audiotool

Os dejo una impresionante herramienta de composición musical basado en Flash.
Desde luego Flash player 10 nos deja hacer cosas que muchos ni imaginamos.

Hobnox Audiotool


Ene 9 2009

Lista de correos sobre Papervision en español

Hace un par de días que se ha creado una nueva lista de correos donde se hablará de todo lo relacionado con papervision.
Una buena oportunidad de aprender sobre este motor 3D para flash

ESPapervision3D


Jul 18 2007

Empezando con AS3

Hace ya muchos meses que no publico nada por aquí por el trabajo aunque hoy he decidido hacerle un hueco al AS3 para, poco a poco, ir haciéndome a trabajar con flash y AS3 (ya con flex he dado algunos pasitos) y de paso actualizar el blog un poquito.

El primer ejemplo que he creado es un comprobador de fortaleza de contraseña para indagar un poco en la expresiones regulares, los contenedores de display objects (el maravilloso y querido addChild :) ), etc.

Bueno aquí tenéis el ejemplo y el código fuente:

Necesita tener instalado flash player 8


Código fuente

PD. Juanma ahora te paso la pelota a ver si te animas a publicar algo por aquí.


Nov 29 2006

Guia de cambios Flex 2.0.1

Interesante enlace con un pdf que nos cuenta los cambios que nos traerá la inminente actualización de flex.
A resaltar el soporte para aplicaciones modulares... adios a esos swf iniciales tan pesados ;)

Guia de cambios


Nov 3 2006

Crear un webservice con nuSoap y consumirlo con Flex

Leyendo un post en MIF sobre Webservices y .net me entro la curiosidad y me puse a experimentar con servicios web basados en PHP y nuSoap. La experiencia fue muy grata ya que en unos minutos tenía creado un servicio.

Lo primero que debemos hacer es bajarnos la última versión de nuSoap y copiarla en nuestro servidor. En mi caso cree una carpeta llamada webservices para alojar los servicios y dentro de esta otra llamada nuSoap donde incluí todas las clases que previamente había descargado.

Una vez que tenemos las clases en nuestro servidor es hora de crear el servicio web. Para ello creamos un fichero llamado HolaMundo.php e incluimos el siguiente código:

< ?php
require_once('nusoap/nusoap.php');
$server = new soap_server;
 
function HolaMundo ($nombre) {
return "Hola ".$nombre;
}
$server = new soap_server;
$ns="http://localhost:9999/ws/HolaMundo";
$server->configurewsdl('ApplicationServices',$ns);
$server->wsdl->schematargetnamespace=$ns;
 
$server->register('HolaMundo',
array('nombre' => 'xsd:string'),
array('return' => 'xsd:string'),
$ns);
 
if (isset($HTTP_RAW_POST_DATA)) {
$input = $HTTP_RAW_POST_DATA;
}
else {
$input = implode("\r\n", file('php://input'));
}
$server->service($input);
exit;
?>

Como vemos lo que hacemos es crear una instancia de la clase soap_server , asignamos el namespace del webservice, configuramos el WSDL y registramos el método HolaMundo indicando los parámetros de entrada y salida así como el tipo de cada uno de estos.

Una vez hecho esto ejecutamos el servicio web desde nuestro navegador y si todo ha ido bien nos aparecerá una pantalla como esta:
webservices.gif

Por el lado de Flex el ejemplosería algo así (bastante similar al excelente articulo de MIF ;) )

< ?xml version="1.0" encoding="utf-8"?>
<mx :Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical" width="400" height="150"
backgroundGradientColors="[#ffffff, #ffffff]" >
</mx><mx :Script>
< ![CDATA[
import mx.controls.Alert;
private function ok():void {
Alert.show(ws.HolaMundo.lastResult);
}
]]>
</mx>
<mx :WebService id="ws" result="ok()" showBusyCursor="true"
wsdl="http://www.alexdw.com/webservices/HolaMundo.php?wsdl" />
<mx :HBox width="100%">
<mx :Label text="Tu nombre: "/>
<mx :TextInput id="src" enter="ws.HolaMundo(src.text)" toolTip="Escribe aquí tu nombre"/>
<mx :Button label="Salúdame!!"
click="ws.HolaMundo(src.text)" />
</mx>
 

Aquí lo que hemos hecho es crear un campo de entrada, un botón y hemos instanciado nuestro webservice de modo que al pulsar sobre el botón (o al hacer enter en el campo de texto) invocamos el método HolaMundo de nuestro webService pasando como parámetro el texto del campo de introducción.

Como veis la creación y uso de los webservices en flex se hace de lo más sencillo ;)


Oct 25 2006

Componente RemoteObject para AMF0 en Flex 2

Navegando por el site de Renaun Erickson me he topado con un mágnifico componente que hace muy sencillo el uso de AMFPHP sobre flex 2.

El componente emula la forma nativa integrada en flex 2 para llamar a los objetos remotos pero mediante el protocolo AMF0.

Utilizando los servicios que utilizamos en nuestro antiguo Hola mundo, nuestro mxml quedaría así:

< ?xml version="1.0" encoding="utf-8"?>
<mx :Application�  width="400" height="150" xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:remoting="remoting.*"
layout="vertical" backgroundGradientColors="[#ffffff, #ffffff]" borderStyle="none" borderColor="#ffffff">
 
<remoting :RemoteObjectAMF0
endpoint="http://www.alexdw.com/flashservices/gateway.php"
id="HM"
source="HolaMundo"
showBusyCursor="true"
makeObjectsBindable="false"
result="ok( event )"
fault="ko( event )">
</remoting>
 
</mx><mx :Script>
< ![CDATA[
import mx.rpc.events.*;
import mx.controls.Alert;
 
private function llamada(s:String):void {
HM.saludar(s);
}
private function ok( event:ResultEvent ):void {
Alert.show(event.result.toString());
}
public function ko( event:FaultEvent ):void�  {
Alert.show("No se pudo acceder al servicio");
}
 
]]>
</mx>
<mx :HBox width="100%" height="100%" horizontalAlign="center" verticalAlign="middle">
<mx :Label text="Escribe tu nombre"/>
<mx :TextInput id="entrada" width="90"/>
<mx :Button label="Saludar" height="20" click="llamada(entrada.text)"/>
</mx>
 

Descárgate los archivos de este ejemplo


Oct 24 2006

Conferencias de MIF sobre flex 2

Hoy leo en MIF que ya tienen previstas las primeras conferencias sobre flex 2 a través de Adobe Connect.
Las conferencias se realizarán el 18 de Noviembre pero será a partir del día 17 cuando hagan publica la dirección para asistir.

El programa no tiene desperdicio:

  • 10:00-10:50. Joan Garnet. Item Renderers e Item Editors: Componentes dentro de celdas
  • 11:00-11:50. Alberto Albericio. Efectos en Adobe Flex 2.0
  • 12:00-12:50. Edgar Parada. Estilos en Flex a través de CSS
  • 13:00-13:50. Carlos Rovira. Flex Data Services 2 en ejemplos

Nos vemos (virtualmente claro) allí!!!


Oct 19 2006

RIAForge. Sitio de proyectos open source

Ha nacido un interesante portal donde podremos conocer desarrollos opensource creados con tecnología de Adobe.
Interesante no perderlo de vista ;)

RIAForge