Repository URL to install this package:
Version:
9.0~240807-1.fc42 ▾
|
function on_see_also(see_also)
{
var idx = see_also.indexOf("#");
if ( idx > -1 )
see_also = see_also.substring(idx+1,see_also.length);
var entry = find_entry_el(document.getElementById('DIV_' + see_also));
if ( entry )
{
set_entry_state(entry, true);
entry.scrollIntoView();
}
}
function find_parent_with_class(el, klass)
{
while ( el )
{
if ( el.className && el.className.indexOf(klass) > -1 )
return el;
el = el.parentNode;
}
}
function find_child_with_class(el, klass)
{
return el.querySelector("." + klass);
}
function find_entry_el(el) { return find_parent_with_class(el, "example-entry"); }
function find_expander(entry_el) { return find_child_with_class(entry_el, "expander"); }
function find_collapser(entry_el) { return find_child_with_class(entry_el, "collapser"); }
function set_entry_state(entry_el, expanded)
{
var collapser_el = find_collapser(entry_el);
var expander_el = find_expander(entry_el);
collapser_el.style.display = expanded ? "" : "none";
expander_el.style.display = expanded ? "none" : "";
if ( expanded )
entry_el.classList.remove("collapsed-entry");
else
entry_el.classList.add("collapsed-entry");
}
function handle_click(e)
{
e = e || window.event;
var el = e.target || e.srcElement;
var entry_el = find_entry_el(el);
var ok = false;
if ( el.classList.contains("collapser") )
set_entry_state(entry_el, false);
else if ( el.classList.contains("expander") )
set_entry_state(entry_el, true);
else if ( el.classList.contains("ex_link") ) // see also
on_see_also(el.href);
else
return;
e.stopPropagation();
}
function handle_toplevel_action(e)
{
e = e || window.event;
var el = e.target || e.srcElement;
var expanded = el.classList.contains("expand-all");
var els = document.getElementsByClassName("example-entry");
for ( var idx = 0, n = els.length; idx < n; ++idx )
set_entry_state(els[idx], expanded);
e.stopPropagation();
}