Categoria: Flash (39 articulos)
April 22, 2006

Flash Player 9 y algunos detalles mas.

Como algunos sabrán el Flash player 8.5 que se encuentra en estado beta, ahora se llamara Flash player 9. Con esto Adobe se evitara conflictos ya que la próxima versión de Flash (Blaze) estará basada en el mismo player.

Además este player tiene muchos cambios que lo diferencian bastante con sus antecesores y por eso es mejor diferenciarlo bien de sus predecesor (8) y darle un numero unico (9). Aquí algunos detalles:

Primero quería mencionar que ahora el player tiene dos virtual machines. Una sirve para correr todas las versiones anteriores, desde la version 1 a la version 8. La otra sirve para correr las versiones 9 en adelante. Esto fue implementado así por que ahora la nueva versión de ActioScript tiene un nuevo bytecode que se diferencia bastante de las anteriores.

También se le agrego un verificador de bytecode que analiza los bytes a medida van bajando y verifica que el bytecode no tenga errores y que sea legitimo. Esto ayuda a resolver los problemas con anticipación.

Esta nueva virtual machine también posee un nuevo garbage collector (recolector de basura) mucho mas inteligente que va limpiando la memoria que no se usa mas en nuestra aplicación.

También existe el JIT (just un time compilation) que lo que hace es transformar las instrucciones que están el en bytecode del archivo swf a código nativo de la maquina. Permitiendo que el código se ejecute mucho mas rápido ya que es nativo en el procesador, el proceso es similar a lo que hace java con su virtual machine.

Otra cosa interesante del nuevo player es que hay una versión para los desarrolladores que es el debug player y que permite ver los errores en la aplicación a medida que van pasando, en tiempo real (runtime exceptions). Esto es increíble ya que facilita mucho la programación.

Por el lado de las librerías de código, ahora tenemos dos librerías muy importantes incomparadas directamente en el player.

Una es el Focus manager. Y la otra es el motor de Eventos (EventDispatcher) que también ahora es parte del player. Gracias a esto todos los objetos que se muestran en la pantalla (ósea que están el la diplayList) poseen los métodos necesarios para trabajar con los eventos debido a que heredan de la clase EventDispatcher.

Bueno para terminar les digo que todo estos beneficios los tenemos si hacemos código en ActionScript 3.0. También prometo que el próximo post no va ser tan freak :)

October 27, 2005

Cristalab Online 2

Cristalab Online 2

El Sábado, 26 de Noviembre será la próxima conferencia de Cristalab (gratis y para todo el mundo). La cual incluirá varios temas interesantes como:

  • Chats con soporte de webcam sin servidores, en Flash 8
  • Creación de componentes en Flash 8
  • Proyectos corporativos de alto nivel con herramientas Open Source en Flash
  • Creando sitios web con CSS, XHTML y aproximación a paginas semánticas
  • Instalación y primera aplicación en Flash creada en un entorno 100% libre, FAMES
  • Bases de datos en Flash 8 con Flash Remoting 2
  • Presentación de nuevos proyectos de Cristalab. Y Esto es Cristalab
  • Aplicaciones para Internet con Flex Builder 2 y Actionscript 3

 

Gracias a Freddie y a toda la gente del Clab por organizar este tipo de eventos, y gracias ademas por invitarme ;). Ahí estaré presentando la conferencia de Flex y ActionScript 3

Para mas info visiten Cristalab Online 2, y espero verlos por ahí

August 25, 2005

Bevel Filter en Flash 8

Bueno siguiendo con el tema filtros acá les pongo un ejemplito de como utilizar el filtro bevel por medio de actionScript. Es similar al post anterior ya que puede generar un código base para luego utilizarlo en alguna aplicación.

Bevel Filter

Ver ejemplo online (se necesita Flash Player 8)

August 17, 2005

Drop Shadow en Flash 8

En este ejemplo voy a mostrar como se hacen los Drop Shadow de forma dinámica por medio de ActionScript. El ejemplo en si es una pequeña herramienta que permite modificar todas las propiedades que tiene el Drop Shadow.

Un vez que encontramos el efecto deseado podemos genera el código de dicho efecto pulsando el botón "code". El código que produce esta diseñado para ser copiado y pegado en un .fla vacío. En síntesis lo que hace es crear un objeto DropShadowFilter y un MovieClip y luego aplicarle el filtro al MovieClip.

Drop shadow

Ver ejemplo online (se necesita Flash Player 8)

August 16, 2005

Color picker simple en Flash 8

Bueno siguiendo el tema del color picker aquí les tengo uno mas pequeño y simple. En este ejemplo se pueden dibujar cuadrados del color elegido. Para verlo necesitan el player 8 :D.

Color picker

El código esta en una .as file externa y seria algo así aunque un poco simplificado

