* GNU Library General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* GNU Library General Public License for more details.
*
* You should have received a copy of the GNU General Public License
/* Write the string MSG to the `trace' element, if there is one. */
var e = elt('trace');
if (e !== null) e.textContent += msg;
}
/* Write the string MSG to the `trace' element, if there is one. */
var e = elt('trace');
if (e !== null) e.textContent += msg;
}
/* Add the class name CLS to element ELT's `class' attribute. */
if (!elt.className.match('\\b' + cls + '\\b'))
elt.className += ' ' + cls
}
/* Add the class name CLS to element ELT's `class' attribute. */
if (!elt.className.match('\\b' + cls + '\\b'))
elt.className += ' ' + cls
}
/* Remove the class name CLS from element ELT's `class' attribute. */
elt.className = elt.className.replace(
new RegExp ('\\s*\\b' + cls + '\\b\\s*'), ' ');
}
/* Remove the class name CLS from element ELT's `class' attribute. */
elt.className = elt.className.replace(
new RegExp ('\\s*\\b' + cls + '\\b\\s*'), ' ');
}
/*----- Conversion machinery ----------------------------------------------*/
/* An exception, thrown if a conversion function doesn't like what it
* sees.
*/
/*----- Conversion machinery ----------------------------------------------*/
/* An exception, thrown if a conversion function doesn't like what it
* sees.
*/
/*----- User interface functions ------------------------------------------*/
/* A list of input fields which might need periodic kicking. */
var KICK_INPUT_FIELDS = [];
/*----- User interface functions ------------------------------------------*/
/* A list of input fields which might need periodic kicking. */
var KICK_INPUT_FIELDS = [];
/* Bind an input field (with the given ID) to a DEP, converting the user's
* input with the CONVERT function.
*/
/* Bind an input field (with the given ID) to a DEP, converting the user's
* input with the CONVERT function.
*/
e.addEventListener('click', kick_soon, false);
e.addEventListener('blur', kick_soon, false);
e.addEventListener('keypress', kick_soon, false);
e.addEventListener('click', kick_soon, false);
e.addEventListener('blur', kick_soon, false);
e.addEventListener('keypress', kick_soon, false);
/* Bind a radio button (with the given ID) to a DEP. When the user frobs
* the button, set the dep to the element's `value' attribute.
*/
var e = elt(id);
/* Bind a radio button (with the given ID) to a DEP. When the user frobs
* the button, set the dep to the element's `value' attribute.
*/
var e = elt(id);
// Make sure we're actually chosen. We get called periodically
// regardless of user input.
if (e.checked) dep.set_value(e.value);
// Make sure we're actually chosen. We get called periodically
// regardless of user input.
if (e.checked) dep.set_value(e.value);
e.addEventListener('click', kick_soon, false);
e.addEventListener('changed', kick_soon, false);
e.addEventListener('click', kick_soon, false);
e.addEventListener('changed', kick_soon, false);
/* Bind a DEP to an output element (given by ID), converting the dep's
* value using the CONVERT function.
*/
/* Bind a DEP to an output element (given by ID), converting the dep's
* value using the CONVERT function.
*/
window.addEventListener('load', kick_all, false);
/*----- That's all, folks -------------------------------------------------*/
window.addEventListener('load', kick_all, false);
/*----- That's all, folks -------------------------------------------------*/