<sect1 id="tool-scriptbuilder">
<title
>A ferramenta Construtor de scripts</title>
<indexterm
><primary
>Ferramentas</primary>
<secondary
>Construtor de scripts</secondary>
</indexterm>

<para
>As aplicacións do KDE poden ser controladas externamente por outro programa, desde unha consola ou cun script de consola empregando o protocolo de comunicación entre procesos (<abbrev
>DCOP</abbrev
>). O KStars aproveita esta característica para permitir que se podan escribir scripts para comportamentos bastante complexos e que se reproduzan en calquera momento. Isto pódese empregar, por exemplo, para crear unha demostración para a aula para ilustrar un concepto astronómico. </para>
<para
>O problema cos scripts de DBus é que escribilos é un pouco como programar e que lles pode parecer unha tarefa aterradora a quen non teñan experiencia en programación. A Ferramenta Construtor de Guións fornece unha interface <abbrev
>GUI</abbrev
> na que apuntar e premer para construir scripts DCOP para o KStars, tornando moi doada a creación de scripts complexos. </para>

<sect2 id="sb-intro">
<title
>Introdución ao Construtor de scripts</title>

<para
>Antes de explicar como empregar o Construtor de scripts vou fornecer unha breve introdución a todos os componentes da <abbrev
>GUI</abbrev
>; para máis información emprega a función "Que é isto?". </para>

<screenshot>
<screeninfo
>A Ferramenta Construtor de scripts </screeninfo>
<mediaobject>
  <imageobject>
    <imagedata fileref="scriptbuilder.png" format="PNG"/>
  </imageobject>
  <textobject>
    <phrase
>Ferramenta Construtor de scripts</phrase>
  </textobject>
</mediaobject>
</screenshot>

<para
>Na imaxe de abaixo vese o Construtor de scripts. A caixa da esquerda é a <firstterm
>caixa do script actual</firstterm
>; mostra a lista de comandos que constitúen o script no que se está a traballar. A caixa da dereita é o <firstterm
>Navegador de funcións</firstterm
>; mostra a lista de todas as funcións de scrip disponíbeis. Por debaixo do Navegador de funcións hai un paneliño que mostra unha documentación breve acerca da función do script resaltado no Navegador de funcións. O panel por baixo da caixa do script actual é o <firstterm
>panel Argumentos da función</firstterm
>; cando se resalta unha función na caixa Guión actual, este panel contén elementos para especificar os valores de calquera argumento que requira a función resaltada. </para
><para
>Na parte superior da xanela hai unha fileira de botóns que actúan sobre o script como un todo. Da esquerda para a dereita, son: <guibutton
>Novo script</guibutton
>, <guibutton
>Abrir script</guibutton
>, <guibutton
>Gardar script</guibutton
>, <guibutton
>Gardar script como...</guibutton
> e <guibutton
>Probar o script</guibutton
>. A función destes botóns debería ser obvia, excepto talvez o derradeiro botón. Cando se preme <guibutton
>Probar o script</guibutton
>, o programa tenta executar o script na xanela principal do KStars. Hai que apartar a xanela do Construtor de guións antes de premelo para así poder ver os resultados. </para
><para
>No centro da xanela hai unha columna de botóns que actúan sobre as funcións individuais do script. Desde arriba para baixo, son: <guibutton
>Engadir función</guibutton
>, <guibutton
>Eliminar función</guibutton
>, <guibutton
>Copiar función</guibutton
>, <guibutton
>Subir</guibutton
> e <guibutton
>Baixar</guibutton
>. <guibutton
>Engadir función</guibutton
> adiciona a función resaltada no Navegador de funcións á caixa Script actual (tamén se pode engadir unha función preméndoa dúas veces). O resto dos botóns actúan sobre a función resaltada na caixa Script actual, eliminándoo, duplicándoo ou movendo a súa posición no script actual. </para>
</sect2>