import flash.display.BitmapData;
import com.asfusion.events.LazyDispatcher;
class ColorPickerSmall extends LazyDispatcher
{
   private var btmp:BitmapData;
   private var clip:MovieClip;
   private var field:TextField;
   private var bitmapLibrary:String = "palette";
   
   function ColorPickerSmall(handelClip, level)
   {
      btmp = BitmapData.loadBitmap(bitmapLibrary);
      clip = handelClip.createEmptyMovieClip("colorPicker",level);
      init();
   }
   function init()
   {
      var owner = this;
      var palete = clip.createEmptyMovieClip("palette",0);
      palete.attachBitmap(btmp, 0, "auto", true);
      palete.useHandCursor = false;
      palete.onPress = function()
      {
         this.onMouseMove = function()
         {
            owner.onMouseMove(this._xmouse, this._ymouse);
         }
      }
      palete.onRelease = palete.onReleaseOutside = function()
      {
         delete this.onMouseMove;
      }
   }
   function onMouseMove(x,y)
   {
      colorChanged(btmp.getPixel(x, y))
   }
   private function colorChanged(color:Number):Void
   {
      dispatchEvent({type:"change", target:this, value:color});
   }
}

Como verán estoy heredando de el event dispatcher para poder hacer mandar el evento change. Asi luego puedo tener un listener que escuche los cambios de color que se producen en el componente

var myColorPicker:ColorPickerSmall = new ColorPickerSmall(clip, 0);
function colorChanged(event):Void
{
   color = event.value;
}
myColorPicker.addEventListener("change", colorChanged);

Ver ejemplo online (se necesita flash player 8)

Note for English speakers:I posted this in my English feed by mistake and mxna indexed it. Sorry for the trouble :D

August 11, 2005

beginBitmapFill en Flash 8

Este nuevo método del MovieClip era algo esperado por varios :D, ya que nos brinda la posibilidad de llenar un fondo de un movieClip con una imagen en forma dinámica por ActionScript. En este ejemplo uso un imagen de la librería (pattern) de la misma forma en que lo mostré anteriormente pero en vez de usar attachBitmap, usamos beginBitmapFill para pintar un movieClip

beginBitmapFill

Este es el código que esta en el primer frame:

import flash.display.BitmapData;
var initial_x;
var initial_y;
var bmpd:BitmapData = BitmapData.loadBitmap("pattern");
this.onMouseDown = function()
{
   initial_x = _xmouse;
   initial_y = _ymouse;
   this.onEnterFrame = function()
   {
      this.clear();
      matrix = new Matrix();
clipped = true;
smoothing = true;
   beginBitmapFill(bmpd, matrix, clipped, smoothing);
moveTo(initial_x, initial_y);
lineTo(initial_x, _ymouse);
lineTo(_xmouse, _ymouse);
lineTo(_xmouse, initial_y);
lineTo(initial_x, initial_y);
endFill();
   }
}
this.onMouseUp = function()
{
   delete this.onEnterFrame;
}

Ver ejemplo online

August 11, 2005

attachBitmap y loadBitmap en Flash 8

Este es un ejemplo bien sencillo que usa dos nuevas funciones. La primera attachBitmap que es parte de la clase MovieClip y nos permite adherir (attach) un bitmap al movieclip, es parecido a attachMovie pero lo hace con bitmaps. La otra función es loadBitmap que nos permite cargar una imagen que esta en la librería a la memoria. En este caso yo tengo un png png en la librería en la librería que en el "linkage" esta exportado para ActionScript con el nombre "circle.png". Luego tengo el siguiente código en el primer frame:

import flash.display.BitmapData;
var btmp:BitmapData = BitmapData.loadBitmap("circle.png");
var level = 0;
this.onMouseDown = function()
{
   var clip = this.createEmptyMovieClip("bmp"+level,level++);
   clip.attachBitmap(btmp, 0, "auto", true);
   clip._x = _xmouse - clip._width/2;
   clip._y = _ymouse - clip._height/2;
}

Ver ejemplo online

August 09, 2005

Blend Modes en Flash 8

Este es un ejemplo que muestra los diferentes tipos de blend modes que posee el nuevo Flash 8 ( muy similares a los que trae photoshop por cierto). Los blend modes se pueden aplicar a cualquier movieClip ya sea por medio de ActionScript o directamente en el programa desde el panel de propiedades.

Blend Modes

Para este ejemplo he creado un movieClip con el nombre "fusion" (el cual es que se desplaza con el ratón) y un comboBox con el nombre "blend" el que posee la lista de blend modes. Luego en ActionScript tengo el siguiente código, como verán es bien sencillo el tema:

fusion.startDrag(true, 145, 20, 340, 460);
blend.dataProvider = [ "normal", "multiply", "screen",
                "lighten", "darken", "difference",
                "add", "substract" ,"invert", "alpha",
                "erase", "overlay", "hardlight","layer"];
function onChange()
{
   fusion.blendMode = blend.selectedItem;
}
blend.addEventListener("change", onChange);

