undo layers bit better, readme update with new bugs

This commit is contained in:
Hugh Bord 2021-12-27 16:40:54 +10:00
parent 8466731a4e
commit 458acbfb7b
6 changed files with 21 additions and 5 deletions

View File

@ -76,12 +76,14 @@ A most latest production build to use is available at https://asciibird.jewbird.
## Features to Add
* While select works fine, it could be improved.
* Layers undo and redo could be implemented, at the moment there isn't any.
* Warning on mirc export if ascii exceeds IRCs 512 per chat line limit.
* Review encodings check on file import - UTF8 vs Latin something
## Bugs to fix
* One of the mirror brushes might be bugged sometimes and leave undoable blocks
* Strange sort of bug with remove layer and selecting layer after, scroll up and down to redraw the canvas if it goes blank
* Redo will cause errors on layers sometimes
* The edit dialog, even when code to save new data is commented out, will slow down everything if you open and save the modal a few times
* The current mIRC importer will fail on C5, type blocks by discarding the `,` character when it should preserve it. `art.txt` ascii is a good example of this. 98% of txt ascii imported should be fine.
## Mobile / Touch Screen support

View File

@ -267,6 +267,7 @@ export default {
});
this.mirror.x = this.toolbarState.mirrorX;
this.mirror.y = this.toolbarState.mirrorY;
},
destroyed() {
window.removeEventListener("scroll", function (event) {

View File

@ -79,6 +79,10 @@
</div>
<div v-if="panel.tab === 1">
<div v-if="!brushLibrary.length">
<p class="text-sm text-center p-5">Save brushes to your library to use them here.</p>
</div>
<div v-for="(brush, key) in brushLibrary" :key="key">
<t-card
:class="`hover:border-blue-900 border-gray-300 bg-gray-200 mt-2`"

View File

@ -231,6 +231,10 @@ export default {
});
},
drawPreview() {
if (!this.canvasRef) {
return;
}
this.ctx.clearRect(0, 0, this.canvasRef.width, this.canvasRef.height);
this.ctx.fillStyle = this.mircColours[1];

View File

@ -172,12 +172,15 @@ export default {
},
selectedLayer() {
let selectedLayer = this.$store.getters.selectedLayer;
if (this.currentAsciiLayers[selectedLayer] === undefined) {
while (this.currentAsciiLayers[selectedLayer] === undefined && selectedLayer >= 0) {
selectedLayer--;
}
while (this.currentAsciiLayers[selectedLayer] === undefined && selectedLayer >= 0) {
selectedLayer--;
this.$store.commit("changeLayer", selectedLayer);
}
this.$store.commit("changeLayer", selectedLayer);
return selectedLayer
},
currentLayer() {

View File

@ -865,7 +865,7 @@ export default {
}
this.toolCtx.strokeStyle = "rgba(40, 40, 40, 1)";
this.toolCtx.lineWidth = 2;
this.toolCtx.lineWidth = 1;
this.toolCtx.setLineDash([1]);
this.toolCtx.stroke();
@ -1048,6 +1048,8 @@ export default {
this.$refs.canvasdrag.width = width;
this.$refs.canvasdrag.height = height;
this.$toasted.show(`${canvasBlockWidth} x ${canvasBlockHeight}`)
},
onCavasDragStop(x, y) {
// Update left and top in panel