Xul

[Javascript-Songbird] Manipulando nuestra musica con Javascript y Songbird

Cuando deseamos escuchar musica, y vemos que reprodutor usar, mucha gente suele utilizar Windows Media, otra gran mayoria suele usar iTunes, alguinos mas usan Winamp, que son los mas usados.

Sin embargo la fundacion Mozilla, esta desarrollado desde hace bastante tiempo una alternativa bastante interesante, que se llama Songbird, de el cual hace algunos posts les platique.

Ahora van en la version 0.4

songbird version

Tiene muchas cosas que talvez en muchos otros podremos encontrar sin embargo algo que no podemos ver como algo importante es que es “Open source”, y que ademas se puede personalizar a nuestros gusto.

Pero hay algo aun mas interesante, como esta desarrollado con XUL, se puede manipular con Javascript, claro que para esto debemos adentrarnos un poco con XUL y con SongBird.

Keisuke, Desarrollo un script el cual, valga la redundacia esta escrito en Javascript, muuy simple y sencillo que nos permite mostrar en forma de un nube de tags nuestra biblioteca.

solo basta introducir la url del script y Songbird nos pedira confirmacion para ejecutar dicho script y listo ya tenemos nuestra nube de tags.

songbird nube de tags tagcloud

El codigo de la pagina que se ejecuta es el siguiente


<html>
  <head>
    <title>TagCloud Library View</title>
    <link rel="stylesheet" href="./tagCloud.css" />
    <script type="application/javascript"
            src="./tagCloud.js">
    </script>
  </head>

  <body onload="load();" onunload="unload();">
    <div id="menu">

      <a class="genre" href="javascript:void(0);" onclick="javascript:setCloud('genre', 'genres');">Genres</a>
      <a class="artist" href="javascript:void(0);" onclick="javascript:setCloud('artistName', 'artists');">Artists</a>
      <a class="album" href="javascript:void(0);" onclick="javascript:setCloud('albumName', 'albums');">Albums</a>
      <a class="year" href="javascript:void(0);" onclick="javascript:setCloud('year', 'years');">Years</a>
    </div>
    <div id="cloud">
    </div>

  </body>
</html>

Y el contenido de el archivo tagcloud.js es el siguiente

Leer más

[Manual]Programando aplicaciones con XUL: Botones

Capitulo 2:

Bien continuemos con nuestro manual de XUL, ya sabemos como hacer un Hola mundo, en Xul, así que hagamoslo mas interesante.

Ahora vamos a trabajar con botones(recuerden que aqui no hay visual studio jaja).

Botones en XUL

Para que podamos interactuar con nuestro entorno es necesario disponer de botones, como cualquier otro lenguaje de programación, de la misma forma que HTML, tambien XUL, dispone de una serie de etiquetas para crear los elementos de las interfaces de los usuarios.

Estos botones estan basados en la mas basica de estas etiquetas, esta es llamada Plantilla:XULElem que nos servira para crear un boton.

Cada elemento de tipo Boton, tiene dos propiedades asociadas label e image, mutuamente compatibles, se pueden tener un boton con imagen y/o con etiqueta

La etiqueta Plantilla:XULElement usa la siguiente sintaxis

<button id="identificador">
 label="Aceptar"
 image="imagenes/imagen.jpg"
 disabled="true"
 accesskey="t"/>

Cabe mencionar que todos estos atributos son opcionales y aceptan los siguientes datos.

  • id:Un identificador único (dentro de la página actual) que represente de forma inequívoca al botón. Es muy útil para referirse al botón desde una hoja de estilos CSS o desde un script de código, por ejemplo. Es recomendable rellenar este atributo en todas las etiquetas que uno declare.
  • class: Este atributo se refiere a que a un boton se le puede asignar una clase, con la cual le aplicaremos cierto estilo, usando CSS, como si fuera HTML, aunque no es necesario usar una clase, para poder aplicar estilos en los botones.
  • label: Este atributo se refiere a el texto que mostrara nuestro boton, si lo dejamos en blanco, simplemente no tendra texto.
  • image: El atributo image nos indica que imagen aparecera dentro del boton, claro si deseamos usar alguna imagen, si no se le indica alguna imagen simplemente nos aparecera sin ella, tambien se le puede especifiar una imagen a un boton mediante una hoja de estilos usando list-style-image.
  • disabled: Esta opcion creo que ya todos (o casi) la conocemos, esta opcion se refiere a que si la indicamos como true, el boton estara deshabilitado (no respondera a los click’s), y si lo ponemos como false el boton estara habilitado, si no se indica, el boton siempre estara habilitado.
  • acceskey: con este atributo, le podemos indicar que reaccione a cierta tecla de atajo (o tecla de acceso directo), con la cual le pasaremos el foco, a este elemento , que en este caso es el boton.