El blend mode se puede aplicar de dos maneras, con un string o con un numero, en mi ejemplo uso strings por que es mas fácil saber cual es a simple vista. Pero si quieren lo pueden aplicar por medio de números del 1-14

Ver el ejemplo online

August 08, 2005

Ejemplos y preguntas sobre Flash 8

Debido a que ya no hay mas secretos sobre Flash 8, porque Macromedia ahora permite que se hable públicamente, los invito a que pregunten sus dudas. Ya sea de código, del programa, los nuevos API, etc... y tratare de contestarlas siempre y cuando sepa la respuesta :D

También si quieren ver ejemplos sobre algo en especial solo diganlo, tratare de hacer ejemplos a medida que me de el tiempo.

 

Lo único que no podrán ver son screenshots del programa ni tampoco podrán bajarse el .fla (debido a que Macromedia no lo permite hasta que no salga la versión final). Sin embargo el código lo voy a postear en la web y los archivos de los ejemplos se van a poder bajar en Septiembre cuando salga Flash 8.

Bueno eso es todo ahora les toca preguntar a ustedes
Saludos

August 08, 2005

Color picker creado con Flash 8

Bueno como todos sabrán en septiembre sacaran el Flash 8. Por eso Macromedia a dado el visto bueno para que postemos algunas cosas que hemos hecho y contestemos preguntas referentes al Flash 8.

Aquí les pongo un ejemplo que hice hace tiempo, es un color picker parecido al del photoshop pero menos complejo claro

Color Picker

La fla se la van a poder bajar luego una vez que salga el flash 8 (septiembre) Debido a que macromedia todavía no quiere que distribuyamos las fla files

Ver el ejemplo online

August 08, 2005

Listo al fin la preorden de Studio 8

Mucha gente ya lo habra notado en varios blogs y comunidades. Al fin salio la preorden para hacerse de un Studio 8 (al fin regresan a las numeraciones, ya que las simbologías MX, MX 2004 y MX Pro 2004 eran algo confusas para los newbies). Entre las cosas a destacar, son las mejoras de Dreamweaver en cuanto a CSS, estándares y XSTL, que hoy por hoy es el mejor editor WYSIWYG que existe. Además, como muchos notarán, sigue Fireworks. En mi opinión no es una sopresa muy grande, como en otros lados han reseñado (hay otro software que ahora comento que si me sorprendió). Posiblemente lo incluyeron dentro del paquete dado que la compra de Macromedia por Adobe es reciente y el desarrollo del programa estaba muy avanzado. Habrá que ver que sucede en un posible y muy a futuro Studio 9 donde es probable que lo fusionen con el Image Ready que es su competencia directa, y no Photoshop como mucha gente cree. Entre las mejoras de Fireworks esta una muy especial que me gusto mucho y es la capacidad de generarar pop menus completamente en CSS (no mas javascript). En el caso concreto de Flash 8, ya se han hablado de algunas features.

Lo que comenté y que es a destacar, es que incluyeron dentro del Studio 8 al discreto FlashPaper y esto es precisamente lo que más me sorprendió. Porque ? FlashPaper es la propuesta y competencia que creó Macromedia alguna vez contra el popular formato PDF. A pesar de la compra de Macromedia, veo que le estan dando un apoyo muy bueno, ya que son pocas las webs donde veo el uso del FlashPaper.

Y para terminar, lo que no me gusto del Studio 8, fue la incluir a Contribute, el cual en mi opinión es un programa bastante malo que aunque pone al "alcance de todos" la web, considero que hace menos profesional nuestro trabajo.

En fin, aún hay que esperar hasta Octubre para tener en nuestras manos todo este paquete de software. Acuerdense que en Septiembre se cumplieron dos años desde la salida del Studio MX Pro 2004.

July 25, 2005

Trio Motor un ejemplo de una aplicación hecha con Remoting

Trio Motor

Este ejemplo lo he tenido en mi disco duro hace mas de un año y ha estado bastante olvidado. Lo hice cuando salió la nueva versión de flash remoting y en su momento iba a ser la segunda parte de un tutorial para Devnet, pero nunca llego a terminarse. Si bien ya tiene un tiempo creo que seria una pena que termine olvidado en mi disco duro por eso he decidido hacerlo publico.

En esta aplicación usamos ColdFusion para conectarnos vía remoting. Esta todo escrito en ActionScript 2.0, y todo el código es externo, no hay ni una sola linea de código en la fla :)

El código también esta bien comentado ( lo único malo es que esta en ingles ) y también esta publicada la documentación de todas las clases. Otra cosa que pueden encontrar en el código son algunos componentes propios y la utilización del cell render en la datagrid. Bueno eso es todo espero que sirva como ejemplo.

Mirar el ejemplo online
Bajarse el código
Mirar la documentación

Post relacionados
Flash Remoting V2 + Trio Motor V2

July 20, 2005

Remoting tutorial - consumiendo web services con AMFPHP

