Mercurial > hg > webaudioevaluationtool
changeset 2159:c9b4baa764dc
Test create fixes for #1594. Styling of survey entry options. Fixed survey entry leak. Removed "synchronous" attribute from page for now.
author | Nicholas Jillings <nickjillings@users.noreply.github.com> |
---|---|
date | Mon, 14 Mar 2016 13:36:43 +0000 |
parents | b4d6552aecb7 |
children | 8ca724deb572 |
files | test-schema.xsd test_create/style.css test_create/test_core.js |
diffstat | 3 files changed, 37 insertions(+), 17 deletions(-) [+] |
line wrap: on
line diff
--- a/test-schema.xsd Mon Mar 14 12:34:36 2016 +0000 +++ b/test-schema.xsd Mon Mar 14 13:36:43 2016 +0000 @@ -70,7 +70,6 @@ <xs:attribute name="randomiseOrder" type="xs:boolean" default="false"/> <xs:attribute name="repeatCount" type="xs:nonNegativeInteger" default="0"/> <xs:attribute name="loop" type="xs:boolean" default="false"/> - <xs:attribute name="synchronous" type="xs:boolean" default="false"/> <xs:attribute name="showElementComments" type="xs:boolean" default="false"/> <xs:attribute name="loudness" type="xs:nonPositiveInteger" use="optional"/> <xs:attribute name="label" use="optional" default="default">
--- a/test_create/style.css Mon Mar 14 12:34:36 2016 +0000 +++ b/test_create/style.css Mon Mar 14 13:36:43 2016 +0000 @@ -132,4 +132,17 @@ } input:disabled+label{ text-decoration: line-through; +} + +div.survey-entry-attribute { + margin: 10px 0px; + border: 1px gray solid; + border-radius: 5px; + height: 40px; + line-height: 40px; + padding: 0px 10px; +} + +div.survey-entry-attribute span{ + margin-right: 10px; } \ No newline at end of file
--- a/test_create/test_core.js Mon Mar 14 12:34:36 2016 +0000 +++ b/test_create/test_core.js Mon Mar 14 13:36:43 2016 +0000 @@ -728,10 +728,12 @@ this.dynamic.innerHTML = null; var statement = document.createElement("div"); var statementText = document.createElement("span"); - var statementEntry = document.createElement("textarea"); + var statementEntry = document.createElement("input"); statement.appendChild(statementText); statement.appendChild(statementEntry); + statement.className = "survey-entry-attribute"; statementText.textContent = "Statement/Question"; + statementEntry.style.width = "500px"; statementEntry.addEventListener("change",this,false); statementEntry.setAttribute("name","statement"); statementEntry.value = this.option.statement; @@ -742,6 +744,7 @@ var idEntry = document.createElement("input"); id.appendChild(idText); id.appendChild(idEntry); + id.className = "survey-entry-attribute"; idText.textContent = "ID: "; idEntry.addEventListener("change",this,false); idEntry.setAttribute("name","id"); @@ -776,6 +779,7 @@ boxsizeText.textContent = "Entry Size: "; boxsize.appendChild(boxsizeText); boxsize.appendChild(boxsizeSelect); + boxsize.className = "survey-entry-attribute"; this.dynamic.appendChild(boxsize); var mandatory = document.createElement("div"); @@ -784,6 +788,7 @@ mandatoryText.textContent = "Mandatory: "; mandatory.appendChild(mandatoryText); mandatory.appendChild(mandatoryInput); + mandatory.className = "survey-entry-attribute"; mandatoryInput.type = "checkbox"; if (this.option.mandatory) {mandatoryInput.checked = true;} else {mandatoryInput.checked = false;} mandatoryInput.setAttribute("name","mandatory"); @@ -799,6 +804,7 @@ mandatoryText.textContent = "Mandatory: "; mandatory.appendChild(mandatoryText); mandatory.appendChild(mandatoryInput); + mandatory.className = "survey-entry-attribute"; mandatoryInput.type = "checkbox"; if (this.option.mandatory) {mandatoryInput.checked = true;} else {mandatoryInput.checked = false;} mandatoryInput.setAttribute("name","mandatory"); @@ -811,6 +817,7 @@ minimumText.textContent = "Minimum: "; minimum.appendChild(minimumText); minimum.appendChild(minimumEntry); + minimum.className = "survey-entry-attribute"; minimumEntry.type = "number"; minimumEntry.setAttribute("name","min"); minimumEntry.addEventListener("change",this,false); @@ -823,6 +830,7 @@ maximumText.textContent = "Maximum: "; maximum.appendChild(maximumText); maximum.appendChild(maximumEntry); + maximum.className = "survey-entry-attribute"; maximumEntry.type = "number"; maximumEntry.setAttribute("name","max"); maximumEntry.addEventListener("change",this,false); @@ -914,23 +922,23 @@ this.handleEvent = function() { var name = event.currentTarget.getAttribute("name"); + var nodeName = event.currentTarget.nodeName; + if (name == "type" && nodeName == "SELECT") { + // If type has changed, we may need to rebuild the entire state node + if (event.currentTarget.value != this.option.name) + { + this.option.type = event.currentTarget.value; + this.generate(this.option,this.parent); + } + return; + } + var type = event.currentTarget.getAttribute("type"); switch(name) { - case "type": - // If type has changed, we may need to rebuild the entire state node - if (event.currentTarget.value != this.option.name) - { - this.option.type = event.currentTarget.value; - this.generate(this.option,this.parent); - } + case "checkbox": + eval("this.option."+name+" = event.currentTarget.checked"); break; - case "mandatory": - this.option.mandatory = event.currentTarget.checked; - break; - case "boxsize": - this.option.boxsize = event.currentTarget.value; - break; - case "statement": - this.option.statement = event.currentTarget.value; + default: + eval("this.option."+name+" = event.currentTarget.value"); break; } }