Aqui tenemos un ejemplo, de como quedaria nuestro archivo main.xul

Leer más

[Manual]Programando aplicaciones con XUL capitulo 1

Ahora si empezaremos con lo bueno de XUL, haber hasta donde logramos llegar.

Ya sabemos que es XUL, y a pesar de servir para hacer extensiones para Firefox, Thunderbird, Songbird, etc. Nosotros lo usaremos para realizar aplicaciones de escritorio primero sencillas aprendiendo los controles y posteriormente aplicaciones mas profesionales.

Empecemos.

CREACION DE UN HOLA MUNDO EN WINDOWS (XP, no probado en vista).

Recomendacion: De preferencia no uses windows vista, ya que Xulrunner, no lo he probado en ese sistema y es probable que te de fallos, usa XP en este caso.

Bien primero necesitamos bajarnos el Xul Runner, que viene siendo algo asi como la maquina virtual de java, pero en este caso es para ejecutar aplicaciones xul.

Para bajarlo iremos a la siguiente dirección web http://developer.mozilla.org/es/docs/XULRunner, y desde ahi podemos bajarnos el XUlRunner que en este caso corresponde a la versión 1.0.8.1, version conocida como pre-version estable, esta disponibles hasta el momento 3 opciones de descarga.

Para Linux, Windows y Mac OSx, si desean las cosas mas rapidamente aqui les pongo los enlaces de descarga directa.

Descargar XulRunner para Windows: Aqui
Descargar XulRunner para Linux: Aqui
Descargar XulRunner para Mac OS X: Aqui

Bien ya que lo tenemos descargado procedemos a descomprimirlo, en mi caso lo realizare en la unidad D:

Leer más

Xul parte 2: Estructura XUL

Ahora veremos como se procesara xul por parte de Mozilla ….

Cómo se procesa XUL

En Mozilla, XUL se procesa en forma similar al procesamiento de HTML y otros tipos de contenido. Cuando el usuario escribe la URL de una página HTML en el campo de dirección del navegador, éste busca el sitio web y descarga su contenido. El motor de presentación de Mozilla toma el contenido en el formato HTML y lo transforma en un árbol de documento. Este árbol se convierte en un conjunto de objetos que pueden mostrarse en la pantalla. Los estilos CSS, imágenes y otras tecnologías son usados para controlar la presentación. El procesamiento de XUL es muy similar.

De hecho, en Mozilla, todos los tipos de documento, sin importar si son HTML, XUL o aún SVG son procesados por el mismo código. Esto significa que las mismas propiedades CSS pueden usarse para definir el estilo tanto del HTML como de XUL, y muchas de las características pueden compartirse entre ambos. Sin embargo, hay características que son específicas del HTML como son los formularios, y otras que son específicas de XUL como son los overlays (revestimientos). Ya que XUL y HTML se procesan de la misma forma, se pueden cargar desde el sistema de archivos local del usuario, desde una página web, desde una extensión del navegador o desde una aplicación XULRunner.

El contenido de fuentes remotas, como por ejemplo: http://localhost/~username/, sin importar si es HTML, XUL o cualquier otro tipo de documento, está limitado en la clase de operaciones que pueden realizar, por razones de seguridad. Por este motivo, Mozilla proporciona un método para instalar contenido en forma local y registrar los archivos instalados para que formen parte del sistema chrome. Esto permite usar una URL especial llamada la URL chrome://. Al acceder a un archivo usando la URL chrome, éstos reciben privilegios para acceder a archivos locales, preferencias, marcadores de página y ejecutar otras operaciones privilegiadas. Obviamente, las páginas web no obtienen estos privilegios, a menos que estén firmadas con un certificado digital y el usuario dé el permiso para ejecutar estas operaciones.

Este registro en el paquete chrome es la forma en la que las extensiones de Firefox pueden añadir características al navegador. Las extensiones son pequeños paquetes con archivos XUL, Javascript, hojas de estilo e imágenes empaquetados en un sólo archivo. Este archivo puede crearse usando una utilidad ZIP. Cuando el usuario descarga la extensión, ésta es instalada en su máquina. La extensión se ensambla en el navegador usando una característica especial de XUL llamada overlay (revestimiento), la cual permite que se combinen el XUL de la extensión y el XUL del navegador. Para el usuario, puede parecer que la extensión ha modificado al navegador, pero en realidad el código está separado y la extensión se puede desinstalar fácilmente.