klr20mg a sacado un interesante tutorial en el que explica como conectarse por medio de AMFPHP a los Web Services de MXNA

Articulos relacionados
Remoting tutorial
Autentificacion de usuarios con flashremoting

July 20, 2005

Otro que se certifica

Siguiendo los pasos de Daniel yo ahora también estoy certificado por Macromedia.

Para los que les interese el tema acá hay dos sitios en los cuales se puede practicar, uno es una aplicación hecha en central (certifiable ) y el otro es el que recomienda el libro de estudio. Bueno eso es todo, suerte para el próximo valiente

Post Relacionados:
Al fin certificado
Indignado

July 13, 2005

Algunos ejemplos en Flash 8

Bueno parece que solo se necesito un dia para que ya encontremos en la web algunos ejemplos con las nuevas posibilidades de flash 8

luminicbox nos muestra como hacer para cambiear los blend modes
klr20mg nos muestra como cargar imagenes como gif, png y jpg progressivos
Franto nos muestra el drop shadow
Y por ultimo quasimondo nos da una herramienta para cambiar el bycode sin necesidad de usar un editor. Asi podremos probar las nuevas posibilidades del Flash 8

July 12, 2005

Flash player 8 Beta

Si señor ya se pueden bajar el nuevo flash player 8 desde Macromedia

June 11, 2005

Flash 8

Ultimamente en estos días Macromedia ha empezado a fomentar a flash como un plataforma de desarrollo. La cual tendrá como principal actor a nuestro querido Flash player 8 ( alias Maelstrom ). Esto significa que diferentes productos se basaran en la tecnología flash y se complementaran unos con otros. Por un lado tendremos a Flex que es la mejor herramienta para crear Rich Internet Applications el cual posee su propio lenguaje (mxml) + ActionScript. También saldrá una nueva versión de Flash Communicator Server. Ademas saldrá un nuevo server (Flash Cast) para los teléfonos celulares (ahora se encuentra en beta por dos grandes compañías de teléfonos celulares). Habrá también un nuevo programa (Zorn) que remplazará a Flex Builder y que esta basado en Eclipse.org. En cuanto a Flash Lite, Macromedia planea sacar una nueva versión (alias Deuce) la cual soportara ActionsScript 2 (bye bye flash 4 Code :) ) muy similar lo que es Flash 7.

Ademas como todos sabrán al final de este verano (hemisferio norte) saldrá la nueva versión de Macromedia Flash 8 la cual tendrá varias cosas nuevas y de las cuales tengo algunas imágenes que saque cuando fui a flashforward (tendrán que disculparme la calidad, pero no había luz y no estaba tan cerca). Las novedades son:

Una mejor calidad de texto (Saffron)

Saffron es una nueva tecnología que permite que las fonts (fuentes de texto) se vean muchísimo mejor en la pantalla. Por un lado tienen un sistema de antialiased con una calidad muy buena, y además las fonts se ven bien cuando se las achica ya que se adaptan a los pixels.

Mejores Gradients

Ahora vamos a tener mucho mas control sobre los gradients, y se podrán hacer efectos mas interesantes con ellos.

Mejores strokes

Los strokes ahora pueden tener diferentes "cap" ( puntas, o terminaciones) como round (redondeado) o square (cuadrado) y diferentes "join" (uniones) como bevel, round o miter. Ademas le podemos asignar como color un gradient. En las imágenes siguientes si miran con detalle pueden ver que los bordes usan diferentes estilos.

stroke
stroke
stroke
stroke

Filtros similares a los del Photoshop

Los filtros junto con los blend modes creo que van ser el boom entre los diseñadores. Con los filtros ahora vamos a tener la capacidad de crear y animar nuestros movieclips y aplicarles diferentes filtros como: Drop Shadow, Blur, Glow, Bevel, Gradient glow, Gradient Bevel, Adjust Color, Comvolution. De una manera muy similar a Photoshop o After Effect. En la siguiente fotos se ve (medio difuso) el menú donde aparece todos los filtros

stroke

Acá por ejemplo se ven los parámetros que se pueden cambiar del dropShadow (pueden ver la imagen en grande también )

stroke

Las siguientes fotos muestran un texto dinámico que usa dropShadow, y un monito ( que es una animación) que tiene dropShadow y también bevel. Los dos son modificados por medio de actionScript en tiempo real

Text DropShadow
Mono DropShadow
Mono DropShadow

En Las siguientes imágenes del perro fueron aplicados diferentes filtros

Perro Filtros
Perro Filtros
Perro Filtros
Perro Filtros
Perro Filtros

Blend Modes

Distintos blend modes también se van a por aplicar a nuestros objetos tales como: Layer, Darken, Multiply, Lighten, Screen, Overlay, Hard light, Add, Substract, Difference, Invert, Alpha, Erase.

La posibilidad de cargar jpg progressive, gif y png.

Si gracias Macromedia por esto, por fin podremos cargar png :)

