XML brukergrensesnitt språk

XML User Interface Language ( XUL ) er et XML- basert beskrivelsesspråk for grafiske brukergrensesnitt (GUI). Den ble opprinnelig utviklet for Mozilla- prosjektet, men brukes nå også av annen programvare. I Mozilla- applikasjoner som Firefox , Thunderbird , SeaMonkey eller Netscape genereres hele brukergrensesnittet fra XUL-filer. Den Gecko rendering motoren er brukt, som også brukes til å vise websider .

kjennetegn

XUL tillater separasjon av layout , design og kode for et brukergrensesnitt. Oppsettet og dermed den grove strukturen til brukergrensesnittet (som knapper , inndatafelt og andre kontrollelementer ) er definert i XUL, mens presentasjonen (spesifikke skrifttyper, farger, linjestiler osv.) Er definert med CSS . Ulike temaer (såkalte skins ), også for å simulere utseendet til forskjellige operativsystemer, kan da opprettes relativt enkelt ved å endre CSS-stilene.

Fordi XUL-filer ikke er kompilert, men snarere tolket ved kjøretid, er det også mulig for brukere å redigere og utvide brukergrensesnittet etter eget ønske, noe som i Mozilla-programmer i utgangspunktet også kan gjøres automatisk ved hjelp av installerbare tillegg . Dette var mulig, for eksempel i Firefox-nettleseren opp til versjon 56, siden da har bare utvidelser fungert som bruker det mer moderne, men mer begrensende WebExtensions- formatet.

Opprettelsen av nye grensesnitt i XUL er enklere og mindre tidkrevende enn med mange programmeringsspråk. Ved en port til et bestemt operativsystem - plattform portet må hele Mozilla XUL-verktøysettet på den nye plattformen. Til gjengjeld, etter slik portering, krever ikke XUL-baserte programmer lenger spesielle justeringer, noe som i stor grad forenkler utviklingen av applikasjoner som er uavhengige av operativsystemet.

Ulempen er at prosesserings- og visningshastigheten ofte er tregere enn med native brukergrensesnitt på grunn av den ekstra innsatsen som er involvert i behandlingen av XUL- filene og de nødvendige beregningene av layout og utseende. Siden operativsystemspesifikke kontroller må simuleres ved hjelp av CSS, kan det være forskjeller i utseendet og oppførselen til brukergrensesnittet sammenlignet med native programmer.

Struktur av en XUL-fil

En enkel XUL-fil kan se slik ut:

<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window id="sample-window"
        title="Beispiel"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
    <vbox>
        <checkbox label="CheckBox"/>
        <hbox>
            <spacer flex="1"/>
            <button label="OK"/>
            <button label="Abbrechen"/>
        </hbox>
    </vbox>
</window>
Representasjon i Mozilla Firefox

XUL-baserte applikasjoner

Referanser på Ghostbusters

Forkortelsen XUL har sin opprinnelse i filmen Ghostbusters , der halvgudånden, som har overtatt Dana Barrett, hevder at det ikke er noen Dana, det er bare Zuul. Utviklerne av XUL adopterte denne setningen litt modifisert da Det er ingen data, det er bare XUL. og pekte dermed på den uvanlige egenskapen til XUL som et XML-språk som ikke inneholder data eller dokumenter, men som beskriver et brukergrensesnitt.

Ytterligere referanser til filmen Ghostbusters kan være på XML - namespace - URI http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul read, som ligger i begynnelsen av hver XUL-fil. Hovedmestere og portvoktere refererer også til figurer fra filmen her. Hvis du ringer opp adressen i nettleseren, vises den tidligere nevnte setningen Det er ingen data, det er bare XUL vises.

I Mozilla- programvare er det ikke bare referanser til "Ghostbusters" i XUL. Også Venkman , JavaScript - feilsøkingsprogrammet Prosjektet, oppkalt etter et tegn i Ghostbusters.

Teknikker med lignende konsept

Det er nå andre XML-baserte formater som beskriver et brukergrensesnitt, noe som betyr at den navngitte XUL-egenskapen ikke lenger er så uvanlig i dag (se forrige kapittel):

Se også

litteratur

Bøker

gjenstander

weblenker

IDE

Mozilla Developer Center

Andre

Individuelle bevis

  1. Overleggsutvidelser. Tilgang 30. august 2019 .
  2. Komme i gang med JavaFX: Bruke FXML til å lage et brukergrensesnitt | JavaFX 2 opplæring og dokumentasjon. Hentet 26. januar 2018 .