Hallo Ingo,
gerade, ist mir aufgefallen, daß es unter den Archiven in /usr/lib/mozilla/chrome kein JavaScript gibt, welches die Funktion definiert. Jedenfalls wird in der browser.js des FF (sitze selbst gerade an einer zu gestaltenden Oberfläche für FF) die Funktion definiert:
function toggleSidebar(aCommandID, forceOpen) {
var sidebarBox = document.getElementById("sidebar-box");
if (!aCommandID)
aCommandID = sidebarBox.getAttribute("sidebarcommand");
var elt = document.getElementById(aCommandID);
var sidebar = document.getElementById("sidebar");
var sidebarTitle = document.getElementById("sidebar-title");
var sidebarSplitter = document.getElementById("sidebar-splitter");
if (!forceOpen && elt.getAttribute("checked") == "true") {
elt.removeAttribute("checked");
sidebarBox.setAttribute("sidebarcommand", "");
sidebarTitle.setAttribute("value", "");
sidebarBox.hidden = true;
sidebarSplitter.hidden = true;
content.focus();
return;
}
var elts = document.getElementsByAttribute("group", "sidebar");
for (var i = 0; i < elts.length; ++i)
elts[i].removeAttribute("checked");
elt.setAttribute("checked", "true");;
if (sidebarBox.hidden) {
sidebarBox.hidden = false;
sidebarSplitter.hidden = false;
}
var url = elt.getAttribute("sidebarurl");
var title = elt.getAttribute("sidebartitle");
if (!title)
title = elt.getAttribute("label");
sidebar.setAttribute("src", url);
sidebarBox.setAttribute("src", url);
sidebarBox.setAttribute("sidebarcommand", elt.id);
sidebarTitle.setAttribute("value", title);
if (aCommandID != "viewWebPanelsSidebar") { // no searchbox there
// if the sidebar we want is already constructed, focus the searchbox
if ((aCommandID == "viewBookmarksSidebar" && sidebar.contentDocument.getElementById("bookmarksPanel"))
|| (aCommandID == "viewHistorySidebar" && sidebar.contentDocument.getElementById("history-panel")))
sidebar.contentDocument.getElementById("search-box").focus();
// otherwiese, attach an onload handler
else
sidebar.addEventListener("load", asyncFocusSearchBox, true);
}
}
Es ist also möglich mittels getElementById() auf das XUL-Objekt "broadcaster" zuzugreifen und die Eigenschaft hidden in einer if-Anweisung abzufragen.
Als Dokumentation habe ich bis jetzt die sites http://www.xulplanet.com/ und http://www.mozilla.org/projects/xul/ genutzt.
Gruß aus Berlin!
eddi
--
Ja - ich gebe manchmal Lösungen auf dem silbernen Tablett und
Nein - sie werden dennoch nicht den Schlag vor den Kopf mit dem goldenen abwehren ;)
Ja - ich gebe manchmal Lösungen auf dem silbernen Tablett und
Nein - sie werden dennoch nicht den Schlag vor den Kopf mit dem goldenen abwehren ;)