Leer más

Xul parte 1: Introduccion

Como les comente estoy trabajando en un par de proyectos que juntos harán uno solo, estos proyectos serán aplicaciones que estarán construidas sobre xul, js css y quizas algo de python.

Por ello he empezado a leer y a hacer pruebas con xul, y para que no digan lo estoy haciendo en mi Debian Etch y mis primeros ejemplos funcionan de maravilla, sin embargo muchos diran y bueno que es xul, por ello he decidido postear este tema extraido de Tutorial de XUL:Introducción.

Esta es solo la introduccion aburrida a los pormenores y todo lo que podemos hacer con Xul, pues empecemos.

Este tutorial lo conducirá al aprendizaje de XUL (XML Lenguaje de Interfaz de Usuario) el cual es un lenguaje múltiplataforma para describir la interfaz de usuario de aplicaciones.

¿Qué es XUL y porque fue creado?

XUL (se pronuncia “sul”? y rima con “cool”?) fue creado para facilitar y acelerar el desarrollo del navegador Mozilla. Es un lenguaje XML, por lo tanto todas las características del XML están también en XUL.

La mayoría de las aplicaciones necesitan ser desarrolladas usando características de una plataforma específica, convirtiendo el desarrollo de aplicaciones múltiplataformas en una tarea costosa y que consume mucho tiempo. Esto podrá no importarle a algunas personas, pero el usuario podría querer usar la aplicación en otros dispositivos, como equipos de bolsillo.

En el pasado se desarrollaron muchas soluciones multiplataforma. Por ejemplo, Java tiene como un punto fuerte de venta la soportabilidad. XUL es un lenguaje diseñado específicamente para construir interfaces soportables.

Desarrollar una aplicación toma mucho tiempo incluso si es sólo para una plataforma. El tiempo requerido para compilar y depurar también puede ser muy largo. Con XUL, una interfaz puede ser implementada y modificada de forma fácil y rápida.

XUL tiene todas las ventajas de otros lenguajes XML. Por ejemplo, XHTML u otros lenguajes XML como MathML o SVG se pueden usar junto a él. Además, el texto que se muestra con XUL es fácilmente localizable, lo que significa que puede ser traducido a otros idiomas con poco esfuerzo. Se pueden aplicar hojas de estilo para modificar la apariencia de la interfaz de usuario (muy parecido a las funcionalidades de aspectos o temas presentes en Winamp o algunos gestores de ventanas).

Leer más

Songbird El reproductor de musica de la fundacion Mozilla.

Cada día me sorprende la cantidad de aplicaciones que surgen para Linux.

Cuando busque un buen reproductor para musica en linux, use Rhythmbox, luego use muy poco xmms, sin embargo niguno satisfacia plenemente mis necesidades; por desgracia aun uso windows,por algunas cuestiones, y tambien queria un buen reproductor, ya me habia hartado estar usando iTunes.

Asi fue como di con SongBird.

A songbird la wikipedia lo define asi.

Songbird es una alternativa de código abierto a iTunes que está actualmente en desarrollo. Está construido en la plataforma XULRunner de Mozilla. Gracias a ello, Songbird funciona en aquellos ordenadores con Windows, Mac OS X, y Linux.

El motor principal de Songbird, mig, ha revelado que Songbird utiliza el plugin del cliente VideoLAN (VLC) para la reproducción multimedia, y SQLite como motor de almacenamiento para la biblioteca multimedia.

El lanzamiento de la primera versión pública de Songbird, con número de versión 0.1, tiene el nombre código “Hilda,” y fue lanzada el 8 de febrero de 2006.

Leer más

Historico de entradas

febrero 2012
L M X J V S D
« ene    
 12345
6789101112
13141516171819
20212223242526
272829  

Ajaxman

Mi nombre es Javier, soy desarrollador web con especialización en PHP (avanzado), HTML, CSS y Javascript(Medio).

Me considero evangelizador de Kohana Framework, Mozilla Firefox y GNU/Linux Debian.

Estoy casado, y tengo dos hermosos hijos.

Todos los contenidos a menos que se exprese lo contrario estan bajo licencia Creative Commons.

Enlazanos!!

hit counters online counter