<sect1 id="tool-scriptbuilder">
<title
>Budowanie skryptów</title>
<indexterm
><primary
>Narzędzia</primary>
<secondary
>Budowanie skryptów</secondary>
</indexterm>

<para
>Programy KDE mogą być kontrolowane przez inny program przy użyciu protokołu Interprocess communication protocol (<abbrev
>DBus</abbrev
>). Taka kontrola jest ma miejsce z wiersza poleceń, bądź przez skrypt. KStars korzysta z tych możliwości, co pozwala na budowanie skomplikowanych skryptów i uruchamianie ich w dowolnym czasie. W ten sposób można na przykład przygotować materiał szkoleniowy na lekcję ilustrujący pewne zagadnienie z dziedziny astronomii. </para>
<para
>Pisanie skryptów DBus jest podobne do programowania, więc może wydawać się zadaniem trudnym dla tych, którzy nigdy tego nie próbowali. Narzędzie budowy skryptów dostarcza interfejsu <abbrev
>GUI</abbrev
> do budowy skryptów DBus, co znacznie ułatwia tworzenie rozbudowanych skryptów. </para>

<sect2 id="sb-intro">
<title
>Wprowadzenie do budowania skryptów</title>

<para
>Przed wyjaśnieniem jak działa narzędzie budowy skryptów, krótko opiszemy podstawowe komponenty interfejsu <abbrev
>GUI</abbrev
>; więcej informacji można uzyskać wykorzystując funkcję "Co to jest?".  </para>

<screenshot>
<screeninfo
>Narzędzie Budowanie skryptów </screeninfo>
<mediaobject>
  <imageobject>
    <imagedata fileref="scriptbuilder.png" format="PNG"/>
  </imageobject>
  <textobject>
    <phrase
>Narzędzie Budowanie skryptów</phrase>
  </textobject>
</mediaobject>
</screenshot>

<para
>Powyżej pokazany jest wygląd narzędzia budowy skryptów. Po lewej stronie znajduje się okno <firstterm
>Bieżący skrypt</firstterm
>; zawiera ono listę poleceń składających się na obecnie tworzony skrypt. Po prawej stronie znajduje <firstterm
>Przeglądarka funkcji</firstterm
>; wyświetlająca listę wszystkich dostępnych w skryptach funkcji. Poniżej Przeglądarki funkcji znajduje się niewielki panel, wyświetlający krótką dokumentację wybranej funkcji. Panel pod oknem obecnie tworzonego skryptu to panel <firstterm
>Argumenty funkcji</firstterm
>; zawierający wymagane przez wybraną powyżej funkcję argumenty. </para
><para
>U góry okna znajduje się rząd przycisków, które mają zastosowanie przy skryptach. Od lewej są to: <guibutton
>Nowy skrypt</guibutton
>, <guibutton
>Otwórz skrypt</guibutton
>, <guibutton
>Zapisz skrypt</guibutton
>, <guibutton
>Zapisz skrypt jako...</guibutton
>, i <guibutton
>Wypróbuj skrypt</guibutton
>. Działanie tych przycisków powinno być oczywiste, może poza ostatnim. Wciśnięcie <guibutton
>Wypróbuj skrypt</guibutton
> spowoduje próbę uruchomienia bieżącego skryptu w głównym oknie KStars. Przed jego wciśnięciem powinno przesunąć się okno z treścią skryptu tak, aby było widać wyniki. </para
><para
>Na środku okna znajduje się kolumna przycisków, które mają zastosowanie do poszczególnych funkcji skryptu. Od góry do dołu są to: <guibutton
>Dodaj funkcję</guibutton
>, <guibutton
>Usuń funkcję</guibutton
>, <guibutton
>Kopiuj funkcję</guibutton
>, <guibutton
>W górę</guibutton
> i <guibutton
>W dół</guibutton
>. <guibutton
>Dodaj funkcję</guibutton
> dodaje obecnie zaznaczoną funkcję z przeglądarki funkcji do skryptu (to samo można osiągnąć przez podwójne kliknięcie nazwy funkcji). Pozostałe przyciski działają na funkcji zaznaczonej w polu skryptu. Powodują jej usunięcie, powielenie lub zmianę pozycji w skrypcie. </para>
</sect2>

