Articulo de referencia

SuperTalk

SuperTalk es el lenguaje de scripting utilizado en SuperCard . [ 1 ] SuperTalk es un descendiente de HyperTalk . Extensiones al lenguaje base HyperTalk Sintaxis adicional Una de...

SuperTalk es el lenguaje de scripting utilizado en SuperCard . [ 1 ] SuperTalk es un descendiente de HyperTalk .

Extensiones al lenguaje base HyperTalk

Sintaxis adicional

Una de las funciones más potentes que SuperCard añade al lenguaje HyperTalk son las propiedades de usuario . Mientras que HyperTalk tenía un conjunto fijo de propiedades para sus objetos, los programadores de SuperCard pueden usar el comando para añadir nuevas propiedades a botones y campos. Estas propiedades pueden contener texto arbitrario (incluidos números y referencias a objetos, que también se representan mediante texto en xTalks), e incluso volcados de archivos completos.define property propName

answerSuperTalk ofrece varias variantes de los comandos de HyperTalk answer file, que permiten seleccionar varios elementos de una lista, elegir un icono de entre todos los disponibles, seleccionar un instrumento MIDI para reproducir sonido, o elegir un archivo de un formato de imagen compatible (incluida una vista previa), o discos y carpetas. A diferencia de los diálogos de HyperTalk, los diálogos de respuesta y pregunta de SuperTalk no se redimensionan dinámicamente para mostrar más texto. Sin embargo, dado que SuperCard permite tener tarjetas (es decir, "páginas") en ventanas de tipos arbitrarios, se puede crear fácilmente un diálogo propio con el tamaño suficiente. SuperTalk también incluye un alertcomando que muestra las ventanas y hojas de alerta estándar del sistema, incluidos los iconos estándar del sistema.

Se dispone de un comando de conmutación para una mayor legibilidad en condicionales complejos, y se pueden grabar diversos tipos de contenido multimedia (por ejemplo, capturas de pantalla de una tarjeta, sonido y vídeos QuickTime ). También existe un clonecomando equivalente a copiar y pegar que deja el portapapeles sin cambios, un comando de enumeración que crea variables globales con valores enteros secuenciales, y recientemente se ha añadido el conocido comando de MetaCard para iterar a través de listas.repeatforeachitemx

SuperCard también ofrece manejo de excepciones mediante una tryinstrucción con throwun comando asociado.

Diferencias e incompatibilidades

SuperTalk incluía un depurador a nivel de código fuente mucho antes que HyperCard , pero el depurador de SuperTalk es una ventana modal y no permite establecer puntos de interrupción simplemente haciendo clic junto a una línea. traceSe utiliza un comando especial para acceder al depurador, donde se puede ver la línea de código que se está ejecutando, ejecutar comandos, evaluar expresiones, etc. Por ello, el depurador de SuperTalk debe activarse explícitamente en lugar de estar disponible de inmediato cuando se produce un error de script.

El visual effectcomando es un poco más estricto en su sintaxis, pero a cambio admite numerosos efectos de transición adicionales, incluidas transiciones QuickTime y módulos de complemento especiales (almacenados en recursos de bifurcación de datos de tipo TRAN). Se ha añadido un tipo especial de comando externo que no se descarga y puede poseer una ventana. Su tipo es XRTN. Se diferencia notablemente del protocolo XCMD y tampoco utiliza el protocolo xWindoid introducido posteriormente para añadir ventanas a HyperTalk.

SuperTalk también utiliza un launchcomando para iniciar aplicaciones externas, diferente del opencomando de HyperTalk, que SuperTalk utiliza para abrir sus diversas ventanas (HyperTalk se desvió aquí al usar ).gotostack"foo"innewwindow

Modelo de objetos más completo

Por supuesto, SuperTalk también expone el modelo de objetos ampliado de SuperCard, lo que permite crear controles deslizantes, barras de desplazamiento, indicadores de progreso y otras escalas, gráficos de dibujo y pintura programables, así como objetos de menú nativos de tipo listbox y de primera clase. También están disponibles múltiples ventanas con varios estilos (panel modal, no modal, con desplazamiento, redimensionable, paletas flotantes) y el ámbito de activación y enfoque se puede modificar mediante un control total mediante scripts.

Desviaciones

Algunas partes de SuperCard se desvían de la similitud con el inglés de HyperTalk. Esto incluye el alertcomando, que intentó emular la sintaxis algo engorrosa del answercomando en exceso. Además, parece que con el tiempo, varios XCMD se incorporaron al motor como comandos integrados, manteniendo la sintaxis de llamada al controlador, que no es muy fácil de recordar. El caso más evidente es la moviefunción, donde las películas se "añaden invisiblemente" a una ventana en lugar de implementarse como controles reales como deslizadores u otros elementos. También hay algunas propiedades que controlan el comportamiento general de la aplicación que son traducciones directas de las API del sistema subyacente, por ejemplo, para usar el " administrador de apariencia " (el motor de temas en Mac OS 9).

Referencias

  1. Harvey, Charles; Press, Jon (18 de diciembre de 1995). Bases de datos en la investigación histórica: teoría, métodos y aplicaciones . Bloomsbury Publishing. ISBN 978-1-349-24392-1.