return args;
}
+/**
+ * Draw the graph.
+ * @param {Object} element the display element
+ * @param {Object} data the data to be shown
+ * @param {Object} options the options hash.
+ */
Index.draw = function(element, data, options) {
element.innerHTML = "";
element.removeAttribute("style");
messages.textContent = messages.textContent + text + "\n";
}
+/**
+ * Start up the palette system.
+ */
Index.start = function() {
var variables = Index.splitVariables();
- var sampleName = variables["sample"];
- if (!(sampleName)) {
- sampleName = "interestingShapes";
- }
+ var sampleName = variables["sample"] || "interestingShapes";
var sampleIndex = Samples.indexOf(sampleName);
var sample = Samples.data[sampleIndex];
var data = sample.data;
Index.draw(document.getElementById("graph"), data, palette.read());
}
+ // Selector is the drop-down for selecting a set of data.
+
+ // Popupate the selector with the set of data samples
var selector = document.getElementById("selector").getElementsByTagName("select")[0];
for (var idx in Samples.data) {
var entry = Samples.data[idx];
window.location = url;
}
selector.selectedIndex = sampleIndex;
+
+ // Palette contains the widget that builds options.
var palette = new Palette();
palette.create(document, document.getElementById("optionsPalette"));
palette.write(sample.options);
palette.onchange = redraw;
palette.filterBar.focus();
+
redraw();
+ // Find all new options which we don't implement here in the palette.
for (var opt in Dygraph.OPTIONS_REFERENCE) {
if (!(opt in opts)) {
var entry = Dygraph.OPTIONS_REFERENCE[opt];