<sect2 id="sb-using">
<title
>Uso do Construtor de scripts</title>
<para
>Para ilustrar o uso do Construtor de scripts presentamos un pequeno titorial de exemplo no que facemos un script que segue a Lúa mentres o reloxo corre a unha velocidade acelerada. </para
><para
>Se imos seguir a Lúa, temos primeiros que centrar o visor nela. A función <firstterm
>lookToward</firstterm
> é a que se emprega para isto. Resalta esta función no Navegador de funcións e observa a documentación que se mostra no panel que hai por debaixo do Navegador. </para
><para
>Unha vez que nos ocupamos de apuntar para a Lúa, o seguinte que queremos é facer que o tempo transcorra a unha velocidade acelerada. Para isto, emprega a función <firstterm
>setClockScale</firstterm
>. Engádea ao script premendo dúas veces o Navegador de funcións. O panel Argumentos da función contén un selector de pasos de tempo para axustar os pasos de tempo desexados para o reloxo de simulación. Cambia os pasos de tempo a 3 horas. </para
><para
>Ben, apuntamos para a Lúa e aceleramos o reloxio. A seguir simplemente queremos que o script agarde uns segundos mentres o visor segue a Lúa. Engade a función <firstterm
>waitFor</firstterm
> ao script e emprega o panel Argumentos de función para especificar que debe agardar 20 segundos antes de continuar. </para
><para
>Para rematar, volvamos os pasos de tempo do reloxo ao valor normal de 1 segundo. Engade outro setClockScale e dalle o valor de 1 segundo. </para
><para
>Na verdade, ainda non rematamos de todo. Probabelmente nos teñamos que asegurar de que o visor está a empregar as coordenadas ecuatoriais antes de que o script siga a Lúa cun paso de tempo acelerado. Se non, se o visor emprega as coordenadas horizontais, rotará moi rapidamente en ángulos moi grandes segundo a Lúa se ergue e se pon. Isto pode resultar moi confuso e evítase configurando a Opción de Vista <firstterm
>UseAltAz</firstterm
> como <quote
>false</quote
>. Para mudar calquera Opción de Vista emprega a función <firstterm
>changeViewOption</firstterm
>. Engade esta función ao script e examina o panel Argumentos de función. Hai un menú despregábel que contén a listaxe de todas as opcións que se poden axustar con changeViewOption. Dado que sabemos que queremos a opción UseAltAz, poderíamos simplemente seleccionala neste menú. Porén, a lista é bastante longa e carece de explicacións do que é cada elemento. Polo tanto, é mellor premer o botón <guibutton
>Examinar árbore</guibutton
>, que abre unha xanela cunha vista de árbore de todas as funcións disponíbeis organizadas por temas. Alén disto, cada elemento ten unha explicación breve do que fai a opción e o tipo de datos do valor da opción. Atopamos UseAltAz na categoría <guilabel
>Opcións do mapa do ceo</guilabel
>. Chega con resaltar este elemento e premer <guibutton
>Aceptar</guibutton
> e selecciónase no menú despregábel do panel Argumentos de función. Por último, fai que o seu valor sexa <quote
>false</quote
> ou <quote
>0</quote
>. </para
><para
>Un paso máis: mudar UseAltAz ao final do script non nos sirve de nada; ten que cambiar antes de que aconteza nada máis. Por iso, asegúrate de que a función estea resaltada na caixa Script actual e preme o botón <guibutton
>Subir</guibutton
> até que sexa a primeira función. </para
><para
>Unha vez rematado o script deberíamolo gravar no disco. Preme o botón <guibutton
>Gardar script</guibutton
>. Isto abre primeiro unha xanela na que se lle pode dar un nome ao script e escribir o teu nome como autor. Escribe <quote
>Seguindo a Lúa</quote
> como nome e o teu nome como autor e preme <guibutton
>Aceptar</guibutton
>. A seguir, verás o diálogo normal Gardar Ficheiro do &kde;. Especifica un nome de ficheiro para o script e preme <guibutton
>Aceptar</guibutton
> para gravarlo. Lembra que se o nome do ficheiro non remata con <quote
>.kstars</quote
>, este sufixo engádese automaticamente. Se tes curiosidade, podes examinar o ficheiro do script con calquera editor de texto. </para
><para
>Agora que xa rematamos o script podémolo executar dun par de maneiras. Desde unha consola pódese simplemente executar o script sempre que haxa un KStars en execución. Como alternativa, pódese executar o script desde dentro do KStars co elemento <guimenuitem
>Executar guión</guimenuitem
> do menú <guimenu
>Ficheiro</guimenu
>. </para>
</sect2>
</sect1>

