@@ -35,31 +35,10 @@ export const app = (window.app = createApp({
3535
3636 const removeColor = ( ) => settings . value . colors . pop ( ) ;
3737
38- const update = async ( evt ) => {
39- model . value = {
40- name : evt . detail . filename
41- } ;
42- applyDevMode ( enableDevMode . value ) ; // HACK: force dev mode to update UI
43- updateUI ( ) ;
44- } ;
45-
4638 // Update UI with current preview settings
4739 const updateUI = async ( ) => {
48- const { parser, sceneManager, countLayers } = preview ;
49- const {
50- topLayerColor,
51- lastSegmentColor,
52- buildVolume,
53- singleLayerMode,
54- renderTravel,
55- travelColor,
56- renderExtrusion,
57- lineWidth,
58- renderTubes,
59- extrusionWidth,
60- extrusionColor,
61- backgroundColor
62- } = sceneManager ;
40+ console . log ( 'Updating UI' ) ;
41+ const { parser, countLayers, sceneManager } = preview ;
6342 const { thumbnails } = parser . metadata ;
6443
6544 // thumbnail.value = thumbnails['220x124']?.src;
@@ -70,33 +49,14 @@ export const app = (window.app = createApp({
7049 thumbnail . value = thumbnails [ largestThumbnailKey ] ?. src ;
7150
7251 layerCount . value = countLayers ;
73- const colors = extrusionColor instanceof Array ? extrusionColor : [ extrusionColor ] ;
52+ sceneManager . endLayer = countLayers ;
53+
7454 const currentSettings = {
75- startLayer : 1 ,
76- enableStartLayer : false ,
7755 maxLayer : countLayers || 1000 ,
78- endLayer : countLayers ,
79- enableEndLayer : false ,
80- singleLayerMode,
81- renderTravel,
82- travelColor : '#' + travelColor . getHexString ( ) ,
83- renderExtrusion,
84- lineWidth,
85- renderTubes,
86- extrusionWidth,
87- colors : colors . map ( ( c ) => '#' + c . getHexString ( ) ) ,
88- topLayerColor : '#' + topLayerColor ?. getHexString ( ) ,
89- highlightTopLayer : ! ! topLayerColor ,
90- lastSegmentColor : '#' + lastSegmentColor ?. getHexString ( ) ,
91- highlightLastSegment : ! ! lastSegmentColor ,
92- buildVolume : buildVolume ,
93- drawBuildVolume : ! ! buildVolume ,
94- backgroundColor : '#' + backgroundColor . getHexString ( )
56+ endLayer : countLayers
9557 } ;
9658
97- console . debug ( 'app settings:' , currentSettings ) ;
9859 Object . assign ( settings . value , currentSettings ) ;
99- sceneManager . endLayer = countLayers ;
10060
10161 applyDevMode ( enableDevMode . value ) ;
10262 } ;
@@ -166,8 +126,8 @@ export const app = (window.app = createApp({
166126 observer = new ResizeObserver ( ( ) => preview . sceneManager . resize ( ) ) ;
167127 observer . observe ( canvas ) ;
168128
169- // to update the layer count
170- preview . addEventListener ( 'jobUpdated' , ( ) => {
129+ // to update the layer count and the thumbnail when available
130+ preview . addEventListener ( [ 'jobUpdated' , 'streamReadEnd' ] , ( ) => {
171131 updateUI ( ) ;
172132 } ) ;
173133
@@ -248,7 +208,6 @@ export const app = (window.app = createApp({
248208 selectTab,
249209 addColor,
250210 removeColor,
251- update,
252211 resetUI : updateUI ,
253212 loadGCodeFromServer,
254213 selectPreset
0 commit comments