Ostatnio dość szczegółowo się zająłem językiem XUL. Poniżej chciałbym przedstawić więcej szczegółów dotyczących tego języka opracowanego przez Mozillę. W tym poście zajmę się podstawową składnią pliku XUL-a. Utworzę okno z dwoma przyciskami. Najpierw może kilka wiadomości, czym jest ten XUL
.
Otóż, XUL to XML User Interface Language (wymowa “zul”). Jego możliwości to tworzenie interfejsów użytkownika aplikacji WWW. W ramach pliku .xul możliwe jest tworzenie m.in. przycisków, pasków przewijania, opcji i list. Posiada on oczywiście o wiele szersze zastosowanie, wymieniłem tylko pierwsze, które mi się nasunęły. Znaczniki użyte w XUL-u stanowią różne elementy interfejsu użyte do tworzenia interfejsu graficznego. Swój przykład okna dialogowego nazwę dwaprzyciski.xul, dodam, że wszystkie przykłady sprawdziłem w edytorze XUL, o którym pisałem ostatnio.
Każdy plik XUL-a posiada kilka podstawowych elementów, które należy zdefiniować. Poniżej składnia podstawowego okna pliku napisanego w XUL-u:
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window
id="twobutton-window"
title="Dwa przyciski"
orient="horizontal"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
...
</window>
Ok, co jest, co. Czyli omówię po linia po linii, co powyższy fragment kodu znaczy.
W pierwszej linii <?xml version="1.0"?> został zadeklarowany język XML w wersji 1.0. W drugiej linii deklarujemy ścieżkę do szablonu, ze składni widać, że znajduje się on w chrome. Kolejnym fragmentem kodu jest znacznik <window, w którym możemy umieścić wiele atrybutów. W moim przykładzie atrybutami są id, title, orient oraz xmlns. Oznaczają one odpowiednio:
- id to unikalny identyfikator okna, jego nazwa nie może być ponownie użyta w tej samej aplikacji.
- title to tytuł, jaki pojawi się w oknie aplikacji w pasku tytułu.
- orient określa położenie elementów w aplikacji (o ułożeniu elementów postaram się napisać w jednym, z kolejnych postów na moim blogu).
- xmlns to przestrzeń nazw, z jakiej korzysta znacznik window.
No dobra pozostało już tylko zamknąć sam znacznik window oraz umieścić na końcu kodu zamknięcia otwartego znacznika window. W kodzie powyżej, użyłem trzech kropek do zaznaczenia miejsca, w którym możemy umieszczać dowolne elementy interfejsu naszego okna. Na koniec wszystko musimy zapisać do pliku dwaprzyciski.xul i podejrzeć w osobnym oknie edytora XUL-a. Za wiele na nim nie zobaczymy, więc dodajmy w końcu jakieś pierwsze elementy tworzonego okna. Będą to dwa przyciski, które się pojawią w miejscu aktualny trzech kropek.
Do utworzenia wspomnianych przycisków, będzie nam służył znacznik button, którego także rozszerzymy o atrybuty: label oraz id. Znaczenie atrybutu id, jest taki sam jak w przypadku znacznika window. Natomiast label pozwala nam określić tekst, który zostanie wyświetlony na przycisku. Teraz pora na kod, jaki należy wstawić w miejsce trzy kropka!
<button id="first-button" label="Pierwszy"/>
<button id="second-button" label="Drugi"/>
I … Oto efekt wstawienia powyższego kodu do edytora.

Poniżej znajduje sie nasze pierwsze okienko dialogowe utworzone w XUL,

Na początek to tyle, postaram się jak najszybciej opisać więcej możliwości plików XUL-a. Więcej można znaleźć na stronie Kursu XUL z polskiej wersji strony MDC lub jej angielskiego odpowiednika. Zaznaczam, że wersja pl, jest nadal tłumaczona i proszę nie brać zawartej tam treści jako w pełni poprawnej. Gdyż mogą w niej występować jakieś pomyłki
.