# Podręcznik &kig;

Dominique Devriese

    devriese@kde.org

Marcin Bokszczanin

    mboksz AT bcig.pl

Polskie tłumaczenie
Robert Gomułka

    carramba@epf.pl

Polskie tłumaczenie
2002 2003 2004 Dominique Devriese
&FDLNotice;
2005-08-20
0.10.5

&kig; jest programem Interaktywnej geometrii dla środowiska &kde;.

KDE KDE-Edu Kig Interaktywna Geometria KGeo Cabri Dr.Geo KSeg

## Wstęp

&kig; jest programem Interaktywnej geometrii. Ma on służyć dwóm celom:

- Pozwolić uczniom na interaktywne poznawanie figur i koncepcji geometrycznych przy pomocy komputera.

- Służyć jako narzędzie do rysowania figur geometrycznych w celu wstawiania ich do innych dokumentów.

Możesz zgłaszać problemy z &kig; za pomocą wewnętrznego narzędzia do zgłaszania błędów (Pomoc Raport o błędzie... ), lub po prostu skontaktować się ze mną pod adresem toscano.pino@tiscali.it.

Jako że &kig; obsługuje makra i konstrukcję zbiorów punktów, umożliwia on na zdefiniowanie dość zaawansowanych makr. Jeśli stworzyłeś/stworzyłaś interesujące makro, które mogłoby być użyteczne dla innych, proszę prześlij je na toscano.pino@tiscali.it, tak bym mógł je umieścić w dystrybucji (jeśli tak zrobisz, będzie ono dostępne pod licencją &kig; czyli pod GPL, tak by inni mogli go swobodnie używać i adaptować do własnych potrzeb).

## Podstawy

### Konstruowanie obiektów

#### Konstruowanie punktów

Punkty można konstruować na kilka sposobów:

- Wybierz Obiekty Punkty Punkt z paska menu, lub wciśnij odpowiedni przycisk na pasku narzędzi. Możesz następnie utworzyć punkt klikając na pożądanym miejscu w oknie.

  Właściwie dla konstruowania innych obiektów to działa w ten sam sposób: kliknij na właściwej pozycji paska menu, lub przycisku paska narzędzi i wybierz niezbędne elementy żeby utworzyć obiekt.

- Ponieważ często tworzone są punkty, kliknięcie gdzieś na ekranie przy użyciu środkowego przycisku myszy stworzy dla Ciebie punkt, bez przechodzenia do menu, lub używania przycisku.

- Możesz skonstruować punkty podczas budowania innych obiektów w tle, opcjonalnie zaznaczając je dla obiektu, który budujesz. Po więcej informacji zerknij do .

Utworzono punkt
Utworzono punkt

#### Konstruowanie innych obiektów

Konstruowanie obiektów innych niż punkty zwykle odbywa się przez wybranie odpowiedniej pozycji w menu Obiekty, lub kliknięciu na jednym z przycisków paska narzędzi.

Konstruowanie okręgu
Konstruowanie okręgu

Rozpocznie to konstruowanie wybranego typu obiektów. Wszystkie typy wymagają argumentów. Na przykład, jeśli wybrałeś tworzenie okręgu z podaniem środka i punktu, będziesz musiał podać dwa punkty: jeden dla środka, a drugi dla punktu na okręgu.

Argumenty te są również obiektami, można je zaznaczyć, po prostu klikając na nie. Kiedy przesuniesz kursor nad argumentem, którego chcesz użyć do skonstruowania obiektu, wstępny obrazek obiektu zostanie pokazany, więc zobaczysz, jak to będzie wyglądać. Dla obiektów wymagających punktów jako argumentów, możesz umieścić nowy punkt w miejscu aktualnego położenia kursora i wybrać go klikając środkowym przyciskiem myszy.

Zawsze możesz anulować tworzenie nowego obiektu naciskając przycisk &Esc;, albo klikając na przycisk Stop (czerwony ośmiokąt z X) na pasku narzędzi.