Upload

Otra gran novedad que mas de una estaba esperando, no mas hacks, ahora se podrán subir archivos al server directamente desde flash.

Nuevo video Codec - alpha channel

Por lo que vi, este codec no le va a tener que envidiar nada a quicktime, Ahora se podrán hacer full screen videos con calidad de dvd y un peso bien pequeño . Cabe mencionar acá que la calidad de la imagen me asombro.

Bitmap caching

Bueno este es uno de las mejores innovaciones en el player, ya que va a beneficiar tanto a diseñadores como programadores por que nos permitirá crear una imagen basada en pixels de nuestro movieclip y evitar el recálculo de vectores una vez que la imagen se crea. En otras palabras lo que hace es evitar que en cada frame el player recalcule los vectores del movieclip. Esto permite transiciones mucha mas veloces y movimientos mas suaves.

Graphic API

Para los amantes del código, ahora va a ver un API similar a otros lenguajes como Director, java, etc. que nos permite modificar los pixels en detalle.

E4X

Por ultimo según un post en Flexcoders el flash player tendrá un API basado en en "ECMAScript for XML" o E4X. Supongo que esto alegrara a varios programadores por ahí :)

Como ultimo quiero recomendarles un post de Aral en el que muestra unas fotos del 8 Ball mucho mejor que las mías :D

June 07, 2005

I'm a weirdo! What the hell Im doing here!

Bueno...todos conocemos la famosa canción de Creep de Rediohead y tal vez algunos nos hemos sentido como el personaje (Dicen por ahí que Geek + Friki = Wierdo).
Aquí hay una animación que saque del blog de Innocuo el cual me pareció terriblemente magistral (y eso que suelo poner mas artículos hablando de programación que de arte, aunque yo sea diseñador de formación).

La verdad, la verdad...esta increíble, y pues...el que no quiera verlo, que no lo vea, y el que sí, es porque aún tiene fe en este pequeño blog.

El susodicho link

Eso si...esta un poco pesado, pero tienen un entretenido juego de pong..baaah...la verdad es que me aburrió el juego, y me puse a hacer otras cosas hasta que cargara la animación.
June 06, 2005

The Flash Platform ( La plataforma flash)

Se han publicado varios artículos interesantes que hablan de lo nuevo que se viene en el mundo de flash. Ahora Macromedia esta tratando de fomentar a flash como un plataforma de desarrollo que esta compuesta de varias tecnologías.

Ademas anuncian una nueva herramienta que nos servirá para el desarrollo de aplicaciones que va estar basada en Eclipse.

Acá los artículos que detallan mas el tema:
Flash Platform
Flash Platform overview (pdf)
Flash Architecture (pdf)
Macomedia y Eclipse

May 25, 2005

Conferencias en Cristalab

Freddie y compañia van a ofrecer una serie de conferencias a través de Breeze. La iniciativa me parece muy buena, tratando de evangeliazar acerca de las tendencias en Macromedia Flash. Sin duda estaré ahi, me podran encontrar con el nick de tangamampilia, pero seguramente Freddie me estará llamando Daniel del Rancho XD.
Esto es porque en la conferencia de prueba anoche, donde estabamos unas 6 personas, le comente que estaba en un rancho, que es como una especie de finca familiar. El caso es que habia otro Daniel (si, si...ya se....tira una piedra al azar, y seguramente le darás a un Daniel), y como no le gustaba pronunciar mi nick, pues me apodó Daniel del Rancho.

En fin...mas info de las conferencias aqui.


May 04, 2005

Cristalab Colombia 2005

Cristalab Colombia 2005Faltan solo 13 días para el gran evento que esta organizando la gente de Cristalab. Freddie y su equipo nos deleitaran con una gran variedad de charlas.
Pero lo mejor de todo es que es gratuito. Sí, escucharon bien: gratis :). Ademas no es necesario estar en Colombia ya que va ser trasmitido online para el resto de los mortales.
Y que estas esperando? registrate ya!!!

April 27, 2005

Desperdicie tres horas de mi vida por no leer la ayuda de Flash

4 años usando Flash.
3 años programando en Actionscript.
2 años dando cursos Flash/Actionscript.
4 meses certificado como developer en Mx 2004...

y aún se me olvida que existe el F1.

Por cierto...ahora que recuerdo Macromedia sigue sin enviarme mis goodies por la certificación. A ver si no me llega con el logo de Adobe en lugar del de Macromedia con eso de la compra ¬¬

Que mala vida, me sentí como todo un novato.
April 18, 2005

Adobe compra Macromedia

Si aunque sea dificil de creer me acabo de enterar por un post de Mike Chambers que Adbobe y macromedia se juntaron. Me pregunto que sera de esta dupla. Supongo que se haran cosas muy interesantes. Para mas info vean lo que dice Mike Chambers y lo que dice Adobe
March 03, 2005

Finalistas en Flash Foward

