Příloha B. Navigační rozhraní

Obsah

Navigační modul pro Mozillu
Servlet sloužící jako dotazovací modul

Navigační modul pro Mozillu

Aby měl navigační modul přístup k hlavnímu oknu prohlížeče, ze kterého zjišťuje informace o právě načtené stránce, musíme navigační panel nainstalovat pomocí instalační technologie XPInstall. Kvůli chybě v Mozille je instalace trochu krkolomná, nicméně funkční. Postup je následující:

  1. Nainstalujte si prohlížeč Mozilla z adresy http://www.mozilla.org. Rozhraní bylo testováno s verzí 0.9.9. Verze 1.0 RC1 obsahuje chybu, kvůli které navigační panel nefunguje. Čistě teoreticky by mělo vše fungovat s libovolnou verzí Mozilly, ale prakticky je to odzkoušené jen s verzí 0.9.9.

  2. V Mozille si otevřete adresu http://rainbow.vse.cz:8000/rainbow/rainbow.xpi. Prohlížeč se zeptá, zda může instalovat software. Po potvrzení a instalaci restartujte Mozillu.

  3. Vyberte příkaz z menu Tasks->RAINBOW Add Panel. Opět restartujte Mozillu.

  4. V postraním pruhu by měl být vidět další panel – RAINBOW. Funguje zcela automaticky, stačí zcela klasicky brouzdat po stránkách a do několika sekund po načtení nové stránky by se měly objevit i informace o stránce v panelu.

Příklad B.1. Navigační panel pro Mozillu

<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>

<window xmlns=
  "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">

<script type="application/x-javascript">

// base URL of xulservlet
var baseUrl = "http://rainbow.vse.cz:8000/rainbow/xulservlet?url="

// old URL
var oldUrl = "";
var newUrl = ""

// reload results when displayed page is changed
function update()
{
  newUrl = window._content.location;
  
  if (newUrl != oldUrl)
  {
    oldUrl = "" + newUrl;	// make copy, not reference
    document.getElementById('results').
      setAttribute('src', baseUrl + newUrl);
 }
}

var timer = window.setInterval("update()", 1000);

</script>

<iframe id="results" src="about:blank" flex="1" />

</window>