Konstruowanie okręgu.
Konstruowanie okręgu

### Zaznaczanie obiektów

Obiekty można zaznaczyć w dwojaki sposób:

- Proste kliknięcie na obiekcie powoduje jego zaznaczenie, przy jednoczesnym wyczyszczeniu bieżącego zaznaczenia. Jeśli chcesz wybrać równocześnie wiele obiektów, przytrzymaj klawisz &Ctrl; podczas klikania na obiekcie.

- Klikając na puste miejsce na ekranie, a następnie przeciągając kursor myszy można zaznaczyć wszystkie obiekty znajdujące się wewnątrz utworzonego w ten sposób prostokąta. Spowoduje to wyczyszczenie aktualnego zaznaczenia. Jak w poprzednim przypadku, przytrzymanie wciśniętego klawisza &Ctrl; pozwoli zachować aktualne zaznaczenie.

Kiedy pod kursorem myszy znajduje się więcej, niż jeden obiekt, łatwo można wybrać, który obiekt zaznaczyć, lub dodać do aktualnego zaznaczenia. Kliknij środkowym przyciskiem myszy kiedy trzymasz wciśnięty klawisz &Shift;, żeby pojawiło się okienko z listą wszystkich obiektów znajdujących się pod kursorem myszy. Następnie możesz wybrać obiekt, którego potrzebujesz. Jak poprzednio wspomniano, klawisz &Ctrl; wpłynie na zaznaczenie.

Zaznaczanie obiektów
Zaznaczanie obiektów

### Przesuwanie obiektów

Aby przesuwać obiekty, musisz je wpierw zaznaczyć.

Jeśli obiekty, które chcesz przesunąć, są zaznaczone, możesz rozpocząć ich przemieszczanie klikając lewym przyciskiem myszy i przeciągając dowolny z nich. Po skończeniu po prostu zwolnij środkowy przycisk myszy.

Dla niektórych typów obiektów (zwłaszcza zdefiniowanych przez skomplikowane zbiory punktów) ich przemieszczanie może odbywać się wolno na starszym sprzęcie. Nie jest to najszczęśliwsze, ale nieuniknione, biorąc pod uwagę wymaganą ilość obliczeń.

Jeżeli klikniesz prawym przyciskiem myszy na jednym z zaznaczonych obiektów i wybierzesz Przesuń, poruszanie myszki spowoduje przesunięcie obiektu. Kiedy obiekt znajdzie się już w pożądanym miejscu, ponowne kliknięcie środkowym przyciskiem myszy zatrzyma przemieszczanie obiektu.

### Usuwanie obiektów

Usuwanie obiektów polega na zaznaczaniu ich wpierw, a następnie:

- Wciśnięciu klawisza Delete.

- Wciśnięciu przycisku usuń na pasku narzędzi.

- Kliknij prawym klawiszem myszy na jednym z obiektów i wybierz Usuń w menu kontekstowym, które się pojawia.

### Pokazywanie i ukrywanie obiektów

W &kig; obiekty mogą być ukryte. Odbywa się to przez wybranie obiektów, kliknięcie prawym przyciskiem myszy na jednym z nich, a następnie wybranie Ukryj z menu kontekstowego, które się pojawi.

Aby odkryć obiekty, użyj Edycja Odkryj wszystkie. Odkryje to wszystkie obecnie ukryte obiekty.

#### Nocny widok

Nocny widok to szczególny sposób pracy z ukrytymi obiektami. Kiedy musisz przesunąć, lub zmienić coś w jednym (lub większej liczbie) z obiektów, ale bez odkrywania wszystkich ukrytych obiektów, tryb nocnego widoku będzie dobrodziejstwem dla Ciebie.

W skrócie, pozwala on zobaczyć wszystkie ukryte obiekty, jak gdyby były one widoczne, więc możesz nimi manipulować w zwykły sposób. W trybie nocnego widoku, ukryte obiekty będą widoczne w szarym kolorze.

Aby przełączyć tryb nocnego widoku, użyj Ustawienia Załóż okulary podczerwone.

### Cofnij/przywróć

W &kig; możesz wycofać prawie każdą zmianę, której dokonałeś w dokumencie. Użyj po prostu przycisków cofinij/przywróć na pasku narzędzi, lub odpowiednich skrótów.

### Tryb pełnoekranowy

&kig; ma również tryb pełnoekranowy. Aby go użyć, kliknij odpowiedni przycisk na pasku narzędziowym, lub wybierz Ustawienia Tryb pełnoekranowy.

Aby opuścić tryb pełnoekranowy, kliknij prawym przyciskiem myszy na ekranie w miejscu, gdzie nie występują obiekty i wybierz Zakończ tryb pełnoekranowy, lub naciśnij klawisz &Esc;.

## Typy obiektów &kig;

&kig; obsługuje całkiem sporą liczbę typów obiektów. Zauważ, że nie wszystkie dostępne obiekty są pokazane na paskach narzędziowych: niektóre z nich mogą być utworzone wyłącznie przy pomocy menu Obiekty w pasku menu. Oczywiście, jak we wszystkich programach &kde;, elementy składowe pasków narzędzi podlegają konfiguracji. Wypróbuj opcję Ustawienia Konfiguracja pasków narzędzi... jeśli chcesz to osiągnąć.

## Użycie zaawansowane

### Menu kontekstowe

&kig; udostępnia menu kontekstowe dla swoich obiektów. Spróbuj kliknąć prawym przyciskiem myszy na obiekcie żeby zobaczyć pojawiające się menu kontekstowe. Istnieje wiele opcji: do konstruowania innych obiektów, ustawienia kolorów, a także ukrywania, przesuwania i usuwania obiektów. Niektóre z obiektów posiadają swoje własne opcje (⪚ możesz przedefiniować pewne punkty ograniczając je do linii, jeśli nie były poprzednio, &etc;). Działanie tych opcji powinno być bardzo proste do zrozumienia.

### Menu kontekstowe dokumentów

Kliknięcie prawym klawiszem myszy na dokumencie (&ie; nie na obiekcie) wyświetli okno, które można użyć do rozpoczęcia tworzenia nowego obiektu, zmiany używanego układu współrzędnych, pokazania ukrytych obiektów, a nawet przybliżania i oddalania widoku dokumentu.

### Definiowanie makr

Jedną z bardziej zaawansowanych cech &kig; jest jego wsparcie makr. Umożliwia to zdefiniowanie nowych typów obiektów z już zdefiniowanych typów.

Na przykład: Zakładamy, że chcesz stworzyć makro do tworzenia okręgu z trzech punktów znajdujących się na nim. Wprowadzisz trzy punkty, skonstruujesz linie prostopadłe i punkty przecięcia aż do znalezienia środka. Teraz możesz użyć istniejącej komendy Utwórz okrąg na podstawie środka i punktu (używając jednego z tych trzech punktów jako punktu dla polecenia). Następujący obrazek powinien to nieco rozjaśnić:

Testowanie działania makr
Testowanie działania makr

Następne w kolejce jest definiowanie makra. Wybierz Nowe makro z menu Typ, lub kliknij na przycisku z paska narzędzi. Pojawi się Asystent, który poprosi o zaznaczenie podanych obiektów. W naszym przykładzie są to te trzy punkty. Zaznacz je (kliknij, żeby zaznaczyć, kliknij ponownie, żeby usunąć zaznaczenie), a potem kliknij przycisk Dalej, żeby kontynuować. Na koniec, zaznacz ostatnie obiekty (w naszym przykładzie będzie to okrąg).

Asystent makr
Asystent makr