Ya están los finalistas del Flash Film Festival. Y hay para todos los gustos, 4 sitios por cada una de las 15 categorías. Si andas buscando inspiración es un buen lugar para empaparte de nuevas ideas.
Disfrutenlo: FlashForward Finalists
March 01, 2005

Wowwwwwwwwwwww un regalo

Les aseguro que esto es algo que todo flashero siempre quiso conocer (ya que son nuestras raíces comunes). Lástima de que no tengo Pc.

Saludos!
January 30, 2005

Powered by Detroit

Powered by Detroit es una nueva conferencia enfocada a ColdFusion y Flash. Si bien me parece que en el mundo de los desarrolladores latinos Cold Fusion todavía no tiene mucha promocion, hay algunos pocos que si lo usamos y sabemos que flash y ColdFusion hacen una buena dupla :) ( hay alguien mas por ahi?). Será quizá porque los dos estan hechos por Macromedia que se llevan tan bien? Lo que si se es que con Flash Remoting y ahora con las Flash Forms que esta incorporando ColdFusion en su nueva version (Blackstone) las aguas se juntan cada vez mas.

Y para los interesados y aventurados que les guste participar en la conferencia, les cuento que estare presentando una charla de "ColdFusion Flash Forms in Depth" en la cual explicaremos todo lo nuevo que estas Flash Form poseen.

Tambien de la comunidad latina va estar Oscar Trelles presentando Flash - Usability asi que ya estan avisados, para el que se anime.

December 30, 2004

Accesibilidad en Flash

Hay algo que a los desarrolladores siempre se nos olvida: implementar opciones de accesibilidad en nuestros sitios. Incluso en HTML donde es tan fácil como declarar los atributos ALT de los tags <img> con frequencia olvidamos hacerlo. Justo ahora se me dio por estudiar un poco el tema, y su relación con Flash. Desde la versión Mx, Macromedia añadio una serie de opciones tales como un panel de Accesibility asi como una clase del mismo nombre. Tal vez la mas comentada ventaja de utilizar estas herramientas es que permitimos que aquella parte de la población que padecen de alguna discapacidad como ceguera y/o sordera puedan visitar, navegar y poder conocer los contenidos de nuestro sitio utlizando algún Screen Reader. Aunque la verdad la cosa no se queda ahi, ya que incluso a los usuarios comunes les damos la posibilidad de mejorar su experiencia mediante el uso de shortcuts de acceso rápido (que tendriamos que programar aparte usando el objeto Key). Desafortunadamente no hay mucho seguimiento al desarrollo de estas tecnologías, tal como lo vemos en el caso de Macintosh donde actualmente el sistema MacOs X no cuenta con ningun Screen Reader (aunque Apple ya anunció que Tiger traera uno incluido gratuitamente llamado VoiceOver). Incluso en Windows son contados y solo un par son compatibles con Flash. El mejor según he escuchado es JAWS, aunque cuesta algo de dinero. Además, si bien recordamos (o para los que no lo sabían) un plus interesante de los componentes de Macromedia (aquellos que desatan tanto amor y odio) es que dentro de su framework incluyen varias implementaciones de accesibilidad, tal como poder navegar con las flechas en los List y ComboBox. Un ejemplo muy interesante es este pequeño demo elaborado con Director donde tienes una serie de shorcuts y debes realizar una serie de cosas (algo asi como un juego). Obviamiente no ves nada del contenido y es para que te des una idea de como una persona discapacitada se las arregla para navegar. Ya para terminar pienso profundizar mas en el tema, aunque por el momento les recomiendo a nuestro amigo F1 o bien este maravilloso link. De igual forma San Google Tadeo nos puede brindar muchas respuestas.

Feliz año!!!
November 27, 2004

Flash For Mexico

Los que ya saben, ya saben, y los que no, pues para no quedarnos atrás de todos los demas blogs que seguramente estan comentando la noticia, hablaremos del FFM. El próximo miércoles comienza el único festival de diseño web mexicano y pues me iré de viaje. Obviamente hago referencia al Flash For Mexico. Por ahí me comentó un amigo de Argentina que cuando Chica-Ska fue al festival DG04 en Mar del Plata, sorteó una serie de sombreros charros y la condición era decir una grosería en mexicano ( y como buen maestro que soy, mi amigo grito desde atrás "puta madre cabrón!!!"). Ella también asistirá al evento, pero como expositora.

Ojalá se ponga bueno y exista un poco de seriedad :P
Ya les contare como estuvieron las conferencias, y para los que vayan, nos vemos allá.

November 23, 2004

Certifiquese con un arma blanca de Macromedia

Para aquellos que deseen hacer el examen de certificación para profesional de Macromedia, les cuento que hay un pequeño manual arma blanca de 300 paginas (que acabo de recibir y con el cual le puedes dar un "estate-quieto" a quien sea). No es que realmente quiera sacar la certificación, pero la necesito para donde doy cursos, y pues, a algunas empresas si les interesa que su personal tenga los diplomas y los certifique gente avalada (no solo sirven para colgarlos en la chimenea y que lo vean nuestras madres).

