diff --git a/editor/svg-editor.js b/editor/svg-editor.js index 1fd9a629..a1d415f9 100644 --- a/editor/svg-editor.js +++ b/editor/svg-editor.js @@ -347,7 +347,7 @@ function svg_edit_setup() { }); $('.attr_changer').change(function() { - var attr = this.getAttribute("alt"); + var attr = this.getAttribute("data-attr"); var val = this.value; var valid = false; if($.inArray(attr, length_attrs) != -1) { @@ -1102,8 +1102,8 @@ function svg_edit_setup() { svgCanvas.createLayer(newName); updateContextPanel(); populateLayers(); - $('#layerlist option').removeAttr("selected"); - $('#layerlist option:first').attr("selected", "selected"); + $('#layerlist tr.layer').removeClass("layersel"); + $('#layerlist tr.layer:first').addClass("layersel"); }); $('#layer_delete').click(function() { @@ -1113,39 +1113,40 @@ function svg_edit_setup() { // This matches what SvgCanvas does // TODO: make this behavior less brittle (svg-editor should get which // layer is selected from the canvas and then select that one in the UI) - $('#layerlist option:first').attr("selected", "selected"); + $('#layerlist tr.layer').removeClass("layersel"); + $('#layerlist tr.layer:first').addClass("layersel"); } }); $('#layer_up').click(function() { // find index position of selected option - var curIndex = $('#layerlist option:selected').prevAll().length; + var curIndex = $('#layerlist tr.layersel').prevAll().length; if (curIndex > 0) { - var total = $('#layerlist option').length; + var total = $('#layerlist tr.layer').length; curIndex--; svgCanvas.setCurrentLayerPosition(total-curIndex-1); populateLayers(); - $('#layerlist option').removeAttr("selected"); - $('#layerlist option:eq('+curIndex+')').attr("selected", "selected"); + $('#layerlist tr.layer').removeClass("layersel"); + $('#layerlist tr.layer:eq('+curIndex+')').addClass("layersel"); } }); $('#layer_down').click(function() { // find index position of selected option - var curIndex = $('#layerlist option:selected').prevAll().length; - var total = $('#layerlist option').length; + var curIndex = $('#layerlist tr.layersel').prevAll().length; + var total = $('#layerlist tr.layer').length; if (curIndex < total-1) { curIndex++; svgCanvas.setCurrentLayerPosition(total-curIndex-1); populateLayers(); - $('#layerlist option').removeAttr("selected"); - $('#layerlist option:eq('+curIndex+')').attr("selected", "selected"); + $('#layerlist tr.layer').removeClass("layersel"); + $('#layerlist tr.layer:eq('+curIndex+')').addClass("layersel"); } }); $('#layer_rename').click(function() { - var curIndex = $('#layerlist option:selected').prevAll().length; - var oldName = $('#layerlist option:selected').attr("value"); + var curIndex = $('#layerlist tr.layersel').prevAll().length; + var oldName = $('#layerlist tr.layersel td.layername').text(); var newName = prompt("Please enter the new layer name",""); if (!newName) return; if (oldName == newName) { @@ -1162,34 +1163,56 @@ function svg_edit_setup() { svgCanvas.renameCurrentLayer(newName); populateLayers(); - $('#layerlist option').removeAttr("selected"); - $('#layerlist option:eq('+curIndex+')').attr("selected", "selected"); + $('#layerlist tr.layer').removeClass("layersel"); + $('#layerlist tr.layer:eq('+curIndex+')').addClass("layersel"); }); var populateLayers = function(){ - $('#layerlist').empty(); + var layerlist = $('#layerlist tbody'); + layerlist.empty(); var layer = svgCanvas.getNumLayers(); // we get the layers in the reverse z-order (the layer rendered on top is listed first) while (layer--) { var name = svgCanvas.getLayer(layer); - $('#layerlist').append(""); + // contenteditable=\"true\" + if (svgCanvas.getLayerVisibility(name)) { + layerlist.append("