<sect2 id="sb-using">
<title
>Korzystanie z narzędzia budowania skryptów</title>
<para
>Aby przedstawić korzystanie z narzędzia budowania skryptów pokażemy przykład, w którym tworzymy skrypt śledzący Księżyc, podczas gdy zegar działa w trybie przyspieszonym. </para
><para
>Jeżeli chcemy śledzić Księżyc musimy najpierw wyśrodkować go na ekranie. Wykorzystamy do tego funkcję <firstterm
>lookToward</firstterm
>. Zaznacz tą funkcję w przeglądarce funkcji i sprawdź jej dokumentację wyświetloną w panelu poniżej przeglądarki. Wciśnij przycisk <guibutton
>Dodaj funkcję</guibutton
>, aby dodać funkcję do pola bieżącego skryptu. Panel argumentów funkcji będzie zawierał listę rozwijaną o nazwie <quote
>Kierunek</quote
>. Wybiera się tam Jest to kierunek, w którym ma być skierowany ekran. List rozwijana zawiera tylko główne kierunki geograficzne, bez Księżyca czy innych obiektów. Możesz wprowadzić "Księżyc" ręcznie albo wcisnąć przycisk <guibutton
>Obiekt</guibutton
> aby skorzystać z okna <guilabel
>Znajdź obiekt</guilabel
> do znalezienia Księżyca z listy nazwanych obiektów. Pamiętaj, że jak zwykle wyśrodkowanie na obiekcie spowoduje włączenie trybu śledzenia. Nie ma więc potrzeby aby dodawać funkcję <firstterm
>setTracking</firstterm
> po funkcji lookToward. </para
><para
>Teraz, gdy wskazaliśmy Księżyc, chcemy spowodować aby czas płynął z przyśpieszoną prędkością. Wykorzystaj do tego funkcję <firstterm
>setClockScale</firstterm
>. Dodaj ją do skryptu poprzez podwójne kliknięcie w przeglądarce funkcji. Panel argumentów tej funkcji zawiera pole umożliwiające ustawienie kroku czasu dla zegara symulacji. Zmień wartość na 3 godziny. </para
><para
>Teraz chcemy tylko, aby skrypt zaczekał przez kilka sekund, żeby program wyśrodkował ekran na Księżycu. Dodaj do skryptu funkcję <firstterm
>waitFor</firstterm
> i skorzystaj z panelu argumentów funkcji aby ustawić wartość oczekiwania na 20 sekund. </para
><para
>Teraz zresetuj krok czasowy zegara na wartość domyślną 1 sekundy. Dodaj kolejne wywołanie funkcji setClockScale i ustaw jej wartość na 1. </para
><para
>Powinniśmy się jeszcze upewnić, że wykorzystywane są współrzędne równikowe, zanim skrypt będzie śledził Księżyc z przyśpieszonym krokiem czasu. Jeżeli będą wykorzystywane współrzędne horyzontalne nastąpi bardzo szybki obrót o duże kątywraz ze wschodem i zachodem Księżyca. Może być to bardzo irytujące, ale można temu zapobiec ustawiając opcję widoku<firstterm
>UseAltAz</firstterm
> na <quote
>false</quote
>. Aby zmienić dowolną opcję widoku wykorzystaj funkcję <firstterm
>changeViewOption</firstterm
>. Dodaj tą funkcję do skryptu. W panelu argumentów funkcji znajduje się lista rozwijana, która zawiera wszystkie opcje, które mogą być dostosowane za jej pomocą. Z listy tej należy wybrać opcję UseAltAz, możemy także wcisnąć przycisk <guibutton
>Przeglądaj drzewo</guibutton
>, który zawiera drzewo wszystkich dostępnych opcji, zorganizowane tematycznie. Dodatkowo każda pozycja zawiera krótki opis mówiący o tym, co dana funkcja robi i jakiego typu danych potrzebuje. UseAltAz można znaleźć w kategorii <guilabel
>Opcje mapy nieba</guilabel
>. Po wybraniu funkcja znajdzie się w odpowiednim polu okna narzędzia budowania skryptów. Zmień jeszcze jej wartość na <quote
>false</quote
> lub <quote
>0</quote
>. </para
><para
>Jeszcze jeden krok: zmiana UseAltAz na samym końcu skryptu nic nie pomoże, potrzebna jest na samym początku. Zaznacz ją więc w polu skryptu i wciskaj przycisk <guibutton
>W górę</guibutton
> tak długo, aż UseAltAz będzie pierwszą funkcją skryptu. </para
><para
>Teraz, po skończeniu skryptu, należy zapisać go na dysku. Wciśnij przycisk<guibutton
>Zapisz skrypt</guibutton
>. Spowoduje to otwarcie okna w którym należy wprowadzić nazwę skryptu, a także dane jego autora. Jako nazwę wprowadź <quote
>Śledzenie Księżyca</quote
>, natomiast w polu autora wpisz swoje imię i naciśnij <guibutton
>OK</guibutton
>. Teraz zobaczysz standardowe okno zapisu pliku w &kde;. Określ nazwę pliku dla skryptu i wciśnij <guibutton
>OK</guibutton
>, aby zapisać skrypt. Pamiętaj, że jeżeli nazwa pliku nie będzie kończyć się na <quote
>.kstars</quote
>, to ten przyrostek zostanie dodany automatycznie. Jeżeli ciekawi Cię wygląd takiego pliku, możesz go obejrzeć w dowolnym edytorze tekstu. </para
><para
>Skrypt możemy uruchomić na kilka sposobów. Jeżeli działa KStars możemy to zrobić z wiersza poleceń. Inna metoda to uruchomienie skryptu przez KStars po wybraniu opcji <guimenuitem
>Uruchom skrypt</guimenuitem
> z menu <guimenu
>Plik</guimenu
>. </para>
</sect2>
</sect1>