Po zakończeniu poprzednich kroków, kliknij przycisk Dalej. Wprowadź nazwę i opcjonalny opis dla nowego typu, po czym kliknij przycisk Zakończ. Tworzenie typu makro zostało zakończony.

Aby użyć nowego typu makra, kliknij na jego przycisk na pasku narzędzi, lub użyj menu Obiekty. Konstruowanie obiektu makro odbywa się dokładnie tak, jak każdego innego obiektu.

Użycie nowego typu
Użycie nowego typu

### Praca z typami

Jak można było zobaczyć w poprzednim rozdziale, &kig; pozwala na tworzenie własnych obiektów. &kig; zapewnia również, że po utworzeniu obiektu, zostaje on zapisany przy wyjściu i wczytany na starcie. Nie musisz ręcznie zapisywać, ani wczytywać definicji makr. Jednakże &kig; udostępnia znaczniej więcej możliwości makr. Po wybraniu z menu Typy Zarządzaj typami..., zobaczysz okno, w którym możesz edytować swoje typy. Pozwala to modyfikować istniejące typy, usuwać nieużywane typy, eksportować je do pliku, a także wczytywać z innego pliku.

Okno edycji typów
Okno edycji typów

### Etykiety tekstowe

&kig; pozwala dodawać etykiety tekstowe do konstrukcji. Jest to bardzo użyteczne przy dodawaniu nazw, wyjaśnień, lub innego tekstu do obiektów. &kig; może również wyświetlać zmienne informacje na temat obiektów (znane również jako właściwości).

Aby rozpocząć tworzenie etykiety tekstowej, po prostu wciśnij przycisk Etykieta tekstowa na pasku narzędzi &kig;, lub wybierz na pasku menu Obiekty Inne Etykieta tekstowa .

Następnie, musisz wybrać położenie dla etykiety. Możesz wybrać albo losowe położenie, albo dołączenie etykiety do obiektu.

Dołączanie etykiety do okręgu...
Dołączanie etykiety do okręgu...

Po wybraniu umiejscowienia etykiety, pojawia się okno etykiety tekstowej. Tutaj można w wpisać tekst, który ma się pojawiać w etykiecie, po czym kliknąć Zakończ. Powinieneś już widzieć etykietę w dokumencie.

Okno dialogowe etykiety tekstowej
Okno dialogowe etykiety tekstowej

Poprzedni przykład był dość prosty, do tego ograniczony do tekstu. Jednak istnieje również wsparcie dla pokazywania zmiennych informacji na temat obiektu w etykiecie (⪚ można stworzyć etykietę z tekstem ten segment jest długi na %1 jednostek., gdzie %1 będzie dynamicznie zastąpiony przez długość określonego segmentu).

Aby tego dokonać, wprowadź tekst z pewną liczbą miejsc do zastąpienia (%1, %2 &etc;) w nim. Następnie wciśnij przycisk Dalej. Jeśli później będziesz chciał zmienić tekst, lub zmienne, będziesz mógł się cofnąć przy użyciu przycisku Wstecz.

Asystent pokaże tekst, który wpisałeś, ze wszystkimi miejscami do zastąpienia zamienionymi przez coś w stylu argument 1. Wybranie właściwości powiązanej z pewnym argumentem odbywa się przez kliknięcie na ten argument. Następnie trzeba kliknąć na obiekt, którego potrzebujesz i który posiada daną właściwość, żeby potem wybrać tą właściwość z menu, które się pojawi. Na przykład w powyższym przypadku, trzeba kliknąć na argument 1, kliknąć na właściwym segmencie w głównym oknie &kig; i wybrać właściwość Długość. Później można wypełnić resztę zmiennych pozycji, lub wybrać kolejną właściwość dla jednej ze zmiennych, jeśli chce się ją zmienić. Kiedy jest się gotowym, należy kliknąć na przycisk Zakończ, który dokończy proces tworzenia etykiety tekstowej.

Wybieranie właściwości dla zmiennej części
Wybieranie właściwości dla zmiennej części

