MTASC + Aswing : Primeros pasos en OsFlash
March 30, 2006 on 5:30 pm | En OsFlash - Flash Open Source |Este tutorial, intenta de ser un pequeño acercamiento al mundo del OsFlash, donde se trata de hacer una pequeña introducción a MTASC y AsWing, creando finalmente el siguiente ejemplo que se puede ver aquí.
1.-¿Qué es MTASC?
MTASC son las siglas de Motion Twin Action Script Compiler. Bajo estas siglas se encuentra el primer compilador Open Source para ActionScript 2.0. Su última y parece que definitiva versión es la 1.1.2 que se puede descargar desde aquí. Más información (en ingles) en su propia página web www.mtasc.org.
Este compilador es obra de Nicolas Canesse, quien ya ha anunciado que no habrá nuevas versiones de MTASC que soporten ActionScript 3, ya que ahora esta metido en otro proyecto del cual podemos obtener más información en www.haxe.org.
2.-MTASC Primeros Pasos
Lo primero que debemos hacer es descargar el compilador desde su página oficial, o bien pinchando aquí, y descomprimir los archivos donde queramos tenerlo.
MTASC funciona desde la línea de comandos y sólo permite trabajar orientado a objetos, lo que nos obliga a que todos y cada uno de nuestros proyectos sean conjuntos de clases.
Para empezar ejecutaremos la acción ‘mtasc’ desde la linea de comandos de Windows y situandonos sobre el directorio en el que tengamos instalado MTASC, donde nos aparecerá una pequeña ayuda donde nos mostrará información sobre las distintas opciones, entre ellas:
- pack(path): compila todos los archivos de la ruta donde esté el paquete.
- cp : añade las rutas indicadas al classpath
- swf nombreArchivo.swf: donde nombreArchivo.swf es el nombre del archivo resultante.
- main: Habilita un punto de entrada a la aplicación.
- header ancho:alto:fps. Dimensiones y velocidad de la película en fotogramas por segundo.
- Archivo_origen.as. La clase principal de nuestra aplicación.
Para más información, sin lugar a duda visita la página oficial de MTASC.
3.-Compilando la primera clase con MTASC
La primera clase que servirá como prueba será la siguiente, la cualguardaremos en un archivo llamado ‘Tuto.as’ y se encontrará en el mismo directorio en el que se encuentre MTASC.
class Tuto {
static var app : Tuto;
function Tuto() {
// creates a ‘tf’ TextField size 800×600 at pos 0,0
_root.createTextField(”tf”,0,0,0,800,600);
// write some text into it
_root.tf.text = “Hello world !”;
}
// entry point
static function main(mc) {
app = new Tuto();
}
}
Para la compilación ejecutaremos la siguiente instrucción desde la línea de comandos y situados sobre el directorio donde se encuentre MTASC:
mtasc -swf tuto.swf -main -header 800:600:20 Tuto.as
Donde le indicaremos que nos cree ‘tuto.swf’ con las dimensiones indicadas y siendo la clase base ‘Tuto.as’..
Este mismo ejemplo se puede encontrar (en ingles) y explicado más en profundidad aquí.
4.-¿Qué es AsWing?
AsWing es un framework en desarrollo y bajo la etiqueta Open Source (:D) que permite crear aplicaciones flash de una manera cómoda e independiente del IDE, o entorno de desarrllo de macromedia. Este framework o conjunto de librerías es similar a Java Swing y proporciona una serie de componentes que nos pueden hacer la vida más fácil a la hora de desarrollar con ActionScript 2.0.
En la actualidad y como ya he dicho antes se encuentra en fase de desarrollo. Sí te das una vueltilla por la página principal de AsWing, además de poder descargar la última versión podrás encontrar documentación así como el estado del grado de desarrollo en el que se encuentra cada componente.
5.-Requisitos para utilizar las clases de AsWing con MTASC.
El único y principal requisito es (además de descargar AsWing por supuesto..) es tener las clases en el mismo directorio que las clases que incorpora MTASC, o en su defecto indicarle en el classpath donde estan estas clases.
En mi caso para hacer esta prueba he optado por introducir el directorio ‘org’ de AsWing en el directorio ’std’ de MTASC.
6.-Un ejemplo de Aswing con MTASC
El ejemplo consiste en una pequeña ventanita que contendrá un botón (tipo JButton) y un campo de texto ( tipo JtextArea). El funcionamiento será simplisimo, se creará la ventana, el botón y el campo de texto y se controlará el click del botón dejando un mensaje en el campo de texto.
// importamos las clases necesarias
import org.aswing.BorderLayout;
import org.aswing.Event;
import org.aswing.JButton;
import org.aswing.JTextArea;
import org.aswing.JFrame;
import org.aswing.utils.*;
// creamos la clase a compilar que heredará de JFrame
class Prueba extends JFrame{
// Creamos dos variables de tipo JButton y JTextArea
private var miBoton:JButton;
private var miTexto:JTextArea;
// El constructor de la clase
public function Prueba() {
super(_root, true);
// Creamos los botones
miBoton = new JButton(”JButton1″);
miTexto = new JTextArea(”Pulsa el botón”);
// Los colocamos
getContentPane().append(miBoton, BorderLayout.SOUTH)
getContentPane().append(miTexto,BorderLayout.CENTER)
// Controlamos el click del botón
miBoton.addEventListener(JButton.ON_PRESS, Delegate.create(this, marcarPulsacion));
}
// Función que se ejecutará al hacer click en el botón
private function marcarPulsacion(eventObj:Event):Void {
miTexto.setText(”Botón Pulsado”);
}
// Main de la clase
public static function main(Void):Void {
var myWindow:Prueba = new Prueba();
myWindow.setLocation(50, 50);
myWindow.setTitle(’Aswing Prueba..’);
myWindow.setSize(100, 100);
myWindow.show();
}
}
Una vez creada nuestra clase la guardaremos como ‘Prueba.as’ y situaremos este archivo en el directorio donde tengamos MTASC.
Ejecutaremos MTASC y le indicaremos la siguiente instrucción desde la línea de comandos :
mtasc -swf pruebando.swf -main -header 300:300:20 Prueba.as
Donde le indicaremos que nos cree ‘pruebando.swf’ con las dimensiones indicadas y siendo la clase base Prueba.as..
Bueno está ha sido mi primera prueba con Aswing, si tengo tiempo seguiré probando y publicaré lo que vaya logrando…
Cualquier duda, aclaración, comentario o sugerencia es bienvenida…
Un saludo!
…sErGiO…
ENLACES IMPRESCINDIBLES:
http://www.mtasc.org/
http://www.aswing.org/
ARTICULOS RELACIONADOS RECOMENDADOS:
http://www.zarate.tv/articulos/flash_libre_facil/
http://www.joangarnet.com/blog/archives/2004/11/compilador_para.php
5 Comments »
RSS feed for comments on this post. TrackBack URI
Leave a comment
Powered by WordPress.
Entries and comments feeds.
Valid XHTML and CSS. ^Top^
Hola,
los links externos que tienes en el texto del tutorial fallan.
Ejemplo:
http://blog.sergioalvarez.net/www.mtasc.org
http://blog.sergioalvarez.net/www.haxe.org
http://blog.sergioalvarez.net/www.aswing.org
Comment by Joan — April 16, 2006 #
Está bién el tutorial.
Muy ameno, pero el ver que ya no va ha haber soporte para futuras versiones de MTASC da que pensar que no es muy buena opción apostar por esta solución, ¿no?
Comment by Joan — April 16, 2006 #
Buen ejemplo del uso de las librerias de aswing con mtasc, muy parecido a java, quien programe en java esta nadando como pez en el agua aqui, que es lo que a mi me ocurre.
Comment by Jjava — April 20, 2006 #
Alguien ha hecho algo de aswing con Swishmax. Soy nuevo con aswing, y he creado una aplicacion con Swishmax, y necesito inyectar una clase que he creado con aswing, pero no se como unir aswing con swishmax.
Si alguien ha hecho algo de eso, agradeceria su comentario.
Gracias.
Comment by Juan — October 6, 2006 #
[...] de encontrar una entrada en el blog de sergio alvarez donde hay info sobre mtasc y un pequeño [...]
Pingback by MTASC | punkt || blog — May 17, 2007 #