comparison Applications/StoneWebViewer/WebApplication/index.html @ 1849:023cce3d7844

introduction of the concept of "virtual series"
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 29 Jun 2021 12:12:46 +0200
parents 58049bdebdc3
children 4026a458349d
comparison
equal deleted inserted replaced
1848:3751485f1b2e 1849:023cce3d7844
207 <span v-for="seriesIndex in study.series"> 207 <span v-for="seriesIndex in study.series">
208 <li class="wvSerieslist__seriesItem" 208 <li class="wvSerieslist__seriesItem"
209 v-bind:class="{ highlighted : GetActiveSeries().includes(series[seriesIndex].tags[SERIES_INSTANCE_UID]), 'wvSerieslist__seriesItem--list' : leftMode != 'grid', 'wvSerieslist__seriesItem--grid' : leftMode == 'grid' }" 209 v-bind:class="{ highlighted : GetActiveSeries().includes(series[seriesIndex].tags[SERIES_INSTANCE_UID]), 'wvSerieslist__seriesItem--list' : leftMode != 'grid', 'wvSerieslist__seriesItem--grid' : leftMode == 'grid' }"
210 v-on:dragstart="SeriesDragStart($event, seriesIndex)" 210 v-on:dragstart="SeriesDragStart($event, seriesIndex)"
211 v-on:click="ClickSeries(seriesIndex)" 211 v-on:click="ClickSeries(seriesIndex)"
212 v-if="series[seriesIndex].multiframeInstances === null"> 212 v-if="series[seriesIndex].virtualSeries === null">
213 <div class="wvSerieslist__picture" style="z-index:0" 213 <div class="wvSerieslist__picture" style="z-index:0"
214 draggable="true" 214 draggable="true"
215 v-if="series[seriesIndex].type != stone.ThumbnailType.UNKNOWN" 215 v-if="series[seriesIndex].type != stone.ThumbnailType.UNKNOWN"
216 > 216 >
217 <div v-if="series[seriesIndex].type == stone.ThumbnailType.LOADING"> 217 <div v-if="series[seriesIndex].type == stone.ThumbnailType.LOADING">
259 </li> 259 </li>
260 260
261 261
262 <!-- Series with multiple multiframe instances (CINE) --> 262 <!-- Series with multiple multiframe instances (CINE) -->
263 <li class="wvSerieslist__seriesItem" 263 <li class="wvSerieslist__seriesItem"
264 v-bind:class="{ highlighted : GetActiveMultiframeInstances().includes(sopInstanceUid), 'wvSerieslist__seriesItem--list' : leftMode != 'grid', 'wvSerieslist__seriesItem--grid' : leftMode == 'grid' }" 264 v-bind:class="{ highlighted : GetActiveVirtualSeries().includes(virtualSeries.ID), 'wvSerieslist__seriesItem--list' : leftMode != 'grid', 'wvSerieslist__seriesItem--grid' : leftMode == 'grid' }"
265 v-for="(numberOfFrames, sopInstanceUid) in series[seriesIndex].multiframeInstances" 265 v-for="virtualSeries in series[seriesIndex].virtualSeries"
266 v-on:dragstart="MultiframeInstanceDragStart($event, seriesIndex, sopInstanceUid)" 266 v-on:dragstart="VirtualSeriesDragStart($event, seriesIndex, virtualSeries.ID)"
267 v-on:click="ClickMultiframeInstance(seriesIndex, sopInstanceUid)"> 267 v-on:click="ClickVirtualSeries(seriesIndex, virtualSeries.ID)">
268 <div class="wvSerieslist__picture" style="z-index:0" 268 <div class="wvSerieslist__picture" style="z-index:0"
269 draggable="true"> 269 draggable="true">
270 <img v-if="series[seriesIndex].type == stone.ThumbnailType.IMAGE" 270 <img v-if="series[seriesIndex].type == stone.ThumbnailType.IMAGE"
271 v-bind:src="sopInstanceUid in multiframeInstanceThumbnails ? multiframeInstanceThumbnails[sopInstanceUid] : series[seriesIndex].thumbnail" 271 v-bind:src="virtualSeries.ID in virtualSeriesThumbnails ? virtualSeriesThumbnails[virtualSeries.ID] : series[seriesIndex].thumbnail"
272 style="vertical-align:baseline" 272 style="vertical-align:baseline"
273 width="65px" height="65px" 273 width="65px" height="65px"
274 v-bind:title="leftMode == 'full' ? null : '[' + series[seriesIndex].tags[MODALITY] + '] ' + series[seriesIndex].tags[SERIES_DESCRIPTION]" 274 v-bind:title="leftMode == 'full' ? null : '[' + series[seriesIndex].tags[MODALITY] + '] ' + series[seriesIndex].tags[SERIES_DESCRIPTION]"
275 /> 275 />
276 276
277 <div v-bind:class="'wvSerieslist__badge--' + study.color"> 277 <div v-bind:class="'wvSerieslist__badge--' + study.color">
278 {{ numberOfFrames }} 278 {{ virtualSeries.NumberOfFrames }}
279 </div> 279 </div>
280 </div> 280 </div>
281 281
282 <div v-if="leftMode == 'full'" class="wvSerieslist__information" 282 <div v-if="leftMode == 'full'" class="wvSerieslist__information"
283 draggable="true" 283 draggable="true"
284 v-on:dragstart="MultiframeInstanceDragStart($event, seriesIndex, sopInstanceUid)" 284 v-on:dragstart="VirtualSeriesDragStart($event, seriesIndex, virtualSeries.ID)"
285 v-on:click="MultiframeInstanceDragStart($event, seriesIndex, sopInstanceUid)"> 285 v-on:click="ClickVirtualSeries(seriesIndex, virtualSeries.ID)">
286 <p class="wvSerieslist__label"> 286 <p class="wvSerieslist__label">
287 [{{ series[seriesIndex].tags[MODALITY] }}] 287 [{{ series[seriesIndex].tags[MODALITY] }}]
288 {{ series[seriesIndex].tags[SERIES_DESCRIPTION] }} 288 {{ series[seriesIndex].tags[SERIES_DESCRIPTION] }}
289 </p> 289 </p>
290 </div> 290 </div>