### Zbiory punktów

&kig; obsługuje użycie zbiorów punktów. Miejsce geometryczne jest zdefiniowane matematycznie jako zbiór punktów, lub linii, które spełniają, lub są określone przez pewne warunki, jak zbiór punktów jednakowoodległych od pewnego punktu jest okręgiem. Spójrzmy na przykład jak można użyć miejsca geometryczne w &kig;:

Rozważ następującą konstrukcję geometryczną: Rysujemy okrąg, a następnie punkt, który może się poruszać tylko po jego obwodzie (utwórz ten punkt umieszczając kursor na okręgu, a następnie klikając środkowym przyciskiem myszy. Jeśli później spróbujesz przesunąć wynikowy punkt, zobaczysz, że nie możesz przemieścić go w miejsce poza okręgiem). Następnie rysujemy odcinek pomiędzy tym punktem, a środkiem okręgu i środek tego odcinka.

Prosta konstrukcja z wykorzystaniem zbioru punktów
Prosta konstrukcja z wykorzystaniem zbioru punktów

Teraz, kiedy przesuniesz punkt, który został ograniczony do okręgu, zobaczysz, że drugi punkt porusza się wraz z nim. Gdybyś przytrzymał pióro na drugim punkcie i przesunął pierwszy punkt wzdłuż całego okręgu, nowy okrąg, o połowę mniejszy od poprzedniego zostałby narysowany. Ścieżka, którą przemieszcza się drugi punkt, podczas gdy pierwszy porusza się wokół okręgu, jest jego zbiorem punktów.

Właściwie konstruowanie zbioru punktów jest bardzo proste. Kliknij na przycisk zbiór punktów na pasku narzędzi, lub wybierz Obiekty Inne Zbiór punktów z paska menu. Następnie wybierz ograniczony punkt jako ruchomy punkt (tekst Ruchomy punkt pojawi się kiedy przesuniesz nad niego myszkę), a ten drugi jako zależny punkt. Zbiór punktów zależnego punktu zostanie narysowany.

## Skrypty

&kig; pozwala na tworzenie własnych typów w języku skryptowym Python. Jest to bardzo zaawansowana cecha, a z tego, co wiem, tylko jeden inny program geometrii interaktywnej posiada podobną funkcjonalność (program GNOME &drgeo;).

Skrypty Pythona w &kig; generalnie pozwalają na tworzenie własnych obiektów z obiektów-rodziców. Na przykład, jeśli jesteś nauczycielem matematyki i masz ekstrawagancki sposób wyliczania interesującego punktu na stożku, to zamiast babrać się w makrach i złożonych konstrukcjach, możesz zapisać w Pythonie jak ten punkt ma być wyliczany, a &kig; Ci go pokaże.

Zakładając, że nie miałeś pojęcia o wbudowanym w &kig; typie Środkowy punkt, a chciałeś pokazać punkt leżący pośrodku dwóch innych punktów. Kliknąłbyś wtedy na przycisku Skrypt Pythona na pasku narzędzi, lub wybrał z menu Obiekty Inne Skrypt Pythona. Wtedy zostałby Ci przedstawiony asystent, który poprowadziłby Cię dalej.

Asystent obiektów skryptowych
Asystent obiektów skryptowych

Pierwszą rzeczą, jaką musisz zrobić, jest wybranie argumentów dla obiektu skryptowego. W naszym przykładzie oznacza to dwa punkty, dla których chcemy pokazać środkowy punkt. Wybierz je w głównym oknie &kig; i kliknij na Dalej.

Zostaje Ci zaprezentowane okienko edycji tekstu, gdzie możesz wpisać kod dla Twojego obiektu skryptowego. Szablon kodu i kilka komentarzy znajdują się już na miejscu. Ważne jest upewnienie się, że Twój kod jest poprawnym kodem Pythona. Ludzie obeznani z Pythonem zwrócą uwagę, że tak właściwie to definiujemy funkcję Pythona o nazwie `calc`. Dlatego niezbędne jest dostosowanie się do reguł Pythona definiowania funkcji. Na przykład, każda linia funkcji powinna rozpoczynać się Tab. Pierwsza linia, która nie rozpoczyna się tab określa koniec definicji funkcji.

