shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

YAD: inicialização de campos


From: monovox . art
Subject: YAD: inicialização de campos
Date: 30 Sep 2016 21:20:29 -0700

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






reply via email to

[Prev in Thread] Current Thread [Next in Thread]