Files
onefinity-firmware/src/pug/templates/path-viewer.pug
Henrik Muehe c10f5c053a ui: assorted polish - Vue async fix, OrbitControls passive listeners, path-viewer + motor-view + indicators
- main.js: disable Vue async batching so reactive writes from
  hashchange listeners propagate synchronously (matches Vue 1's older
  default; avoids dropped DRO updates).
- orbit.js: pass {passive:false} to wheel/touch listeners so
  OrbitControls.preventDefault() actually suppresses page panning.
- path-viewer: opaque dark canvas (no flash from page background),
  zero-size guard, ResizeObserver cleanup on destroy.
- motor-view: stop clobbering user edits with controller state.
- estop/indicators/tool-view/path-viewer pug: rename FA4 icons to FA6,
  add viewBox to estop SVG, fix tool-view trailing newline.
2026-05-03 14:07:35 +02:00

44 lines
1.5 KiB
Plaintext

script#path-viewer-template(type="text/x-template")
.path-viewer(v-show="enabled", :class="{small: small}")
.path-viewer-toolbar
.tool-button(title="Toggle path view size.",
@click="small = !small", :class="{active: !small}")
.fa.fa-up-down-left-right
.tool-button(@click="showTool = !showTool", :class="{active: showTool}",
title="Show/hide tool.")
img(src="images/tool.png")
.tool-button(@click="showBBox = !showBBox", :class="{active: showBBox}",
title="Show/hide bounding box.")
img(src="images/bbox.png")
.tool-button(@click="showAxes = !showAxes", :class="{active: showAxes}",
title="Show/hide axes.")
img(src="images/axes.png")
.tool-button(@click="showIntensity = !showIntensity",
:class="{active: showIntensity}", title="Show/hide LASER intensity.")
img(src="images/intensity.png")
each view in "isometric top front".split(" ")
.tool-button(@click=`snap('${view}')`, title=`Snap to ${view} view.`)
img(src=`images/${view}.png`)
.path-viewer-content
table.path-viewer-messages(
v-if="typeof toolpath.messages != 'undefined' && " +
"toolpath.messages.length")
tr
th Level
th Location
th Message
tr(v-for="msg in toolpath.messages", :class="'log-' + msg.level")
td.level {{msg.level}}
td.location
| {{msg.line}}
span(v-if="msg.column") :{{msg.column}}
td.message {{msg.msg}}