MCPcopy
hub / github.com/Mottie/Keyboard / selectionChange

Function selectionChange

testing/qunit-2.9.2.js:5023–5054  ·  view source on GitHub ↗
(evt)

Source from the content-addressed store, hash-verified

5021
5022 // Processes selection changes
5023 function selectionChange(evt) {
5024 var i,
5025 item,
5026 checkbox = evt && evt.target || allCheckbox,
5027 modulesList = dropDownList.getElementsByTagName("input"),
5028 selectedNames = [];
5029
5030 toggleClass(checkbox.parentNode, "checked", checkbox.checked);
5031
5032 dirty = false;
5033 if (checkbox.checked && checkbox !== allCheckbox) {
5034 allCheckbox.checked = false;
5035 removeClass(allCheckbox.parentNode, "checked");
5036 }
5037 for (i = 0; i < modulesList.length; i++) {
5038 item = modulesList[i];
5039 if (!evt) {
5040 toggleClass(item.parentNode, "checked", item.checked);
5041 } else if (checkbox === allCheckbox && checkbox.checked) {
5042 item.checked = false;
5043 removeClass(item.parentNode, "checked");
5044 }
5045 dirty = dirty || item.checked !== item.defaultChecked;
5046 if (item.checked) {
5047 selectedNames.push(item.parentNode.textContent);
5048 }
5049 }
5050
5051 commit.style.display = reset.style.display = dirty ? "" : "none";
5052 moduleSearch.placeholder = selectedNames.join(", ") || allCheckbox.parentNode.textContent;
5053 moduleSearch.title = "Type to filter list. Current selection:\n" + (selectedNames.join("\n") || allCheckbox.parentNode.textContent);
5054 }
5055
5056 return moduleFilter;
5057 }

Callers 1

toolbarModuleFilterFunction · 0.85

Calls 2

toggleClassFunction · 0.85
removeClassFunction · 0.85

Tested by

no test coverage detected