summaryrefslogtreecommitdiff
path: root/electron/src/renderer/assets/js/simulator.js
diff options
context:
space:
mode:
authorLex Neva <lexelby@users.noreply.github.com>2023-04-15 21:56:23 -0400
committerGitHub <noreply@github.com>2023-04-15 21:56:23 -0400
commitc94ed73b4e859d64e8419f87dcaa1b44c4577408 (patch)
tree06390f4eada8f152003cd9c7fc32d6db960a6e2a /electron/src/renderer/assets/js/simulator.js
parent6504c72fb73927151c10edcd5e891af53b36826c (diff)
parentec55bc58b2427b1bb4db199f7b29fd4dab28516f (diff)
Merge pull request #2189 from inkstitch/jooshkins/addzoomtosim
Add zoom to page and zoom to selection to simulator
Diffstat (limited to 'electron/src/renderer/assets/js/simulator.js')
-rw-r--r--electron/src/renderer/assets/js/simulator.js16
1 files changed, 15 insertions, 1 deletions
diff --git a/electron/src/renderer/assets/js/simulator.js b/electron/src/renderer/assets/js/simulator.js
index bb290838..186e3e30 100644
--- a/electron/src/renderer/assets/js/simulator.js
+++ b/electron/src/renderer/assets/js/simulator.js
@@ -511,7 +511,7 @@ export default {
},
generatePage () {
this.$refs.simulator.style.backgroundColor = this.page_specs.deskcolor
- this.svg.rect(this.page_specs.width, this.page_specs.height)
+ let page = this.svg.rect(this.page_specs.width, this.page_specs.height)
.move(-this.stitchPlan.bounding_box[0],-this.stitchPlan.bounding_box[1])
.fill(this.page_specs.pagecolor)
.stroke({width: 1, color: 'black'})
@@ -520,6 +520,18 @@ export default {
add.blend(add.$source, blur)
})
.back()
+ this.page_specs["bbox"] = page.bbox()
+ },
+ zoomDesign () {
+ let [minx, miny, maxx, maxy] = this.stitchPlan.bounding_box
+ let designWidth = maxx - minx
+ let designHeight = maxy - miny
+ this.svg.viewbox(0, 0, designWidth, designHeight);
+ this.resizeCursor()
+ },
+ zoomPage () {
+ this.svg.viewbox(this.page_specs.bbox.x, this.page_specs.bbox.y - 50, this.page_specs.bbox.width + 100, this.page_specs.bbox.height + 100)
+ this.resizeCursor()
}
},
created: function () {
@@ -607,6 +619,8 @@ export default {
Mousetrap.bind("space", this.toggleAnimation)
Mousetrap.bind("+", this.animationForwardOneStitch)
Mousetrap.bind("-", this.animationBackwardOneStitch)
+ Mousetrap.bind("]", this.zoomDesign)
+ Mousetrap.bind("[", this.zoomPage)
this.svg.on('zoom', this.resizeCursor)
this.resizeCursor()