Funkcja Pythona, którą chcemy zdefiniować, nazywa się `calc` i w naszym przypadku akceptuje dwa argumenty. Są to obiekty wybrane jako argumenty w poprzednim ekranie. Potrzeba takiej liczby argumentów, jaką tam wybrano. Ich nazwy to arg1 i arg2, ale można zmienić ich nazwy na coś bardziej znaczącego.

W ciele funkcji można dokonywać wszelkiego rodzaju obliczeń, które uzna się za niezbędne, przy użyciu w razie potrzeby dwóch argumentów. Powinno się zwracać obiekt, który chce się zdefiniować. W naszym przypadku, jest to obiekt Point (Punkt). Dwa argumenty również są obiektami Point, a my możemy użyć funkcji `Point.coordinate()` do określenia współrzędnych dwóch podanych punktów.

W naszym przykładzie niezbędne obliczenia są bardzo proste, po prostu dodajemy dwa zbiory współrzędnych i dzielimy przez dwa. Następnie tworzymy nowy punkt przy użyciu wyniku. Kod Pythona to:

    def calc( a, b ):
    m = ( a.coordinate() + b.coordinate() ) / 2;
    return Point( m )

Wpisywanie kodu
Wpisywanie kodu dla punktu środkowego w asystencie obiektów skryptowych.

Jeżeli teraz klikniesz na przycisk Zakończ, nowy obiekt pojawi się w dokumencie &kig;. Kiedy przesuniesz jeden z punktów, nowoutworzony obiekt przesunie się wraz z nim. Znacznie potężniejsze obiekty mogą zostać zbudowane w ten sposób. Zachęcamy do wypróbowania.

Stworzony obiekt skryptowy
Nowoutworzony obiekt skryptowy.

Wszystkie obiekty w &kig; mogą być użyte w kodzie Pythona. Jak widzieliśmy powyżej, punkty są obiektami klasy Point i można użyć ⪚ metody `Point.coordinate()`. Można również zwracać wszystkie rodzaje obiektów, nie tylko Point. Znacznie więcej klas i metod jest dostępnych w kodzie Pythona &kig;, a bardziej kompletna lista znajduje się na stronie &kig;.

## Cechy &kig;

- &kig; to program z otwartym kodem źródłowym. Oznacza to, że możesz swobodnie go używać, a także zmieniać w sposób, jaki Ci się podoba. Rozprowadzanie &kig; jest obarczone kilkoma restrykcjami, generalnie każdy powinien posiadać te same prawa do używania &kig;, włączając Twoje modyfikacje, jak Ty czy ja.

  Programy wolnego oprogramowania są tworzone w bardzo otwartym duchu, a ich autorzy zwykle bardzo szybko reagują na opinie użytkowników. Dlatego, jeśli masz jakieś pytania, uwagi, lub też cokolwiek na temat &kig;, daj o tym znać autorowi na adres toscano.pino@tiscali.it.

- &kig; jest programem KPart, co znaczy, że możesz włączyć go do innego oprogramowania &kde;. Jeżeli otwierasz plik `.kig` w &konqueror-miejscownik;, może być on otwarty bezpośrednio w oknie &konqueror-dopelniacz; bez potrzeby uruchamiania zewnętrznego programu.

- Praca z &kig; powinna być bardzo prosta. Konstruowanie obiektów jest łatwe i interaktywne, z wyświetlaniem wstępnych wyników, &etc;. Przesuwanie, zaznaczanie i budowanie działa tak, jak można by tego oczekiwać. Wsparcie dla cofania powinno również być bardzo intuicyjne.