Seguir leyendo.....

November 17, 2004

Componentes dentro del Flash Player?



Hace un par de semanas un alumno mío me pregunto porque algunos de los componentes de Macromedia no venían ya incluidos dentro del Flash Player. De hecho la idea es buena (adivinen a quién sigue sin ocurrirsele?), y si no mal recuerdo en Nomaster hablaron alguna vez acerca de este tema (aunque no logro ubicar el post).

Seguir leyendo.....

October 23, 2004

Pequeño adelanto de lo que va a ser el nuevo flash player

Colin Moock nos muestra un video de una conferencia en Japón donde Kevin Lynch hace una demostración de lo que es el nuevo player. Se puede ver en el demo como el flash player incorpora effectos en real time como drop shadow, blur, glow y otros. Ademas mejora mucho la velocidad de ejecución, por ejemplo algo que corria a 14 frames ahora con el nuevo player corre a 125 frames por segundo.

Post original en ingles

June 11, 2004

Flash Remoting V2 + Trio Motor V2

Como algunos ya sabrán Macromedia a sacado la nueva versión de Flash Remoting (v2), y si bien a cambiado un poco la sintaxis, el nuevo API es mucho mejor. Encontrarán por ejemplo que varias de las funciones del viejo remoting están fuera de uso ( deprecated ) y es por que un nuevo grupo de clases a tomado su lugar. Ahora nos dan un API más flexible y más cómodo para trabajar. Pero lo mejor de todo es que han mejorado notoriamente la documentación.

Y junto con estos componentes nuevos, también salió un articulo en Devnet (inglés) acerca de la nueva versión de Trio Motor en la que estamos trabajando. Este artículo escrito por mí en conjunto con Mike Kollen es el primero de una serie de tres y se base en el pequeño componente que se encuentra justo antes de entrar a la aplicación principal. En este artículo explicamos algunas de las clases de remoting como Service, PendingCall, Recordset, DataGlue, etc. Pero no cubrimos la parte del componente connector. Pero si también están interesados en ver un ejemplo del component connector, no se preocupen ya que he desarrollado una versión que lo utiliza, pero que al final no incluimos en el artículo. Así que el que guste le puede echar un vistazo. Lo único que tienen que asegurarse es que la GatewayUrl sea la misma que la que tienen configurada en su server. Ahora esta puesta como localhost, pero la pueden cambiar manualmente desde los parámetros del componente.

Muy pronto van a salir los dos artículos que siguen donde desarrollaremos mas la aplicación principal y nos meteremos mas de lleno la programación orientada a Objetos así que estén atentos.

Si surgen algunas dudas no duden en ponerlas en los comentarios.

Flash Remoting (v2)
Articulo en Devnet
Ejemplo del componente connector

May 19, 2004

Bug en el TextFormat?

No se si esto será un bug o no pero me ha pasado que si quiero agregar mas texto a un TextField que tiene aplicado un TextFormat este queda anulado al insertarse el nuevo texto. Pero esto pasa solo si el TextField no es del tipo HTML.
En el ejemplo que sigue verán que al apretar el botón "Add Text" el String "is a long" pierde todo su formato ( bold y italic ) cuando el TextField no es del tipo HTML.
Ejemplo:
Y el código que uso es el siguiente:
t = "this is a long text bla bla bla bla bla";

tfield1.html = true;
tfield1.border = true;
tfield1.htmlText = t;

tfield2.html = false;
tfield2.border = true;
tfield2.text = t;

var tformat = new TextFormat();
tformat.bold = true;
tformat.italic = true;

tfield1.setTextFormat( 4 ,15, tformat );
tfield2.setTextFormat( 4 ,15, tformat );


but.onRelease = function()
{ tfield1.htmlText += " more text "; tfield2.htmlText += " more text "; }
nota: En el escenario tengo dos textfields con los nombres tfield1 para el HTML y tfield2 para el que no es HTML
April 17, 2004

Casting en Flash

Ahora que en ActionScript 2.0 tenemos un lenguaje mas estricto que se encarga de buscar fallas en nuestro código (como por ejemplo problemas al asignar un tipo de variable que no coincide con el tipo esperado) no vemos obligados a utilizar casting en algunas ocasiones. Para los que no saben de que se trata esto del casting ( ni idea de su correlativo en español ), casting es la conversión explícita de un tipo de dato a otro.

Pero el casting en flash no se comporta siempre igual, por eso realicé unas pruebas para las cuales he creado una clase ( Container ) que puede guardar cualquier tipo de data. El Container lo único que sabe es que tiene un Objeto, pero no sabe de que tipo de Objeto es, ademas posee un método getItem() que es el encargado de retornar dicho objeto.

