Mercurial > hg > webaudioevaluationtool
comparison test_create/test_core.js @ 1251:ee5f18d2fc47
Test create fixes for #1594. Styling of survey entry options. Fixed survey entry leak. Removed "synchronous" attribute from page for now.
author | Nicholas Jillings <n.g.r.jillings@se14.qmul.ac.uk> |
---|---|
date | Mon, 14 Mar 2016 13:36:43 +0000 |
parents | 31d2390b25a6 |
children | 6dbb9c24d53e |
comparison
equal
deleted
inserted
replaced
1250:31d2390b25a6 | 1251:ee5f18d2fc47 |
---|---|
726 } | 726 } |
727 | 727 |
728 this.dynamic.innerHTML = null; | 728 this.dynamic.innerHTML = null; |
729 var statement = document.createElement("div"); | 729 var statement = document.createElement("div"); |
730 var statementText = document.createElement("span"); | 730 var statementText = document.createElement("span"); |
731 var statementEntry = document.createElement("textarea"); | 731 var statementEntry = document.createElement("input"); |
732 statement.appendChild(statementText); | 732 statement.appendChild(statementText); |
733 statement.appendChild(statementEntry); | 733 statement.appendChild(statementEntry); |
734 statement.className = "survey-entry-attribute"; | |
734 statementText.textContent = "Statement/Question"; | 735 statementText.textContent = "Statement/Question"; |
736 statementEntry.style.width = "500px"; | |
735 statementEntry.addEventListener("change",this,false); | 737 statementEntry.addEventListener("change",this,false); |
736 statementEntry.setAttribute("name","statement"); | 738 statementEntry.setAttribute("name","statement"); |
737 statementEntry.value = this.option.statement; | 739 statementEntry.value = this.option.statement; |
738 this.dynamic.appendChild(statement); | 740 this.dynamic.appendChild(statement); |
739 | 741 |
740 var id = document.createElement("div"); | 742 var id = document.createElement("div"); |
741 var idText = document.createElement("span"); | 743 var idText = document.createElement("span"); |
742 var idEntry = document.createElement("input"); | 744 var idEntry = document.createElement("input"); |
743 id.appendChild(idText); | 745 id.appendChild(idText); |
744 id.appendChild(idEntry); | 746 id.appendChild(idEntry); |
747 id.className = "survey-entry-attribute"; | |
745 idText.textContent = "ID: "; | 748 idText.textContent = "ID: "; |
746 idEntry.addEventListener("change",this,false); | 749 idEntry.addEventListener("change",this,false); |
747 idEntry.setAttribute("name","id"); | 750 idEntry.setAttribute("name","id"); |
748 idEntry.value = this.option.id; | 751 idEntry.value = this.option.id; |
749 | 752 |
774 var boxsize = document.createElement("div"); | 777 var boxsize = document.createElement("div"); |
775 var boxsizeText = document.createElement("span"); | 778 var boxsizeText = document.createElement("span"); |
776 boxsizeText.textContent = "Entry Size: "; | 779 boxsizeText.textContent = "Entry Size: "; |
777 boxsize.appendChild(boxsizeText); | 780 boxsize.appendChild(boxsizeText); |
778 boxsize.appendChild(boxsizeSelect); | 781 boxsize.appendChild(boxsizeSelect); |
782 boxsize.className = "survey-entry-attribute"; | |
779 this.dynamic.appendChild(boxsize); | 783 this.dynamic.appendChild(boxsize); |
780 | 784 |
781 var mandatory = document.createElement("div"); | 785 var mandatory = document.createElement("div"); |
782 var mandatoryInput = document.createElement("input"); | 786 var mandatoryInput = document.createElement("input"); |
783 var mandatoryText = document.createElement("span"); | 787 var mandatoryText = document.createElement("span"); |
784 mandatoryText.textContent = "Mandatory: "; | 788 mandatoryText.textContent = "Mandatory: "; |
785 mandatory.appendChild(mandatoryText); | 789 mandatory.appendChild(mandatoryText); |
786 mandatory.appendChild(mandatoryInput); | 790 mandatory.appendChild(mandatoryInput); |
791 mandatory.className = "survey-entry-attribute"; | |
787 mandatoryInput.type = "checkbox"; | 792 mandatoryInput.type = "checkbox"; |
788 if (this.option.mandatory) {mandatoryInput.checked = true;} else {mandatoryInput.checked = false;} | 793 if (this.option.mandatory) {mandatoryInput.checked = true;} else {mandatoryInput.checked = false;} |
789 mandatoryInput.setAttribute("name","mandatory"); | 794 mandatoryInput.setAttribute("name","mandatory"); |
790 mandatoryInput.addEventListener("change",this,false); | 795 mandatoryInput.addEventListener("change",this,false); |
791 this.dynamic.appendChild(mandatory); | 796 this.dynamic.appendChild(mandatory); |
797 var mandatoryInput = document.createElement("input"); | 802 var mandatoryInput = document.createElement("input"); |
798 var mandatoryText = document.createElement("span"); | 803 var mandatoryText = document.createElement("span"); |
799 mandatoryText.textContent = "Mandatory: "; | 804 mandatoryText.textContent = "Mandatory: "; |
800 mandatory.appendChild(mandatoryText); | 805 mandatory.appendChild(mandatoryText); |
801 mandatory.appendChild(mandatoryInput); | 806 mandatory.appendChild(mandatoryInput); |
807 mandatory.className = "survey-entry-attribute"; | |
802 mandatoryInput.type = "checkbox"; | 808 mandatoryInput.type = "checkbox"; |
803 if (this.option.mandatory) {mandatoryInput.checked = true;} else {mandatoryInput.checked = false;} | 809 if (this.option.mandatory) {mandatoryInput.checked = true;} else {mandatoryInput.checked = false;} |
804 mandatoryInput.setAttribute("name","mandatory"); | 810 mandatoryInput.setAttribute("name","mandatory"); |
805 mandatoryInput.addEventListener("change",this,false); | 811 mandatoryInput.addEventListener("change",this,false); |
806 this.dynamic.appendChild(mandatory); | 812 this.dynamic.appendChild(mandatory); |
809 var minimumEntry = document.createElement("input"); | 815 var minimumEntry = document.createElement("input"); |
810 var minimumText = document.createElement("span"); | 816 var minimumText = document.createElement("span"); |
811 minimumText.textContent = "Minimum: "; | 817 minimumText.textContent = "Minimum: "; |
812 minimum.appendChild(minimumText); | 818 minimum.appendChild(minimumText); |
813 minimum.appendChild(minimumEntry); | 819 minimum.appendChild(minimumEntry); |
820 minimum.className = "survey-entry-attribute"; | |
814 minimumEntry.type = "number"; | 821 minimumEntry.type = "number"; |
815 minimumEntry.setAttribute("name","min"); | 822 minimumEntry.setAttribute("name","min"); |
816 minimumEntry.addEventListener("change",this,false); | 823 minimumEntry.addEventListener("change",this,false); |
817 minimumEntry.value = this.option.min; | 824 minimumEntry.value = this.option.min; |
818 this.dynamic.appendChild(minimum); | 825 this.dynamic.appendChild(minimum); |
821 var maximumEntry = document.createElement("input"); | 828 var maximumEntry = document.createElement("input"); |
822 var maximumText = document.createElement("span"); | 829 var maximumText = document.createElement("span"); |
823 maximumText.textContent = "Maximum: "; | 830 maximumText.textContent = "Maximum: "; |
824 maximum.appendChild(maximumText); | 831 maximum.appendChild(maximumText); |
825 maximum.appendChild(maximumEntry); | 832 maximum.appendChild(maximumEntry); |
833 maximum.className = "survey-entry-attribute"; | |
826 maximumEntry.type = "number"; | 834 maximumEntry.type = "number"; |
827 maximumEntry.setAttribute("name","max"); | 835 maximumEntry.setAttribute("name","max"); |
828 maximumEntry.addEventListener("change",this,false); | 836 maximumEntry.addEventListener("change",this,false); |
829 maximumEntry.value = this.option.max; | 837 maximumEntry.value = this.option.max; |
830 this.dynamic.appendChild(maximum); | 838 this.dynamic.appendChild(maximum); |
912 } | 920 } |
913 } | 921 } |
914 this.handleEvent = function() | 922 this.handleEvent = function() |
915 { | 923 { |
916 var name = event.currentTarget.getAttribute("name"); | 924 var name = event.currentTarget.getAttribute("name"); |
925 var nodeName = event.currentTarget.nodeName; | |
926 if (name == "type" && nodeName == "SELECT") { | |
927 // If type has changed, we may need to rebuild the entire state node | |
928 if (event.currentTarget.value != this.option.name) | |
929 { | |
930 this.option.type = event.currentTarget.value; | |
931 this.generate(this.option,this.parent); | |
932 } | |
933 return; | |
934 } | |
935 var type = event.currentTarget.getAttribute("type"); | |
917 switch(name) { | 936 switch(name) { |
918 case "type": | 937 case "checkbox": |
919 // If type has changed, we may need to rebuild the entire state node | 938 eval("this.option."+name+" = event.currentTarget.checked"); |
920 if (event.currentTarget.value != this.option.name) | |
921 { | |
922 this.option.type = event.currentTarget.value; | |
923 this.generate(this.option,this.parent); | |
924 } | |
925 break; | 939 break; |
926 case "mandatory": | 940 default: |
927 this.option.mandatory = event.currentTarget.checked; | 941 eval("this.option."+name+" = event.currentTarget.value"); |
928 break; | |
929 case "boxsize": | |
930 this.option.boxsize = event.currentTarget.value; | |
931 break; | |
932 case "statement": | |
933 this.option.statement = event.currentTarget.value; | |
934 break; | 942 break; |
935 } | 943 } |
936 } | 944 } |
937 this.continue = function() | 945 this.continue = function() |
938 { | 946 { |