1. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
MANUAL TOOLBOOK
Capítulo 1. ¿Qué es Toolbook?
Antes de revisar Toolbook, es necesario definir el concepto:
• Herramienta de autoría o autoraje.
Es un sistema de desarrollo de aplicaciones para un entorno (Windows, Mac,
etc.) que permite construir aplicaciones multimedia; en estas herramientas los
programas generalmente se dibujan.
A una aplicación generalmente se le asocia con un libro formado por páginas o
con una pila de tarjetas. Una página o tarjeta es lo que se ve a través de una
ventana.
Asymetrix Toolbook
Toolbook es una herramienta de autoría o autoraje, que es utilizada para crear
aplicaciones multimedia en el más amplio sentido de la palabra: enciclopedias,
juegos, tutoriales, presentaciones, etc. La producción de una aplicación multimedia
es un asunto muy serio que puede durar meses con expertos trabajando en el
tema como son diseñadores, grafistas, programadores, técnicos en sonido y
vídeo, etc.
La utilización de Toolbook en el desarrollo de programas interactivos permite la
creación de aplicaciones en las que, de forma sencilla y sumamente rápida, se
tiene la posibilidad de cambiar el flujo de la información según las necesidades del
usuario, relacionar imágenes o palabras, mostrar vídeos o escuchar sonidos.
Donde encontrar ayuda
Toolbook posee un rápido sistema de ayuda en línea. Es posible encontrar
información especifica sobre cualquier tema relacionado al funcionamiento de las
herramientas de autoría, así también como amplios recursos sobre la
programación en Toolbook.
En la aplicación existen varias maneras de accesar a la ayuda de Toolbook:
1. Desde el menú “Help > Help Contents”. Eligiendo el tema deseado.
2. Haciendo clic derecho sobre el objeto y seleccionando el icono de ayuda.
3. Presionando la tecla F1 al estar situados sobre un texto.
1
2. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Es posible también, encontrar otros recursos como foros de discusión, ayuda
técnica, ejemplos, etc., desde el sitio web de Asymetrix en
http://www.asymetrix.com o http://home.click2learn.com/
Asymetrix Toolbook II Instructor
Toolbook II Instructor es uno de los muchos productos ofrecidos por
Asymetrix que permiten crear, administrar y distribuir aplicaciones
multimedia. A continuación se listan algunos:
• Toolbook Assistant
Diseñado para un uso fácil, incluye un gran conjunto de objetos para dibujo,
gráficos y objetos preprogramados con capacidades extendidas. Posee una
interfaz intuitiva que permite crear aplicaciones de manera rápida sin
programación.
• Toolbook Instructor
Diseñado para una flexible creación de aplicaciones multimedia; incluye la
capacidad de adaptar a la medida las aplicaciones creadas usando un editor
de acciones incluido y el lenguaje OpenScript, el cual brinda gran capacidad
para extender las características de una aplicación multimedia con alto
grado de interactividad.
2
3. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 2. Proyectos en Toolbook II Instructor.
Toolbook ha sido especialmente diseñado con características que permiten la
creación de aplicaciones enfocados a capacitación y educación. Es posible crear
una gran variedad de cursos con Instructor, como son lecturas, demostraciones
interactivas, visitas guiadas, simulaciones, etc.
Pero es importante señalar que no está limitado a este tipo de desarrollo. Ya que
el ambiente de autoraje de fácil manejo de Instructor permite crear también
presentaciones en línea, kioscos interactivos, catálogos y juegos.
El límite para el uso de Instructor se encuentra en la creatividad del equipo de
desarrollo. A continuación se listan algunas de las características de los tipos de
proyectos que pueden ser desarrollados con ésta herramienta.
Aplicaciones para aprendizaje en CD.
Es posible crear aplicaciones que no solo presenten información, sino que
incluyan exámenes y almacenen las respuestas, desplegar información guía para
elegir la respuesta adecuada e informar sobre el progreso de una lección.
3
4. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Kioscos interactivos.
Aplicaciones para brindar información útil al cliente, en lugares públicos, con
material interactivo que brinda información específica.
Pantallas
sensitivas,
interfaz con
elementos
de
navegación
Exámenes en línea o aplicaciones para Internet.
Creación de aplicaciones multimedia completas que puedan ser accesibles a
través de Internet.
4
5. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 3. Las partes de una aplicación en Toolbook.
La planeación de proyectos en Toolbook, incluye aspectos técnicos y detalles de
gran importancia para la correcta estructuración y organización del proyecto que
impactarán de manera importante el producto final.
Creación de una estructura de directorio organizado.
Ya sea para la distribución de una simple aplicación en línea o la creación de una
robusta aplicación multimedia, es sumamente útil organizar los archivos.
En algunos de los ejemplo que se mostrarán a lo largo de este tutorial, se hace
referencia a aplicaciones compuestas de uno o más archivos llamados “libros”, los
cuales estarán ubicados en un “directorio central de libros”; además de contener
uno o más subdirectorios para archivos de sonido, imágenes o animaciones.
Por ejemplo, supongamos una aplicación que sólo contiene un libro. La estructura
de directorio sugerida sería la siguiente:
Libro de
video para la Toolbook
aplicación
Supongamos una aplicación más compleja, donde tenemos un libro principal
acerca de las lenguas Romances, y varios libros en francés, español, etc. Un
estructuración sería organizar los archivos en varios subdirectorios de libros bajo
un directorio central, por ejemplo:
5
6. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Construyendo una aplicación
Al construir una aplicación en Toolbook se comienza con la creación de un libro, al
cual, se le agrega el contenido: texto, objetos interactivos, gráficos, esquemas de
navegación, etc.
Es posible controlar la apariencia y comportamiento de los libros, páginas y
objetos modificando sus propiedades.
Nivel de Autor y Lector
Las aplicaciones que el desarrollador crea en Toolbook, se hacen en el Author
Level (nivel de autor).
Los usuarios interactúan en el Reader Level (nivel de lector).
Nivel de Autor Nivel de Lector
6
7. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Libros y páginas
Una aplicación creada con Toolbook consiste en uno o más archivos llamados
libros. Es posible ordenar los libros en forma secuencial de manera que el usuario
accese a cada uno en orden. Alternativamente, es posible navegar entre libros
agrupados de acuerdo a las necesidades; por ejemplo, un libro podría ser un
glosario de otro libro el cual contenga los contenidos principales.
En el libro, cada pantalla es considerada como una página. La página contiene los
elementos que determinan el comportamiento y apariencia de la aplicación –
botones, gráficos, texto, reproductores multimedios. Las páginas deben estar
distribuidas de acuerdo a las necesidades de la aplicación al igual que el esquema
de navegación entre ellas.
Un background (fondo) es la base de una página. Varias páginas pueden
compartir un background. Colocar objetos en el background permite mantener una
estructura en un conjunto de páginas.
Background Páginas que comparten un background
Ventanas (viewers).
La ventana principal (main window) despliega una sóla página. Pero además, es
posible crear páginas que sean desplegadas en ventanas que aparezcan en la
ventana principal. Estas ventanas son los viewers, y pueden ser pequeños en
7
8. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
tamaño, como una ventana pop-up. Por ejemplo, es posible utilizar la ventana
principal para desplegar el contenido, y un viewer para desplegar definiciones del
glosario.
Dos páginas en diferentes ventanas.
Página
principal
Viewer
Objetos y propiedades.
Todos los elementos visuales de la aplicación son sus objetos.
Los objetos se crean usando la paleta de objetos y dibujándolos directamente en
la página.
Cada objeto contiene un conjunto de propiedades que definen su apariencia y
comportamiento. Un campo de texto, por ejemplo, tiene propiedades como color
de relleno, ancho y alto, que determinan su tamaño y color; también posee otras
propiedades como alineación y tipo de campo que definen cómo se desplegará el
texto y si se permitirá al usuario introducir datos.
8
9. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Las propiedades definen la apariencia y comportamiento de los objetos
Campo
de texto
Propiedades
Algunos objetos tienen propiedades extendidas que determinan capacidades
sofisticadas y que sólo pueden ser modificadas mediante código en OpenScript.
Uso de recursos.
Se puede determinar la interfaz de la aplicación importando recursos como
cursores, gráficos, fuentes, menús y paletas de color. Por ejemplo, es posible
importar:
• Cursores, que sean desplegados bajo ciertas circunstancias para indicar al
usuario sobre algún proceso en marcha, o indicar alguna capacidad de
cierta área de la aplicación.
• Iconos o mapas de bits para ser usados como gráficos o botones.
• Una o más paletas de color para cambiar los conjuntos de color.
9
10. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Estos recursos deberán ser previamente diseñados, o elaborados con otros
programas, y deberán estar listos para ser importados por Toolbook al momento
de integrar la aplicación.
Añadiendo recursos a la interfaz
Iconos para hacer botones
10
11. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 4. El ambiente de autoraje en Toolbook.
Aprendiendo la interfaz de Toolbook
Diseñadas para un uso sencillo, las herramientas e interfaz visual de Toolbook
permiten enfocarse en las importantes tareas de presentar su contenido. Toolbook
tiene dos niveles de trabajo: nivel autoraje (author) y lectura (reader). En nivel
author, se pueden construir aplicaciones usando herramientas de desarrollo, como
paletas y toolbar. Con estas herramientas, se pueden construir libros, crear y
modificar objetos en páginas, y agregar comportamiento interactivo a las
aplicaciones.
En nivel reader, se pueden probar las aplicaciones para ver como las visualizará
el usuario. Los usuarios pueden correr la aplicación en nivel reader donde pueden
navegar entre las páginas, responder a preguntas de objetos, y lanzar eventos
(ejecutar alguna acción).
Para cambiar del nivel author al nivel reader o viceversa, se debe presionar F3, o
seleccionar Author o Reader del menu “view.”
Trabajando en nivel author.
Al iniciar toolbook, después de elegir el tipo de archivo a abrir, se presenta una
ventana que es el área de trabajo del nivel author. En este nivel, se pueden usar
las herramientas como la barra de menú (menu bar), barras de herramientas
(toolbar), barra de estado (status bar), reglas (rulers) y paletas (palettes) para
construir la aplicación.
11
12. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Las siguientes herramientas están disponibles en nivel author.
Menu bar: Permite ejecutar comandos y accesar a las cajas de diálogo.
Toolbar: Provee una colección de botones que se pueden usar como
Accesos Directos para los comandos más usuales.
Status bar: Muestra el nombre de los objetos, texto de ayuda para
comandos del menú, y la posición actual del mouse. El lado derecho de la
barra le permite seleccionar rápidamente la página actual, y contiene
herramientas que se pueden usar para navegar entre páginas.
Palettes: Contiene una colección de herramientas o botones que se usan
para dibujar nuevos objetos o cambiar su forma, color o alguna otra
propiedad.
Rulers: Le muestra el tamaño exacto y la posición de los objetos.
Rigth-click menu: Aparece cuando hace clic derecho sobre algún objeto y
permite accesar rápidamente a propiedades y cajas de diálogo.
Se pueden mostrar y ocultar cada una de estas herramientas y personalizar su
apariencia.
Trabajando con la barra de herramientas.
La barra de herramientas le permite accesar rápidamente a los comandos más
usuales del menú y a herramientas de edición. Algunas de las opciones de la
barra de herramientas contienen dos funciones, una por default (activa) y otra
12
13. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
oculta (desactiva). Para desplegar la función oculta, debe presionar la tecla
[CTRL].
Barra de herramientas de comandos, y sus funciones:
Abre otra aplicación de Toolbook
Graba su aplicación.
Deshace la última acción.
Duplica el objeto seleccionado.
Muestra u oculta el browser (visualizador) de objetos
Muestra u oculta la ventana de comandos.
Muestra u oculta la paleta de herramientas.
Muestra u oculta la paleta de líneas.
Muestra u oculta la paleta de patrones.
Muestra u oculta la paleta de colores.
Abre la ventana de diálogo del manejador de clip’s.
Abre la caja de diálogo de los viewers.
Abre la caja de diálogo de propiedades.
Abre el editor de scrips (códigos).
Agrupa o desagrupa objetos.
Envía un grupo / objeto hacia el frente.
Envía un grupo / objeto al fondo.
Trabajando con la barra de estado (status bar).
La barra de estado, la cual despliega información sobre la página actual, esta
formada por:
Área de título: Muestra ayuda para comandos del menú, el texto de ayuda
para la barra de herramientas o para los botones de las paletas de
herramientas, o el nombre del objeto seleccionado, dependiendo de la
posición del puntero. Además, también se muestran mensajes de progreso
cuando un proceso se esta realizando.
Indicador de la posición del mouse: Despliega la posición del puntero en
unidades de página.
Indicador de página seleccionada. Muestra que se está trabajando en
primer plano. Se puede hacer clic en esta área para seleccionar la página
completa.
Botones de control de navegación: Le permite moverse a la página
siguiente o anterior del libro.
13
14. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Caja de estado: Despliega el número de la página actual y el número total
de páginas, o la palabra “background” (fondo), si se encuentra trabajando
en el background.
Trabajando con paletas:
Una paleta es una colección de herramientas o botones que se usan para dibujar
nuevos objetos, o para establecer valores que modifican objetos existentes. Por
ejemplo, se puede seleccionar el grosor de una línea en la paleta de líneas.
Toolbook incluye seis paletas, las cuales son descritas a continuación.
Herramientas: Para crear nuevos objetos en una página.
Líneas: Para determinar anchura o borde alrededor de un objeto.
Terminación de líneas: Agrega flechas al inicio o fin de una línea.
Patrones: Determina un patrón o diseño para llenar un objeto.
Color: Determina el color de un objeto o texto.
Polígono: Determina el número de lados, de 3 a 99 del siguiente
polígono a dibujar.
Paletas de Toolbook
14
15. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Al accesar a toolbook sólo se muestra la paleta de herramientas, pero se pueden
mostrar tantas paletas como se quieran, ocultarlas para hacer más espacio o
moverlas a donde se necesiten.
15
16. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 5. Trabajando con un nuevo libro.
La aplicación que se crea con Toolbook es llamada Libro (book), Un libro está
compuesto por páginas que contienen objetos.
1.- Icono que identifica Toolbook.
2.- Ventana de inicio.
3. Área de trabajo.
16
17. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
4. Ventana de propiedades.
17
18. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 6. Páginas y backgrounds.
Las páginas y los backgrounds (fondos) son los bloques de construcción básicos
de un libro en toolbook.
Un libro de Toolbook se puede comparar con un libro físico, donde la agrupación
de páginas en un mismo background, formarían un Capítulo.
Cada página (pantalla) esta contenida en un background, y ese mismo
background puede contener varias páginas. Los objetos en un background
aparecen en todas las páginas que comparten ese fondo (a menos que esté
oculto). Poner objetos en el fondo puede ahorrar muchas horas de trabajo, facilitar
consistencia entre las páginas, y evitar problemas en requisitos de la memoria y
de almacenamiento.
Background
El background en toolbook, es un objeto, y como tal tiene propiedades y puede
responder a eventos como cualquier otro objeto de este sistema, pero tiene una
propiedad especial: es el contenedor mas grande después del libro; esto quiere
decir que puede tener objetos dentro de el, como son páginas, grupos, botones,
etc.
Como se mencionó anteriormente, este objeto funciona como si fueran los
capítulos de un libro, donde cada Capítulo cuenta con distintos elementos, como
colores, figuras, etc, así mismo cada background puede contar con distintos
elementos y agrupar una serie de páginas distintas en el “foreground” (capa mas
alta) con ese fondo en común.
Páginas
Las páginas son elementos principales de un libro, donde se encuentra toda la
información, al igual que en un libro físico, éstas se encuentran dentro de un
background que puede actuar como capítulos como se vio anteriormente.
cuando un libro es creado, automáticamente nos crea un background y dentro
de éste, la página 1, esta página al igual que otros objetos tiene propiedades,
recibe eventos, etc, y al igual que el background, es un contenedor que puede
tener botones, grupos, fields, en fin, toda la serie de objetos existentes.
Para cambiar de Background (fondo), a Foreground (Página) se utiliza la tecla
F4, o también se puede presionar el botón background.
18
20. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 7. El objeto: propiedades y eventos.
Acerca de los objetos
Todos los elementos visuales de la aplicación –botones, campos, gráficos,
viewers, inclusive las páginas y backgrounds son objetos. Una aplicación se
construye creando objetos, especificando sus propiedades, y definiendo como
trabajarán juntos. Toolbook ofrece una variedad de objetos con funciones
incorporadas para un autoraje fácil y rápido. Pero no se encuentra limitado a estas
características preprogramadas. Además se pueden cambiar de posición, agrupar
o cambiar las propiedades de cualquier objeto para afectar su apariencia y
comportamiento.
Creando objetos usando la paleta de herramientas.
Se pueden dibujar objetos usando la paleta de herramientas. Cuando se dibuja un
objeto, su forma general y tipo son determinados por la herramienta que se
seleccione, sus proporciones y tamaño final son determinados por la dirección y
anchura con que mueva el puntero. La paleta de herramientas se encuentra sólo
disponible en modo author, y se puede redimensionar y colocar en cualquier
posición.
Seleccionando objetos
Antes de cambiar un objeto o definir sus propiedades, se debe seleccionar.
Cuando se selecciona un objeto, Toolbook despliega indicadores alrededor del
objeto, se pueden usar estos indicadores para alinear y redimensionar los objetos.
Se puede seleccionar un objeto o múltiples objetos. Cuando se seleccionan varios
objetos, el comando o acción del mouse afectará a todos los objetos
seleccionados.
20
21. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Seleccionando objetos
Para.... Se debe....
Seleccionar un objeto Hacer clic sobre el objeto.
SHIFT + clic sobre cada objeto que se
quiere seleccionar, o arrastrar el
Seleccionar múltiples objetos
puntero para seleccionar todos los
objetos deseados.
Ir a la página o background y
Seleccionar todos los objetos
seleccionar Select All del menú Edit.
Hacer clic en cualquier lugar de la
Cancelar una selección
página fuera del objeto.
Agregar o remover objetos. SHIFT + clic sobre el objeto que se
desea seleccionar o remover.
Especificando las propiedades de los objetos.
Toolbook provee de una gran variedad de objetos que se pueden usar para crear
aplicaciones interactivas rápida y fácilmente. Además se pueden especificar
propiedades que determinen la apariencia, comportamiento y capacidades
interactivas.
Comprendiendo las propiedades y propiedades extendidas.
Todos los objetos de Toolbook (páginas, backgrounds, campos, botones,
hotwords, etc.) tienen propiedades básicas que definen su apariencia y
comportamiento. Mientras Toolbook determina ciertas propiedades, tales como el
ID, la mayoría pueden ser especificadas.
Usando la caja de diálogo de propiedades.
La caja de diálogo de las propiedades, permite ver y editar las propiedades de los
objetos. Esta característica permite acceder fácilmente a otras cajas de diálogo
donde se pueden modificar los objetos. La caja de diálogo de las propiedades es
muy versátil debido a que las propiedades disponibles cambian dinámicamente de
acuerdo al objeto seleccionado. Se pueden seleccionar varios objetos en el libro
usando el mouse, y las propiedades cambiarán para reflejar las propiedades
disponibles para el objeto seleccionado.
21
22. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Para modificar las propiedades de un objeto
• Se debe seleccionar el objeto.
• Hacer clic sobre el botón propiedades de la barra de herramientas.
Aparecerá una ventana similar a la siguiente, donde puede modificar las
propiedades deseadas.
Usando el menú del botón derecho
Se pueden fijar las propiedades de un objeto
usando el menú del botón derecho. Este
contiene comandos específicos para el objeto
seleccionado; estos comandos ofrecen una
vía rápida para fijar propiedades que además
se pueden modificar en la caja de diálogo de
propiedades. Por ejemplo para nombrar un
botón simplemente haga clic con el botón
derecho y seleccione name de el menú que
aparecerá. Se abrirá una caja donde se podrá
escribir el nombre deseado.
22
23. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Además, la barra de herramientas de
este menú, permite accesar a otras
propiedades, llamadas comúnmente
propiedades extendidas, a través del
navegador de propiedades (property
browser).
En esta caja se puede también
modificar el valor para cada propiedad.
Propiedades comunes.
Las propiedades comunes a todo objeto se muestran en la siguiente tabla:
Propiedad.. Descripción...
Término usado para indicar el número
de identificación de cualquier objeto o
recurso. Se puede usar esta propiedad
Id para referirse a un objeto.
Esta propiedad es definida por Toolbook
al momento de crear el objeto o recurso.
Especifica una cadena de referencia a
un objeto (excepto para objetos del
sistema y recursos). Se puede hacer
referencia a un objeto usando esta
propiedad.
Name
Para todos los objetos, excepto el libro,
el valor es una cadena de hasta 32
caracteres. El valor por omisión es null.
23
24. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Propiedad específica para botones,
combo boxes, campos, campos de
registro (record fields), gráficos, objetos,
grupos, ventanas y paletas, así como
viewers.
Position
Es una lista de dos números que
especifican la posición del objeto en la
página. Excepto para ventanas y
paletas, la posición está dada en
unidades de página.
Especifica los límites y tamaño de un
objeto.
Es una lista de cuatro números, donde
bounds los dos primeros valores especifican las
coordenadas de la esquina superior
izquierda, y los dos últimos, indican la
posición de la esquina inferior derecha.
Propiedad que especifica los objetos
sobre los cuales el objeto seleccionado
se encuentra, en la jerarquía. Esta
propiedad no puede ser modificada.
Para un objeto en un grupo, el parent es
Parent
el grupo. Para un objeto no agrupado, el
parent es la página o background donde
se encuentra, para la página el parent
es el background, para el background el
parent es el libro, en pocas palabras, el
parent es el padre de un objeto.
Una serie de expresiones que definen el
comportamiento del objeto, las cuales
están escritas en OpenScript y se
Script encuentran divididas en partes llamadas
manejadores (handlers), los cuales
definen respuestas a determinados
eventos.
Es un script almacenado en el libro
como recurso. Permite asignar el mismo
Shared Script
comportamiento a todos los objetos que
compartan este script.
24
25. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Eventos
Los eventos son acciones en respuesta a alguna acción realizada, ya sea por el
usuario, o por algún objeto. Toolbook envía automáticamente mensajes en
respuesta a un evento, tales como buttonclick, enterpage, newpage, etc. Por
ejemplo, toolbook envía un mensaje Buttonclick cuando se presiona el botón
derecho del mouse, y envía un menu-event, cuando se selecciona una opción del
menú. Toolbook envía diferentes tipos de mensajes, dependiendo de qué acción
se realice. Además se puede emular un evento, enviando el mensaje
explícitamente con el comando send. Por ejemplo, se puede causar que un botón
responda como si se hubiera hecho clic sobre él, ejecutando el comando que se
muestra a continuación:
Send buttonclick to button “nombre_boton”
Mensajes mas usuales
Descripción
Mensaje
Enviado en nivel Reader cuando el
botón izquierdo del mouse es
presionado y soltado. La respuesta por
Buttonclick default de este mensaje es hacer nada.
Si el usuario arrastra el cursor fuera de
los límites de el objeto, el mensaje no
es enviado.
Mensaje enviado cuando el botón del
ButtonDown
mouse es presionado.
Mensaje enviado cuando el botón
izquierdo del mouse es liberado. Los
ButtonUp mensajes recibidos, cuando el usuario
hace click, llevan el siguiente orden:
ButtonDown, ButtonUp, ButtonClick
Este mensaje es enviado repetidamente
ButtonStillDown mientras el botón izquierdo del mouse
se mantenga presionado.
Enviado cuando el cursor del mouse
MouseEnter
entra a los límites del objeto
Enviado cuando el cursor del mouse
MouseLeave
sale de los límites del objeto.
EnterPage Enviado cuando entra a una página.
LeavePage Enviado cuando se sale de una página.
25
26. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 8. Elementos básicos de la interfaz
(Botones, menús, viewers)
Los viewers son ventanas que despliegan páginas. La ventana principal, o main
window de ToolBook es un viewer, al igual que las ventanas tipo pop-up, las
paletas de herramientas, cajas de diálogo, y otras herramientas visuales que
enriquecen tanto las aplicaciones como el ambiente de autoraje.
Existe una variedad de estilos de viewers, cada uno con características que los
distinguen y que pueden ser editadas para modificar su apariencia y funcionalidad.
Los viewers tipo pop-up no tienen
bordes ni encabezado.
Las paletas (palettes) tienen bordes
delgados, una barra de encabezado y
un menú de sistema.
Los viewers pueden tener barras de
scroll, bordes resizables y barras de
encabezado con texto.
Las cajas de diálogo tienen bordes que
no pueden ser resizables, y no tienen
botones para maximizar o minimizar.
Comportamiento de los viewers
Un viewer puede aparecer como pop-up, que pueden flotar en cualquier parte
de la pantalla, o como child, que aparecen dentro de otra ventana.
26
27. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Sin importar si se trata de un viewer tipo pop-up o child, siempre es propiedad de
otra ventana, llamada la ventana padre (parent). Esta ventana determina el
comportamiento del viewer. Por ejemplo, cuando se minimiza la ventana principal
de ToolBook, todas las paletas abiertas se minimizan también, porque la ventana
principal es su ventana padre.
Diferencias entre pop-up y child viewers
Pop-up Child
Flotan en la parte superior de su Se acortan por la ventanas padre.
ventana padre.
Pueden contener menús No pueden contener menús
Aparecen como iconos en el escritorio Aparecen como iconos en la ventana
de Windows cuando están padre cuando están minimizados.
minimizados.
Se puede crear un viewer de manera fácil utilizando plantillas, las cuales incluyen
las propiedades para cada tipo de viewer.
Se selecciona la opción Viewers
del menú.
27
28. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Enseguida se muestra la ventana
de Viewers, donde aparece el
Main window, que es el viewer
por default.
Se elige New.
Y después Use Template. En el
ejemplo aparece seleccionada la
opción de crear nueva página y
background (Create New Page
and Background). Se elige un
viewer de tipo Read-only Popup
que servirá para desplegar una
definición de glosario.
Enseguida se abre el viewer, y se
pueden modificar sus
propiedades y dar un nombre
para referenciarlo mediante
código.
28
29. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
En este ejemplo, se muestra un
texto en un field, con una palabra
a modo de hotword (Palabra que
actúa similar a un botón, pero
dentro de un texto, y se crea
seleccionando el texto, y
presionando en el menú “Text >
Create Hotword” – Capítulo 9)
que mostrará la definición de la
misma.
El código para el hotword es el
siguiente:
to handle buttonClick
text of field quot;definicionquot; of page quot;ventanaquot; = quot;Es la enfermedad que
resulta de una ingesta alimentaria inadecuada.quot;
show viewer quot;ventanaquot;
end
El resultado es el siguiente. El
viewer aparece en pantalla, y
desaparecerá al hacer clic sobre
él, ya que esta es una de las
propiedades de este tipo de
viewers.
Uno de los objetos esenciales en cualquier aplicación de ToolBook, por básica que
ésta sea, es el button, o botón. Existen varios tipos de botones: push button, radio
button y radio button 3D. Se verá el funcionamiento del más usual, el pushButton.
Para agregar un botón a la aplicación,
se elige la herramienta de la barra, y
se dibuja en el área de trabajo.
29
30. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Con el botón derecho del mouse se
visualizan las propiedades para
modificar la apariencia y
comportamiento del botón.
Éste puede tener un Caption, o
encabezado, un tipo y tamaño de
carácter, o character; un color de
fondo y de borde, un estilo de borde, y
lo que más interesa para darle la
apariencia deseada: gráficos para
cada estado del botón.
El push Button puede tener 4 estados,
para los cuales podrá tener gráficas:
Normal Graphic. Aplica una gráfica al
estado normal.
Invert Graphic. Aplica un gráfico al
estado invertido (cuando el botón haya
sido presionado).
Disabled Graphic. Aplica un gráfico al
estado deshabilitado (Cuando el botón
no puede ser presionado).
Checked Graphic. Aplica un gráfico al
estado checked de un check box o de
un radio button cuando ha sido
seleccionado.
Las gráficas se elaboran con alguna
herramienta de diseño.
30
31. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Una vez delimitado el botón se
modifican sus propiedades de manera
que se le quiten todas las propiedades
default de ToolBook para poder
agregarle las gráficas: Sin encabezado
ni estilo de borde.
Se seleccionan las imágenes para
cada estado, y finalmente se ajusta el
tamaño del botón.
Para hacer que el botón utilice las
gráficas asignadas, se escribe un
código con dos eventos del mouse:
mouseEnter y mouseLeave.
to handle mouseEnter
enabled of self = true
end
to handle mouseLeave
enabled of self = false
end
Esto es, cuando el puntero del mouse
entre al área del botón, éste se
activará, y cuando salga, se
desactivará. De esta manera, el botón
tendrá interactividad, y se le podrá
agregar más código para que realice
31
32. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
otras actividades.
Se puede utilizar este tipo de botones para hacer menús y cualquier tipo de
navegación.
32
33. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 9. Manejo de texto (Fields y recordfields, hotwords)
Para incluir texto en una aplicación, se requiere utilizar fields o recordfields.
Field
Un objeto de este tipo sirve para
contener texto, y puede ser creado
utilizando alguna de estas
herramientas en la barra.
Como todos los objetos en
ToolBook, los fields tienen
propiedades que los distinguen.
Las más características se
explican a continuación:
• Field type: Indica la manera en
que las líneas se van a
acomodar en el field, es decir,
si el salto de línea se va a
determinar automáticamente
(word wrap), o si hay que
presionar la tecla Enter para
pasar al siguiente renglón (no
word wrap), si se va a permitir
escribir sólo en una línea
(single line), etc.
• Border style: Especifica el tipo
de borde, puede ser con scroll,
rectangular, con sombra, etc.
• Character: Especifica el tipo de
carácter, tamaño y atributos del
texto en el field.
33
34. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
• Paragraph: Indica las
características del párrafo en el
field: alineación, indentación,
espaciado, etc.
• Activate scripts: Si está
activado, indica que no será
posible editar el field en modo
Reader, sólo en Author. Si no,
el usuario podrá introducir texto
(en modo Reader).
Los recordfields son un tipo de field creados en el background que puede contener
texto diferente en cada página. Tienen las mismas propiedades de los field.
Además del texto común, los fields y recordFields pueden contener hotwords o
ligas, que se forman de una o más palabras, y que pueden tener su propio código
e identificador, y pueden responder a eventos del teclado y el mouse. Los
hotwords pueden tener color, ser subrayadas o tener un marco alrededor.
En el siguiente field se crea un
hotword para la palabra “esqueleto”.
Primeramente se marca la palabra, y
en el menú Text se elige la opción
Create Hotword.
34
35. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Ahora la palabra “esqueleto” aparece
de color rojo, y si se visualizan sus
propiedades se puede observar que
ToolBook ya lo reconoció como
hotword y le asignó un identificador (id
8); a este hotword se le puede dar un
nombre y escribir un código para que
realice cualquier acción que se desee.
Por ejemplo, podría responder a un
bottonClick mostrando una imagen del
esqueleto.
Y el resultado sería el siguiente.
35
36. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 10. Animación.
ToolBook provee una herramienta para manejar animación básica de objetos,
mediante la creación de paths (rutas) que servirán para simular movimiento y
acción.
Por ejemplo, para crear una animación
sencilla donde la lupa se mueva a lo
largo de la palabra “Búsquedas”,
primeramente se debe seleccionar el
objeto a animar.
En el menú Object, se selecciona la
opción Path Animation (ruta de la
animación)..
En el Animation Editor (editor de
animación), se traza la ruta que va a
seguir el objeto.
Se pueden agregar vértices para hacer
una ruta más elaborada.
36
37. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Se pueden cambiar las opciones de la
animación, como la duración y los
pasos por segundo, o si se desea que
la animación se repita más de una vez.
Una vez creado el path, se puede
reproducir en el Animator Editor, o bien
mediante código, como se verá a
continuación.
Al terminar de editar el path animation,
éste se graba como una animación del
objeto, y ToolBook le da un nombre
automáticamente.
Se empieza por enviar un mensaje al objeto cuya animación se quiere reproducir.
ToolBook envía el mensaje para mover el objeto a lo largo del path y detiene la
animación cuando termina.
Ejemplo
37
38. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
send playAnimation 1, this page, true to paintobject “lupa”
Las características del mensaje playAnimation son las siguientes:
Sintaxis
playAnimation <animNumber>[,<notifyObject>[,<wait>]]
Parámetros
<animNumber>
El número de animación del objeto que se quiere reproducir.
<notifyObject>
Un objeto al cual enviar el mensaje doneAnimatingNotify cuando la animación del
objeto ha terminado de reproducirse.
<wait>
Si es TRUE, especifica que la animación debe completarse antes de
regresar el control al manejador que envió el mensaje. Si es FALSE o NULL, la
animación comienza y el control regresa al manejador.
38
39. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 11. Dibujo.
ToolBook provee herramientas básicas para dibujo de rectángulos, elipses,
polígonos irregulares y arcos. Éstos, al igual que los demás objetos de
ToolBook, tienen sus propiedades como: color de fondo, de borde, grosor y
estilo de línea, nombre, script, etc.
En el ejemplo se dibujaron unos controles de video sencillos con las
herramientas de dibujo y se modificaron sus propiedades
39
40. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 12. Diagramas de flujo.
Conceptos básicos.
Antes de conocer y realizar diagramas de flujo, es necesario conocer que es un
algoritmo, y las fases del análisis de un problema para su correcta traducción en
un código programado.
Un algoritmo es un método para resolver un problema mediante un número de
pasos definidos, precisos y finitos.
Preciso. Porque indica el orden de realización de cada paso.
Definido. Si se sigue n veces se debe obtener el mismo resultado cada vez.
Finito. Tiene fin. Un número determinado de pasos.
Análisis del problema.
Se requiere de una clara definición donde se contemple exactamente lo que debe
realizar el programa y el resultado que deberá entregar.
REQUISITOS QUE SE DEBEN DE SEGUIR EN EL ANÁLISIS
RESOLUCIÓN
DEL
PROBLEMA
ANÁLISIS DEL DISEÑO DEL RESOLUCIÓN
PROBLEMA ALGORITMO DEL PROBLEMA
40
41. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Diagrama de flujo.
Un diagrama de flujo, es una representación grafica de un algoritmo. Los símbolos
utilizados han sido normalizados por el ANSI; los símbolos mas utilizados son los
siguientes:
PROCESO ENTRADAS
SI
DESICION
NO
INICIO Y/O FIN
SALIDA
Los diagramas de flujo, son útiles para simplificar la manera de entender los
algoritmos. A continuación se muestra el ejemplo de un diagrama de flujo que
muestra el algoritmo para calcular la sumatoria de dos números:
INICIO
A, B
C=A+B
C
FIN
41
42. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 13. Pseudocodigo.
El pseudocódigo al igual que los diagramas de flujo, es una herramienta de
programación en donde las instrucciones se escriben en palabras similares al
inglés o español, que facilitan tanto la lectura como la escritura de programas.
En esencia, el pseudocódigo se puede definir como un lenguaje de
especificaciones de algoritmos.
Un ejemplo de un pseudocódigo que imprime los números del 1 al 100 se muestra
a continuación:
Empieza
Contador=1
Repite
Imprime contador
Contador=contador+1
Hasta que contador=101
Terminar
Al escribir pseudocódigo, es recomendable utilizar diferentes niveles de sangrado,
en los cuales puedan ser identificados bloques de código repetitivos o
jerárquicamente ordenados.
Es útil escribir pseudocódigo ya que facilita las labores del equipo de desarrollo, ya
que no depende de algún lenguaje específico y puede ser adaptado a la sintaxis
de cada lenguaje en particular.
42
43. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 14. Manejo de eventos.
Toolbook responde a los mensajes generalmente por eventos. Por ejemplo, la
respuesta a un mensaje enviado elige una opción del menú, es mostrar un cuadro
de diálogo o ejecutar determinadas acciones.
Para muchos eventos, es posible controlar la respuesta que Toolbook generará; si
se requiere manejar la respuesta del objeto, entonces se necesitará crear un
manejador.
Un manejador (handler) es una serie de declaraciones de OpenScript, que definen
la respuesta a determinado mensaje; por ejemplo, este manejador define como un
objeto responderá cuando un usuario haga clic sobre el mismo:
To handle buttonClick
Request “Presionaste el botón!!!!”
End buttonClick
Los manejadores son parte de las propiedades script del objeto. Un script puede
contener cualquier número de manejadores, cada uno respondiendo a un mensaje
diferente.
Cualquier objeto en Toolbook, incluyendo libros, páginas y backgrounds, pueden
tener un script. Para crear un script se utiliza el Script Editor, el cual se puede
obtener de la misma forma en que se obtienen las propiedades del objeto.
43
44. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Para crear un manejador simple:
1. En un libro nuevo de Toolbook, se crea un botón en una página.
2. Se despliega el Script Editor, haciendo clic derecho sobre el botón y
seleccionando el icono de script.
Icono de
script del
objeto
44
45. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
3. Se introduce el siguiente script como se muestra:
4. Se presiona Control-S y se prueba nuestro script en el Reader Level (nivel de
lectura).
Jerarquía de mensajes.
Al programar en toolbook se debe tener en cuenta la jerarquía de los mensajes.
Cuando se realiza un evento ( movimiento del mouse, pulsado de tecla, etc.) en el
libro, inmediatamente es detectado por el sistema. Al hacer clic sobre un objeto,
éste recibe un mensaje, si no tiene un manejador para el mensaje, este pasará a
la siguiente instancia, que es el padre o contenedor del objeto y así sucesivamente
hasta encontrar un manejador para este mensaje. La búsqueda es similar a como
se muestra en el siguiente diagrama.
45
46. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Sistema de
Toolbook Sistema del libro
Viewer
libro
Background
Página
Mensaje
Grupo
Objeto
Sin embargo, si es necesario que un mensaje no se detenga en un manejador
determinado, se puede forzar por medio de la instrucción forward la cual deja
pasar el mensaje hasta el siguiente objeto donde encuentre un manejador para
ese mensaje, es útil conocerlo, ya que ayuda a la simplificación de código usando
códigos compartidos o SharedScripts, o códigos generales para grupos de
botones u objetos.
46
47. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 15. Variables y otros contenedores.
Usando variables.
Una variable es un contenedor, el cual se define en un script para almacenar datos
temporales. Al usar una variable, los datos almacenados en ella cambian cuando
se ejecuta el script, por ejemplo:
to handle buttonClick
vNacimientoYear = text of field quot;yearquot; - - Almacena una propiedad en una
variable
vEsteYear = quot;99quot; –Almacena un valor literal
vEdad = vEsteYear - vNacimientoYear –Almacena un resultado
request quot;Tienes quot; && vEdad && quot; años cumplidos.quot;
end
Las variables en OpenScript son semejante a las variables de otros lenguajes de
programación, pero tienen las siguientes excepciones:
• Se pueden declarar variables con o sin un tipo definido.
• Una variable sin un tipo definido, puede almacenar tipos numéricos, lógicos,
cadenas u otros valores como fecha u hora.
• Exceptuando los arreglos o vectores, no se necesitan declarar variables
locales antes de asignarles un valor.
• Es posible declarar variables de tipo global o local.
Lineamientos para nombrar variables.
Cuando se nombra a una variable, el nombre:
• Debe comenzar con una letra o el símbolo @ como prefijo.
• Puede contener solamente caracteres alfa numéricos
• No puede utilizar una palabra clave de OpenScript (por ejemplo request
o fillColor)
OpenScript no distingue entre mayúsculas y minúsculas; variables como Valor y
valor, son iguales.
Asignando valores a variables.
Usa set, put, o un signo de igual (=) para asignar el valor a una variable; estos
comandos tienen el mismo efecto.
47
48. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Si el valor es un texto y tiene espacios, se debe encerrar el texto entre comillas.
Por ejemplo:
primero = text of field “lugar” -- La variable primero toma el valor del field “lugar”
set primero to “Juan Perez” -- La variable primero toma el valor “Juan Perez” literalmente
put (text of field “lugar”) into primero – El field “lugar” la variable primero toma el valor del
field
Variables locales y globales.
Es posible usar variables locales y globales en los manejadores. Una variable local
mantiene su valor sólo durante la duración del manejador. Una variable mantiene
su valor durante la duración de la instancia de Toolbook. Las variables globales se
utilizan cuando se requiere mantener información disponible en más de un
manejador –por ejemplo, el nombre de un usuario, la ultima tecla presionada, el
último valor o propiedad previamente cambiado, etc.-.
Es necesario declarar variables globales en cada manejador o función que se
necesiten usar.
Creando variables locales.
No es necesario declarar variables locales; cuando se asigna el primer valor a una
variable, Toolbook declara e inicializa la variable. Existe la declaración local para
declarar variables locales, pero es sobre todo utilizada parta asignar tipos de datos
a las variables.
Tip. Para compartir variables locales entre manejadores, se requiere pasarlas como
parametros.
Creando variables globales.
Para crear una variable global, es necesario utilizar la declaración system. Por
ejemplo, el siguiente manejador para enterPage (evento que se genera de manera
automática al ingresar a una página), utiliza una variable global para determinar si
el usuario está navegando a una página por primera vez.
to handle enterPage
system svFirstTime –Declara una variable global
if svFirstTime = null then --Null si es la primera vez
vWelcomeText = quot;Bienvenido al tutorialquot;
text of field quot;Bannerquot; = vWelcomeText
svFirstTime = false
end if
forward
48
49. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
end enterPage
Para determinar que variables globales, han sido declaradas, se puede obtener el
valor de la propiedad sysSystemVariables, por ejemplo:
-- Despliega todas las variables globales
to handle buttonClick
if itemCount(sysSystemVariables) > 0
step ctr from 1 to itemCount(sysSystemVariables)
request item ctr of sysSystemVariables
end step
end if
end buttonClick
Asignando tipos de datos a las variables.
Un tipo de dato es un formato que es asignado a una variable cuando ésta es
declarada, tal como un valor entero, texto, un número real, etc.; asignar tipos de
datos a las variables puede mejorar frecuentemente el desempeño de la
aplicación, previene de errores de asignación y operaciones con tipos de variables
diferentes.
Para declarar un tipo de dato, se utilizan las declaraciones local o system,
seguidos del tipo de dato, y el nombre de la variable:
Local LONG 1
System INT páginasDesplegadas, páginasVacias
Local COLOR nuevoColor
Si el tipo de dato no es declarado para una variable, Toolbook selecciona un tipo
de dato apropiado en la declaración donde la variable aparece primero. Toolbook
cambia el tipo de dato subsecuentemente si es necesario, pero esto puede hacer
que el script sea menos eficiente en su desempeño.
A continuación se muestran los tipos de datos que se pueden usar en OpenScript:
Tipo Descripción
int Entero con signo de 16-bits, rango –32768 to 32767
long Entero con signo 32-bits, rango –2147483648 to 2147483647
real Numero de punto flotante de 64-bits
word Entero sin signo 16-bits, rango 0 to 65535
dword Entero con signo 32-bits, rango 0 to 4294967295
string Cadena de caracteres
logical Verdadero o falso
49
50. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
point x, y; donde x y y son enteros
color Lista de tres números no-negativos
stack Lista de items separados por coma
date Fecha en formato del sistema
time Hora en formato del sistema
Es conveniente utilizar la función isType() para determinar la concordancia
de tipos de un tipo de datos en particular. Por ejemplo:
ask “Introduzca una fecha!!!: ”
if isType(date, it) then
request “Usted introdujo una fecha!!! Bien hecho!!”
else
request “Usted no introdujo una fecha correctamente!!!!!”
end if
50
51. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 16. Estructuras condicionales.
Las estructuras condicionales permiten ejecutar una expresión o grupo de
expresiones, dependiendo del resultado de una expresión a evaluar. Las
estructuras condicionales en Toolbook son:
Tipo Comando Descripción
Ejecuta una expresión si
una condición es
verdadera; la palabra
reservada else es
If/then/else
opcional y la expresión
contenida después de ella
Condicional
se ejecutará si la
condición es falsa.
Ejecuta una expresión, de
un conjunto de
Conditions
condiciones mutuamente
exclusivas.
IF/THEN/ELSE
Sintaxis:
if <condición> [then]
<expresiones>
[else
<expresiones>]
end [if]
parámetros:
<condición>
Una expresión que se evalúa a falso o verdadero.
Ejemplo:
Variable1 = 5, Variable2 = 3
If Variable1 > Variable2 then
<expresiones>
Una o más expresiones OpenScript
Cualquier instrucción de toolbook
descripción:
Permite que las expresiones se ejecuten dependiendo de el valor de la
<condición>. Si la condición es evaluada a verdadero, se ejecuta la cláusula then.
51
52. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Si la condición es evaluada a falso, se ejecuta la cláusula else, si hay alguna, o
salta al fin de la estructura if, si no hay cláusula else.
Ejemplo:
-- use la estructura DO para mostrar la posición del cursos en la barra de estado.
to handle buttonClick
if visible of statusBar is false then
show statusBar
end if
do
caption of statusBar = mousePosition of this window
until keyState(keyLeftButton) is up
end buttonClick
CONDITIONS
Sintaxis:
conditions
[when <condición>
[<expresiones>]]
--Puede colocar más expresiones [when <condición>] aquí.
[else
<expresiones>]
end [conditions]
Parámetros:
<condición>
Una expresión que pueda evaluarse a falso o verdadero.
<expresiones>
Una o más expresiones OpenScript
Descripción:
Ejecuta las expresiones en el cuerpo de la estructura de control basado en
el valor de una condición. La estructura conditions incluye cero o más condiciones
when y un else opcional.
Toolbook evalúa las condiciones secuencialmente, evaluando cada cláusula y
deteniéndose cuando encuentra una expresión que es verdadera. Las expresiones
asociadas con la primer condición evaluada a verdadero serán ejecutadas,
entonces el control será pasado a la expresión siguiente al end [conditions]. Si no
hay condición verdadera y existe una cláusula else, las expresiones asociadas a
esta cláusula serán ejecutadas. Si no hay cláusula else, el control se pasará a la
expresión que sigue al end[conditions].
Ejemplo
52
53. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
--Uses the conditions control structure to test for several
--possible user responses
to handle buttonClick
request quot;Desea continuar?quot; with quot;Continuarquot; or quot;Salirquot;
or quot;Reiniciarquot;
conditions
when It is quot;Continuarquot;
request quot;Seleccionó continuarquot;
when It is quot;Salirquot;
request quot; Seleccionó Salirquot;
when It is quot;Reiniciarquot;
request quot; Seleccionó Reiniciarquot;
else
request quot;No hizo selecciónquot;
end conditions
end buttonClick
53
54. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 17. Estructuras de control.
Una estructura de control es un grupo de expresiones que corren bajo
circunstancias particulares, tales como el manejo de un mensaje, repetición de un
grupo de expresiones, o para probar una condición. Las estructuras de control de
OpenScript son mostradas a continuación:
Tipo Comando Descripcion
Repite una expresión o
grupo de expresiones un
Step
numero determinado de
veces.
Repite una expresión o
grupo de expresiones
Repetición Do/until hasta que la condición es
verdadera; siempre se
ejecuta al menos una vez
Repite una expresión o
grupo de expresiones
while
mientras la condición sea
verdadera.
Siempre se inicia una estructura de control con uno de los comandos de la tabla, y
se cierra con end. La única excepción de esta regla es DO, el cual termina con
UNTIL <expresión>. Dentro de ellos, se puede colocar cualquier número de
expresiones OpenScript.
STEP
Sintaxis:
step <variable> from <valor inicial> to <valor final> [by <incremento>]
<expresiones>
end [step]
Parámetros:
<Variable>
Un nombre de variable. Si la variable no está declarada, es
introducida como variable local.
<valor inicial>, <valor final>
Valor con que desea que inicie el ciclo, y hasta cual valor llegará.
<incremento>
54
55. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Determina el incremento que experimentará la variable hasta que su
valor sea igual o mayor a <valor final>. Si el valor es negativo, la variable
decrementa por el número hasta que su valor es menor o igual a el valor
<valor final>.
Su valor por omisión es 1.
<expresiones>
Cualquier expresión OpenScript que se desea sea repetida.
Descripción:
Ejecuta un grupo de expresiones un número específico de veces. Esta estructura
de control es similar a un for... loop en BASIC.
Cuando tolbook ha ejecutado completamente la estructura de control, el valor de
<variable> es el valor <valor final>
Se puede usar continue para controlar la ejecución dentro de esta estructura de
control. Además se puede usar break para salir antes de que la variable haya
llegado a <valor final>.
DO/UNTIL
Sintaxis:
Do
<expresiones>
until <condición>
Parámetros:
<expresiones>
Una o más expresiones OpenScript
<condición>
Cualquier expresión que pueda ser evaluada a cierto o falso.
Descripción:
Ejecuta el grupo de expresiones en el cuerpo de la estructura de control,
hasta que la condición es evaluada a verdadero.
55
56. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Toolbook evalúa la condición después que ejecuta el grupo de expresiones
en el cuerpo de la estructura de control. Por consecuencia, las expresiones dentro
de el cuerpo de la estructura de control, son siempre ejecutadas al menos una
vez.
Use el comando Break para salir de una estructura do/until antes de que termine
de ejecutarse.
While
Sintaxis:
while <condición>
<expresiones>
end [while]
Parámetros:
<condición>
Cualquier expresión que pueda evaluarse como falso o verdadero.
<expresiones>
Una o más expresiones OpenScript
Descripción:
Ejecuta las expresiones en el cuerpo de la estructura de control, hasta que la
condición es evaluada a falso. El valor de la condición es evaluada antes de
ejecutar cualquier expresión, por lo tanto, las expresiones dentro del while no
serán ejecutadas cuando la condición sea evaluada a falso cuando Toolbook
encuentre por primera vez la estructura while.
56
57. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Capítulo 18. Sonido y video
Los recursos de sonido y video enriquecen las aplicaciones en Toolbook, y
son sencillas de integrar.
SONIDO
Existen dos maneras de reproducir sonidos en Toolbook. La primera, y la más
sencilla, es utilizando la función playsound().
Sintaxis
playSound (<sound>[,<wait>])
Parámetros
<sound>
Cadena que representa un archivo wav válido, o un sonido de sistema
listado en la sección [SOUNDS] del archivo WIN.INI.
Ejemplo: “C:LibroAudiosHimno.WAV”
<wait>
Puede ser TRUE o FALSE, por omisión es FALSE. Cuando es FALSE, la
función regresa inmediatamente y la ejecución del script continúa; cuando es
TRUE, la función espera para regresar hasta que el archivo wav ha terminado de
reproducirse. Este parámetro es opcional.
Descripción
Reproduce un archivo tipo WAV o un sonido del sistema siempre y cuando se
tenga instalado el controlador de Windows adecuado. La función puede regresar
dos valores: TRUE o FALSE. Si regresa TRUE, el archivo se reproduce
satisfactoriamente, siempre y cuando no se esté reproduciendo algún otro archivo
wav. La función regresa FALSE si ocurre algún error.
La desventaja de esta función es que no notifica a Toolbook sobre su estado.
Ejemplos
--Reproduce el archivo quot;chimes.wavquot;
get playSound(quot;c:windowschimes.wavquot;)
--Reproduce el sonido SystemDefault de la sección de sonidos del archivo
WIN.INI. get playSound(quot;systemDefaultquot;)
57
58. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
--Detiene la reproducción de un sonido
get playSound(null)
Existe una manera más controlada de reproducir sonido, insertándolo en la
aplicación como clip. Esto permite, además de reproducir un sonido, adelantarlo,
retrasarlo y pausarlo, lo que no es posible hacer con playsound.
El procedimiento es el siguiente:
Se hace clic sobre el botón de clips en
la barra de herramientas.
Enseguida aparece el Clip manager,
donde se elige un nuevo archivo para
agregarlo como clip. Un clip puede ser
un sonido, un video o una imagen.
Se elige el tipo de archivo, en este
caso, de sonido.
En el subdirectorio deseado, se
selecciona el archivo wav. En el
ejemplo: ENTRA1.WAV.
Y por último se le da un nombre, con el
cual se hará referencia a él dentro de
la aplicación, por ejemplo, “sonido”.
Este nombre es independiente de su
nombre de archivo wav.
58
59. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
El sonido ya ha sido agregado como
clip, y dentro de la aplicación, se le
conocerá como “sonido”.
Ahora ya puede ser manejado como clip por ToolBook. Para manejar un clip,
existen diferentes comandos multimedia. El comando básico es mmPlay.
Sintaxis
mmPlay <media reference> [from <start position>]
[to <end position>] [in <stage reference>]
[autoclose | hold | release] [wait]
[notify <object reference>]
Parámetros
<media reference>
Es la referencia al clip o recurso de bitmap a reproducir.
<start position>
Posición de inicio del clip, en formato válido; start (indica desde que
posición se debe iniciar la reproducción). Este parámetro es opcional.
<end position>
Posición final del clip en formato válido de tiempo. Este parámetro es
opcional.
<stage reference>
Referencia a un stage de Toolbook. Este parámetro es opcional. Si no se
incluye este parámetro, el clip o bitmap se reproducirá en su propia ventana.
autoclose
Especifica que el clip se cierra automáticamente cuando termina de
reproducirse, o cuando ha sido detenido. Este parámetro es opcional y no es
válido cuando se utilizan los parámetros hold o release.
hold
Especifica que el clip se pausa cuando termina de reproducirse. Cuando el
clip está en pausa, retiene el acceso al canal del dispositivo. Este parámetro es
opcional y no es válido cuando se utilizan los parámetros autoclose o release.
59
60. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
release
Especifica que el clip se detiene cuando termina de reproducirse. Cuando
el clip está detenido (stopped), libera el acceso al canal del dispositivo. Este
parámetro es opcional y no es válido cuando se utilizan los parámetros autoclose
o hold.
wait
Especifica que el dispositivo no regresa el control a la aplicación hasta que
el clip o bitmap termina de reproducirse. Este parámetro es opcional.
<object reference>
La referencia al objeto que recibirá la notificación.
Descripción
Reproduce un clip. Cuando se quiere que un clip se reproduzca y después
se cierre automáticamente, se utiliza el parámetro autoclose. Esta opción elimina
la necesidad de escribir código para mmNotify.
Si el clip ya está abierto y no se especifica una posición de inicio (<start
position>), el clip se reproducirá desde su posición actual. Si no se especifica una
posición final (<end position>), se reproducirá hasta el final. Si se intenta
reproducir un clip que ya ha llegado a su posición final, ToolBook regresa
automáticamente el clip a su posición inicial y desde ahí lo reproduce.
Si se utiliza el parámetro wait, la ejecución del código no continuará hasta
que el clip termine de reproducirse. Si este parámetro no es utilizado, la ejecución
del código continúa inmediatamente después de que el comando mmPlay es
enviado al dispositivo.
Si se utiliza el parámetro <object reference>, ToolBook envía el mensaje
mmNotify al objeto especificado después de que el clip termina de reproducirse.
Ejemplos
-- Cierra automáticamente el clip “sonido” después de reproducirlo
mmPlay clip quot;sonidoquot; autoclose
mmPlay clip quot;sonidoquot; from quot;00:02quot; to quot;00:14quot; wait
Cuando se desea manipular un clip de manera más controlada, es decir,
adelantarlo o retrasarlo un determinado tiempo (o determinado número de frames
o cuadros, en el caso del video) y pausarlo, es necesario abrir primero el archivo
con el comando mmOpen.
60
61. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Sintaxis
mmOpen <media reference> [wait]
[notify <object reference>]
Parámetros
<media reference>
Referencia al clip o bitmap a abrir.
wait
Especifica que el dispositivo no regresa el control a la aplicación hasta que
el recurso está abierto. Este parámetro es opcional.
<object reference>
Referencia al objeto que recibirá la notificación.
Descripción
Abre un clip o recurso bitmap, verifica que su referencia sea válida, y lo
prepara para ser reproducido.
Se debe abrir un clip o recurso bitmap antes de utilizar cualquier otro
comando de multimedia.
Ejemplos
mmOpen clip “sonido”
mmOpen clip quot;sonidoquot; wait notify button quot;Playquot;
Para cerrar un clip se utiliza el comando mmClose.
Sintaxis
mmClose <media reference> [wait]
[notify <object reference>]
mmClose all
Parámetros
<media reference>
Referencia al clip o recurso bitmap a ser cerrado. Para cerrar todos los clip
en una aplicación, se utiliza la palabra clave all como <media reference>.
wait
Especifica que el dispositivo no regrese el control a la aplicación hasta que
el recurso es cerrado. Este parámetro es opcional.
61
62. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
<object reference>
Referencia del objeto que recibirá la notificación.
Descripción
Cierra un clip o recurso bitmap. Los comandos mmOpen y mmClose se utilizan
para manejar dispositivos, archivos y recursos presentes en la aplicación.
Nota
Si se desea reproducir un clip una sola vez, se debe cerrar inmediatamente
después de terminada su reproducción, para liberar recursos. Si se requiere
reproducirlo más de una vez, se puede dejar abierto.
Ejemplos
--Cierra un clip y envía la notificación a la página
mmClose clip quot;sonidoquot; notify this page
--Cierra todos los clips de la aplicación
mmClose all
VIDEO
Para reproducir video en ToolBook es necesario incluirlo como clip. El
procedimiento es exactamente igual que para los sonidos.
Se hace clic sobre el botón de clips en
la barra de herramientas.
En el clip manager se hace clic sobre
el botón New.
62
63. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Se elige el tipo de archivo, en este
caso, de video.
En el subdirectorio deseado, se
selecciona el archivo avi. En el
ejemplo: CLOCK.AVI.
Se le da un nombre al clip. Por
ejemplo, “reloj”.
Y en el Clip manager aparece como
clip de video, junto al de sonido que se
había agregado anteriormente.
Para manejar los clips de video se utilizan los mismos comandos multimedia que
para sonido: mmOpen, mmPlay, mmClose, etc. A diferencia de los clips de
sonido, los de video requieren un escenario o stage para reproducirse.
Para crear un stage se selecciona la
herramienta de la barra.
63
64. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Se delimita su tamaño y posición en la
página.
Y se le da un nombre para
referenciarlo, por ejemplo, “video”.
Una vez creado el stage, éste sirve de escenario para reproducir el clip.
En el ejemplo que se muestra a continuación, al hacer clic sobre el stage, se
reproducirá el clip “reloj”.
En el código del stage se introducen
los comandos multimedia, siguiendo la
sintaxis antes mencionada.
64
65. Centro Universitario de Producción de Medios Didácticos
Universidad de Colima
Se cambia al modo Reader para
ejecutar los comandos. Al hacer clic
sobre el stage se reproduce el video.
65