Lo primero que probaremos es tratar de asignar el Objeto que devuelve getItem a una varible de tipo Array, ya que es un Array lo que le pasamos a nuestro container en su constructor.

var c:Container = new Container(new Array());<br />var i:Array = c.getItem(); <br />

Pero al realizar esta operación el compilador salta con un error:
Type mismatch in assignment statement: found Object where Array is required. var i:Array = c.getItem();

Esto es por que él cree que nuestro Array no es un Array sino un Objeto debido a que eso es lo que nuestra clase Container dice que devuelve.Para solucionar esto es que podemos implementar el Casting de dos maneras diferentes, como en el siguiente ejemplo:

1- var i:Array = Array(c.getItem());<br />2- var i:Array = (Array)(c.getItem());

De estas dos maneras logramos que el compilador este contento y que nos asigne nuestro Array obtenido a nuestra variable. Pero no siempre esto funciona debido a que si en vez de querer asignar un data definida dentro del player (como Array , String, Math) queremos asignar un tipo creado por una clase especifíca nuestra, los resultados no son siempre iguales.

Para mostrar esto creé dos clases mas (Item y TestCasting) y traté de asignar lo retornado por getItem, que es un tipo Item, a nuestra variable, como aparece a continuación:

1- var i:Array = Array(c.getItem());<br />2- var i:Array = (Array)(c.getItem());

El problema aquí es que el primer ejemplo corre sin ningún problema pero en el segundo lo que se le asigna a nuestra variable es el valor de undefined en vez del de Item. Por eso es conveniente acostumbrarse a realizar el casting de la primer forma.

He puesto todas las clases incluida la .fla en un.zip así pueden bajarla y correrla más fácil.

March 18, 2004

Finalistas en flash in the can

Grata sorpresa nos han dado :), ya que estamos como finalistas en la categoría de excelencia técnica (technical excellence) por el desarrollo de metal tracer. En la misma categoría también se encuentran otros dos sitios bien interesantes logoyes ( sitio desarrollado por 2advanced) y roxemadia.
Además parece que este festival va a estar muy bueno,(aunque un poco lejos no?) ya que va a haber mas de 80 conferencistas y algunos seminarios, uno de el archiconocido Colin Moock y otro de Grant Skinner que va a tratar temas muy interesantes en cuanto a la programación de grandes proyectos.
Flash in the can web site.
Para el que quiera votar por nosotros aquí lo puede hacer :)
Mas información acerca del seminario de Grant Skinner.
March 18, 2004

FlashTray Tools

Chafic acaba de sacar una herramienta bien útil para trabajar con flash. Mas información acerca de ella la pueden encontrar aca.
March 18, 2004

Implementación del List Iterator para Flash

No se alguien habrá escuchado acerca del list iterator que es un interfaz de Java. Esta interfaz sirve para cuando tenemos que ir a través de los elementos de un Array o estructura de datos y lo que nos evita es generar la famosa variable i para ir por todos los elementos. Pero un uso mas interesante es cuando usamos el iteretor en un loop onEnterFrame, debido a la forma en que el iterator se comporta no necesitamos crear una variable i en el objeto en cuestión ni tampoco mantenerla en cada frame, con los que nos queda un loop mas limpio y claro que el habitual.
Para mas información acerca de el iterator pueden mirar la documentación en el sitio de sun.
Si quieren bajarse el ejemplo y la clase lo pueden hacer aquí.
Y el que quiera verlo en el navegador lo puede ver acá.
March 09, 2004

San Francisco Flash Forward 2004

Una de las cosas que me llamó la atención en este festival fue que hubo mas nominados de países extranjeros que de USA y además entre los extranjeros hubo dos de habla hispana uno de México y el otro de Argentina. En cuanto a las conferencias que asistí cabe destacar la de Eric Natzke y la Andries Odendaal, la verdad que es muy interesante la forman en que trabajan ambos. Pos supuesto también las conferencias de Samuel Wan, Branden Hall, Grant Skinner y demás estuvieron de primera. En cuanto a las novedades del mundo de flash nombraron que están trabajando para poder cargar gif en flash no solo jpg ( espero que también incluyan a los png). Por otro lado plantearon la posibilidad de una versión de flash en Linux, para esto mostraron a flash corriendo en el simulador Wine para Linux pero con la esperanza de que corra en forma nativa en un futuro no muy lejano. También hablaron de que van a sacar una mejora (update) de los componentes de flash y de la documentación a fines del año. Nombraron además que central en la próxima versión va a tener acceso a los archivos del sistema y también de la posibilidad de que pueda subir files a un servidor.
March 02, 2004

Para colorear codigo en Jedit

Por fin me he tomado el tiempo para completar la sintaxis del JEdit para que coloree las nuevas funciones de Flash MX 2004. Además he agregado la sintaxis de remoting, para los que quieran bajarse el xml acá se lo pueden bajar. Lo único que no incluye son las funciones de la versión 2 de los componentes. Sintaxis para Jedit.