Layer names
This commit is contained in:
parent
e1e48ede30
commit
4ce9ace70a
33
src/main.js
33
src/main.js
|
|
@ -506,6 +506,29 @@ let actions = {
|
||||||
updateLayers()
|
updateLayers()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
changeLayerName: {
|
||||||
|
create: (layer, newName) => {
|
||||||
|
redoStack.length = 0
|
||||||
|
let action = {
|
||||||
|
layer: layer.idx,
|
||||||
|
newName: newName,
|
||||||
|
oldName: layer.name
|
||||||
|
}
|
||||||
|
undoStack.push({name: 'changeLayerName', action: action})
|
||||||
|
actions.changeLayerName.execute(action)
|
||||||
|
updateMenu()
|
||||||
|
},
|
||||||
|
execute: (action) => {
|
||||||
|
let layer = pointerList[action.layer]
|
||||||
|
layer.name = action.newName
|
||||||
|
updateLayers()
|
||||||
|
},
|
||||||
|
rollback: (action) => {
|
||||||
|
let layer = pointerList[action.layer]
|
||||||
|
layer.name = action.oldName
|
||||||
|
updateLayers()
|
||||||
|
}
|
||||||
|
},
|
||||||
editFrame: {
|
editFrame: {
|
||||||
create: (frame) => {
|
create: (frame) => {
|
||||||
redoStack.length = 0; // Clear redo stack
|
redoStack.length = 0; // Clear redo stack
|
||||||
|
|
@ -1959,6 +1982,9 @@ window.addEventListener("keydown", (e) => {
|
||||||
// shortcut = shortcut.split("+")
|
// shortcut = shortcut.split("+")
|
||||||
// TODO
|
// TODO
|
||||||
// }
|
// }
|
||||||
|
if (e.target.contentEditable == "plaintext-only") {
|
||||||
|
return;
|
||||||
|
}
|
||||||
console.log(e)
|
console.log(e)
|
||||||
let mod = macOS ? e.metaKey : e.ctrlKey;
|
let mod = macOS ? e.metaKey : e.ctrlKey;
|
||||||
let key = (mod ? "<mod>" : "") + e.key
|
let key = (mod ? "<mod>" : "") + e.key
|
||||||
|
|
@ -3173,6 +3199,13 @@ function updateLayers() {
|
||||||
layerspanel.appendChild(layerHeader)
|
layerspanel.appendChild(layerHeader)
|
||||||
let layerName = document.createElement("div")
|
let layerName = document.createElement("div")
|
||||||
layerName.className = "layer-name"
|
layerName.className = "layer-name"
|
||||||
|
layerName.contentEditable = "plaintext-only"
|
||||||
|
layerName.addEventListener("click", (e) => {
|
||||||
|
e.stopPropagation()
|
||||||
|
})
|
||||||
|
layerName.addEventListener("blur", (e) => {
|
||||||
|
actions.changeLayerName.create(layer, layerName.innerText)
|
||||||
|
})
|
||||||
layerName.innerText = layer.name
|
layerName.innerText = layer.name
|
||||||
layerHeader.appendChild(layerName)
|
layerHeader.appendChild(layerName)
|
||||||
layerHeader.addEventListener("click", (e) => {
|
layerHeader.addEventListener("click", (e) => {
|
||||||
|
|
|
||||||
|
|
@ -326,6 +326,7 @@ button {
|
||||||
border-top: 1px solid #ddd;
|
border-top: 1px solid #ddd;
|
||||||
border-bottom: 1px solid #aaa;
|
border-bottom: 1px solid #aaa;
|
||||||
flex-shrink: 0;
|
flex-shrink: 0;
|
||||||
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
.layer-header.active {
|
.layer-header.active {
|
||||||
background-color: #ccc;
|
background-color: #ccc;
|
||||||
|
|
@ -338,6 +339,8 @@ button {
|
||||||
.layer-name {
|
.layer-name {
|
||||||
padding-left: 1em;
|
padding-left: 1em;
|
||||||
padding-top: 5px;
|
padding-top: 5px;
|
||||||
|
display: inline-block;
|
||||||
|
cursor: text;
|
||||||
}
|
}
|
||||||
.layer-track {
|
.layer-track {
|
||||||
min-width: 100%;
|
min-width: 100%;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue