monovox.art@gmail.com [shell-script]
2016-10-01 04:20:29 UTC
Olá. Avançando no YAD com vários exemplos que achei do Júlio e mastigando man page mas uma dúvida sobre inicialização do form : o script abaixo faz o que quero (um misturador de cores a partir da primeira cor selecionada). Mas tem jeito de abrir a janela com o primeiro CLR preenchido com uma cor enviada por parâmetro ou por pipe e, a seguir, invocar a função cores() para calcular o valor a ser inicizalido nos outros dois CLR ?
Eu tentei fazer um echo '#6699ff' | yad ... m
Tentei acrescentar a cor como último parâmetro do comando yad
Mas nada funcionava direito, às vezes até fazia os botões ficarem sem efeito ao serem clicados.
#!/usr/local/bin/bash
# 2016-10-01
# Esquema de três cores
function cores()
{
base=$1
cor2='#'${base:5:2}${base:1:2}${base:3:2}
cor3='#'${base:3:2}${base:5:2}${base:1:2}
echo 5:$1
echo 2:$cor2
echo 6:$cor2
echo 3:$cor3
echo 7:$cor3
return
}; export -f cores;
yad --form --text "Colorizador" \
--width=400 \
--selectable-labels \
--columns 2 --align left \
--window-icon="/usr/local/share/icons/gnome/16x16/categories/applications-graphics.png" \
--center \
--field "Cor 1::CLR" '#6699ff' \
--field "Cor 2::CLR" '' \
--field "Cor 3::CLR" '' \
--field 'Misturar':FBTN "@bash -c 'cores \"%1\"'" \
--field '' '' \
--field '' '' \
--field '' '' \
--field 'gtk-cancel':FBTN \
'@bash -c "kill -USR2 $YAD_PID"' \
--focus-field 3 --no-buttons
Eu tentei fazer um echo '#6699ff' | yad ... m
Tentei acrescentar a cor como último parâmetro do comando yad
Mas nada funcionava direito, às vezes até fazia os botões ficarem sem efeito ao serem clicados.
#!/usr/local/bin/bash
# 2016-10-01
# Esquema de três cores
function cores()
{
base=$1
cor2='#'${base:5:2}${base:1:2}${base:3:2}
cor3='#'${base:3:2}${base:5:2}${base:1:2}
echo 5:$1
echo 2:$cor2
echo 6:$cor2
echo 3:$cor3
echo 7:$cor3
return
}; export -f cores;
yad --form --text "Colorizador" \
--width=400 \
--selectable-labels \
--columns 2 --align left \
--window-icon="/usr/local/share/icons/gnome/16x16/categories/applications-graphics.png" \
--center \
--field "Cor 1::CLR" '#6699ff' \
--field "Cor 2::CLR" '' \
--field "Cor 3::CLR" '' \
--field 'Misturar':FBTN "@bash -c 'cores \"%1\"'" \
--field '' '' \
--field '' '' \
--field '' '' \
--field 'gtk-cancel':FBTN \
'@bash -c "kill -USR2 $YAD_PID"' \
--focus-field 3 --no-buttons