Added close handling to editor panels.

Also fixed some table event handling not being registered correctly.
This commit is contained in:
WrinklyNinja
2014-07-12 15:22:16 +01:00
parent 267edeb908
commit d8c260cb31
2 changed files with 30 additions and 6 deletions
+26 -4
View File
@@ -283,6 +283,24 @@ function showEditorTable(evt) {
evt.target.parentElement.getElementsByClassName('selected')[0].classList.toggle('selected');
evt.target.classList.toggle('selected');
}
function hideEditor(evt) {
if (evt.target.className.indexOf('accept') != -1) {
}
var section = evt.target.parentElement.parentElement.parentElement;
/* Disable priority hover in plugins list. */
document.getElementById('pluginsNav').classList.toggle('editMode', false);
/* Enable header buttons. */
document.getElementsByTagName('header')[0].classList.toggle('editMode', false);
/* Hide editor. */
section.classList.toggle('flip');
/* Now delete editor panel. */
section.removeChild(section.getElementsByClassName('editor')[0]);
}
function showEditor(sectionId) {
/* Editor is attached to plugins on-demand. */
var content = document.getElementById('pluginEditor').content;
@@ -292,9 +310,9 @@ function showEditor(sectionId) {
editor = section.lastElementChild;
/* Fill in data. */
section.getElementsByTagName('h1')[1].textContent = section.getElementsByTagName('h1')[0].textContent;
section.getElementsByClassName('crc')[1].textContent = section.getElementsByClassName('crc')[0].textContent;
section.getElementsByClassName('version')[1].textContent = section.getElementsByClassName('version')[0].textContent;
editor.getElementsByTagName('h1')[0].textContent = section.getElementsByTagName('h1')[0].textContent;
editor.getElementsByClassName('crc')[0].textContent = section.getElementsByClassName('crc')[0].textContent;
editor.getElementsByClassName('version')[0].textContent = section.getElementsByClassName('version')[0].textContent;
/* Initialise tables. */
var tables = editor.getElementsByTagName('table');
@@ -303,7 +321,7 @@ function showEditor(sectionId) {
}
/* Set up table tab event handlers. */
var elements = document.getElementsByClassName('tableTabs')[0].children;
var elements = editor.getElementsByClassName('tableTabs')[0].children;
for (var i = 0; i < elements.length; ++i) {
var tableClass = elements[i].getAttribute('data-for');
if (tableClass) {
@@ -311,6 +329,10 @@ function showEditor(sectionId) {
}
}
/* Set up button event handlers. */
editor.getElementsByClassName('accept')[0].addEventListener('click', hideEditor, false);
editor.getElementsByClassName('cancel')[0].addEventListener('click', hideEditor, false);
/* Enable priority hover in plugins list. */
document.getElementById('pluginsNav').classList.toggle('editMode', true);
+4 -2
View File
@@ -153,8 +153,10 @@
<input type="checkbox" class="editorShowOnlyConflicts">
<label for="editorSimpleView">Simple View</label>
<input type="checkbox" class="editorSimpleView">
<button>Apply</button>
<button>Cancel</button>
<div class="buttons">
<button class="accept">Apply</button>
<button class="cancel">Cancel</button>
</div>
</div>
</template>
<template id="messageDialog">