GtkDialog
Continuación de :
gtkDialog-II
Vimos los botones, sencillos entonces nos damos una idea de como funciona esto, lo que se puede hacer con los atributos, hay más widgets todavía, como los Checkbox, esto es sencillo:
<checkbox> <label>Esto es un CheckBox</label> <variable>CAJITA1</variable> <action>echo checkbox esta en $CHECKBOX marcado</action>> </checkbox>
Sencillo como crear checkbox, tiene muchos atributos como marcar, habilitar, deshabilitar, hacer combinaciones:
[code: check.sh]
No solo cajitas podemos hacer también podemos usar un radio button, de la misma forma que checkbox :

[code: checkb.sh]
Teniendo en cuenta esto, también salen los combos, las cajitas de combox, aquí tiene un nombre chistoso combobox:

[code: combobox.sh]
Todo esto me hace recordar a mi querido zenity, en el bash, a lo que mis recuerdos me llevan a que aquí también tenemos una barra de progreso, un poco más divertida:
<progressbar>
<label>algo de texto</label>
<input>for i in $(seq 0 10 100); do echo $i; sleep 0.3; done</input>
<action type="exit">Listo</action>
</progressbar>
Podemos ver que no tiene nada diferente a lo demás, en el input podemos ejecutar el tiempo y con un simple ciclo for, Son determinados espacios en un tiempo..

[code: progresobar.sh]
En zenity, es un poco más facil y solo consta de :
zenity --progress --auto-close
La barra de Progreso, también puede dividirse por partes e imprimir algunas frases dentro de la barra, como el ejemplo del for simple que estaba arriba, solo que aquí creamos una Función, sip una función para agrupar trozos de código de una manera más lógica:
[php]
function progress() {
for i in $(seq 0 10 100); do
echo $i
[ "$i" -le 30 ] && echo "Empieza... tun tun"
[ "$i" -le 60 -a "$i" -gt 30 ] && echo "Uhh ala mitad..."
[ "$i" -gt 60 ] && echo "Termina u,u"
sleep 0.3
done;
echo ready
}
[/php]
[code: progresobarter.sh]
Hagamos lago más rapido y que se sobreponga, en esté caso al comando date, que muestra la fecha..o el comando que quieras.. como dicen los españoles, "os dejo a vuestra imaginación":
[php]
#! /usr/bin/gtkdialog -e
function progress() {
for i in $(seq 0 10 100); do
echo $i
[ "$i" -le 30 ] && echo "Empieza"
[ "$i" -le 60 -a "$i" -gt 30 ] && echo "ya casi"
[ "$i" -gt 60 ] && echo "Fin"
sleep 0.3
done;
echo ready
}
function progress_fast() {
for i in $(seq 0 1 10000); do
echo $((i/100))
[ "$i" -le 3000 ] && echo "1....."
[ "$i" -le 6000 -a "$i" -gt 3000 ] && echo "2...doshhh"
[ "$i" -gt 6000 ] && echo "fin ..
rapisimo"
#sleep 0.1
done;
echo ready
}
[/php]

[code: progresobartest.sh ]

Esta entrada fue creada un Viernes, marzo , 2009
Sobre 









Blog Personal de Rafael Bucio
[...] Siguiente Tema [...]
marzo 20, 2009 @ 5:27:
Bucio
Uff, inchi barrita tiene muchas cosas, U_U
marzo 20, 2009 @ 5:31:
markuz
Intersante, pero Bash no se me hace un lenguaje muy limpio para grandes, muy grandes proyectos en GTK.
marzo 20, 2009 @ 9:25:
akheron
@Bucio, en tu primer imagen vi el fragmento de codigo, ¿no será que esta un poco erroneo el script?. Se supone que si dejas en TRUE el check de ‘No quiero el boton aceptar jiiji’ entonces se debería desactivar el boton Aceptar…
Creo yo que estan viradas esas linas, creo mas razonable lo siguiente (digo, para que concuerde con la imagen):
…
ANOTHER_CHECKBOX
if true disable:OKBUTTON
if false enable:OKBUTTON
…
O…¿como lo ves?.
—La mejor puerta cerrada…es la que se deja abierta—
marzo 20, 2009 @ 9:31:
.: Shinji Ikari ::.
En efecto, los fuentes se ponen pesados y feos cuando se hacen proyectos en los que la interface es compleja y parte escencial del software. Pero prefiero XAML de WPF.
Saludos!
marzo 20, 2009 @ 9:55:
Rafael Bucio
@markuz: Si en realidad, es más un interprete de comandos, no tan recomendable para un programa, muy grande, pero para pasar el rato está leve no creeS?.
@akheron: ja, tienes razón creo que ya estaba durmiendo
marzo 20, 2009 @ 16:34:
Bucio
@.: Shinji Ikari ::.: u,u oh inchi geek, na no me late, es más esté bash es para aplicaciones chicas, no para andar con tu wpf, designer, pero se respeta la opinión de todos
jajja somo libres de usar la aplicación que más nos convenga y esté acorde a nuestras necesidades y bajo cualquier s.o :D…
marzo 20, 2009 @ 16:50:
spike
ammm… yo solo kiero saber si puedes rolar tu wallpaper
marzo 20, 2009 @ 23:23:
Bucio
ja, no lo creo
marzo 21, 2009 @ 1:33:
JainuX
vientos ya vamos aprendiendo… es cosa es del diablo :-P
Saludos
marzo 21, 2009 @ 20:04:
Blog Personal de Rafael Bucio
[...] continuación de: GtkDialog-IV. [...]
marzo 29, 2009 @ 4:41: