Listas
En la imagen de la izquierda podemos apreciar uno de los tipos de listas que pueden ser creadas, en este caso he usado la opción –radiolist, esto permite que únicamente se seleccione una opción, si se desea permitir el seleccionar más de una opción, podemos recurrir a –checklist. Al emplear las opciones –radiolist o –checklist es necesario comenzar cada fila con alguna de las constantes TRUE o FALSE, en donde TRUE hará que el botón de radio (o de verificación) se encuentre marcado, en caso contrario el botón quedará desmarcado.
Es importante aclarar que Zenity retornará la entrada que se encuentre en la primera columna de texto de la fila seleccionada al error estándar (stderr), en el ejemplo el valor de retorno sería 2. En el caso que necesite utilizar dicho valor en el script, será necesario hacer una redirección de los descriptores.
zenity --list \
--title="AudioConverter (v0.3)" \
--text="Seleccione una operacion a realizar de la lista." \
--radiolist \
--width="355" \
--height="290" \
--column="" --column="#" --column="Operacion" --column="Descripcion" \
FALSE 1 "MP3 a WAV" "Convierte ficheros MP3 a WAV" \
FALSE 2 "MP3 a OGG" "Convierte ficheros MP3 a OGG" \
FALSE 3 "OGG a WAV" "Convierte ficheros OGG a WAV" \
FALSE 4 "OGG a MP3" "Convierte ficheros OGG a MP3" \
FALSE 5 "WAV a OGG" "Convierte ficheros WAV a OGG" \
FALSE 6 "WAV a MP3" "Convierte ficheros WAV a MP3" \
FALSE 7 "WMA a MP3" "Convierte ficheros WMA a MP3"
En el codigo de arriba se muestran algunas cosas que aún no he detallado, por ejemplo:
- –title
- Es una opción general, establece el título del cuadro de dialogo.
- –width
- Es una opción general, establece la anchura del cuadro de dialogo.
- –height
- Es una opción general, establece la altura del cuadro de dialogo.
- –text
- Establece el texto de la lista.
- –column
- Es una opción específica para la generación de listas, establece el título de la columna.
Existe una opción bastante interesante dentro de las opciones de las listas, dicha opción es –print-column, la cual permite especificar qué columna se imprimirá en la salida estándar (stdout). Por defecto se devuelve el valor de la primera columna, puede utilizar la cadena ALL para imprimir todas las columnas de la fila seleccionada.
Es importante que se asegure de encerrar entre comillas cada uno de los argumentos de los comandos en Zenity, de lo contrario, puede obtener resultados inesperados.
0 Responses to “Zenity, mejorando la presencia de tus scripts”