- &kig; wspiera definiowanie makr w bardzo prosty sposób. Obiekty te są przedstawiane użytkownikowi jak normalne obiekty. Są zapisywane przy wychodzeniu i wczytywane przy starcie, więc nie traci się ich przy kończeniu pracy. Można zarządzać tymi obiektami w oknie dialogowym Zarządzaj typami (zobacz ). Można eksportować je do plików, importować je z plików, edytować i je usuwać.

- &kig; zapisuje dane w czystym formacie &XML;.

- &kig; wspiera tworzenie zbiorów punktów.

- &kig; umożliwia eksport pliku &kig; do niektórych interesujących formatów, jak obrazki, pliki XFig i LaTeX, obrazki wektorowe SVG. Jest to użyteczne, bo jeszcze nie wszystkie programy wspierają format plików &kig;.

- &kig; posiada bardzo elastyczny system przekształceń.

- &kig; stara się być kompatybilny ze swoimi konkurentami. Dlatego obsługuje format &kgeo;, &kseg; i częściowo &drgeo; oraz &cabri;. Co więcej, planowana jest obsługa innych formatów.

## Pytania i odpowiedzi

&reporting.bugs;&updating.documentation;

## Podziękowania i licencja

&kig;

&kig; copyright 2002-2004 Dominique Devriese devriese@kde.org

Documentation copyright 2002-2004 Dominique Devriese devriese@kde.org.

Documentation copyright 2004-2005 Pino Toscano toscano.pino@tiscali.it.

Przejrzane przez &Philip.Rodrigues; &Philip.Rodrigues.mail;.

Robert Gomułkacarramba@epf.pl

&underFDL; &underGPL;

## Instalacja

### Jak zdobyć &kig;

&install.intro.documentation;

### Kompilacja i instalacja

&install.compile.documentation;

## Wkład

### Wolne oprogramowanie

&kig; jest Wolnym Oprogramowaniem. Oznacza to, że kod źródłowy jest wolnodostępny na Internecie, a każdy może go używać, czytać, modyfikować i rozpowszechniać. Pracę nad nim traktuję jako moje hobby i nauczyłem się już sporo na temat programowania, C++, &kde;/&Qt;, matematyki, współpracy w oprogramowaniu i projektów z otwartym kodem źródłowym w jej trakcie.

### Wkład

W tym rozdziale chciałbym wskazać Ci (użytkownikowi) prawa, które daje Ci licencja &kig;. Jak z całym wolnym oprogramowaniem, możesz (a nawet jesteś zachęcany) poprawiać błędy znalezione podczas jego użytkowania, dodawać brakującą funkcjonalność, rozpowszechniać zmieniony program, a także wysyłać mi zmiany na adres toscano.pino@tiscali.it, żebym mógł włączać je w kolejnych wersjach, żeby i inni czerpali z tego satysfakcję. Zwróć uwagę, że ja osobiście nie mam jakiegokolwiek interesu finansowego w tym projekcie.

Jeśli nie jesteś pewien swoich praw dotyczących użytkowania tego oprogramowania, lub też prawa innych osób do używania jakichkolwiek zmian, których w nim dokonałeś, &etc;, przeczytaj licencję. Możesz ją znaleźć w pliku `COPYING` w drzewie plików &kig;, lub zakładce licencja w oknie dialogowym O Kig.

### Jak wnieść swój wkład?

Wszyscy współpracownicy są mile widziani. Jeżeli nie lubisz ikon, albo myślisz, że podręcznik użytkownika wymaga aktualizacji, albo posiadasz to cudowne makro, którym chciałbyś się podzielić ze światem, nie wahaj się i skontaktuj ze mną. Zwróć uwagę, że Twój wkład zostanie rozpowszechniony na warunkach &GNU; GPL; możesz znaleźć warunki tej licencji w pliku `COPYING` w drzewie &kig;, a także w rozdziale Podziękowania i licencja w tym podręczniku.

&documentation.index;