Mercurial > hg > orthanc-stone
comparison Applications/StoneWebViewer/WebApplication/index.html @ 1704:902d13889ae4
LoadMultipartInstanceInViewport() in C++
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 27 Nov 2020 17:15:09 +0100 |
parents | 76c590a62755 |
children | 3d62634d442f |
comparison
equal
deleted
inserted
replaced
1703:76c590a62755 | 1704:902d13889ae4 |
---|---|
243 | 243 |
244 | 244 |
245 <!-- Series with multiple multiframe instances (CINE) --> | 245 <!-- Series with multiple multiframe instances (CINE) --> |
246 <li class="wvSerieslist__seriesItem" | 246 <li class="wvSerieslist__seriesItem" |
247 v-bind:class="{ highlighted : GetActiveSeries().includes(series[seriesIndex].tags['0020,000e']), 'wvSerieslist__seriesItem--list' : leftMode != 'grid', 'wvSerieslist__seriesItem--grid' : leftMode == 'grid' }" | 247 v-bind:class="{ highlighted : GetActiveSeries().includes(series[seriesIndex].tags['0020,000e']), 'wvSerieslist__seriesItem--list' : leftMode != 'grid', 'wvSerieslist__seriesItem--grid' : leftMode == 'grid' }" |
248 v-on:dragstart="SeriesDragStart($event, seriesIndex)" | 248 v-for="(numberOfFrames, sopInstanceUid) in series[seriesIndex].multiframeInstances" |
249 v-on:click="ClickSeries(seriesIndex)" | 249 v-on:dragstart="MultiframeInstanceDragStart($event, seriesIndex, sopInstanceUid)" |
250 v-for="(numberOfFrames, sopInstanceUid) in series[seriesIndex].multiframeInstances"> | 250 v-on:click="ClickMultiframeInstance(seriesIndex, sopInstanceUid)"> |
251 <div class="wvSerieslist__picture" style="z-index:0" | 251 <div class="wvSerieslist__picture" style="z-index:0" |
252 draggable="true"> | 252 draggable="true"> |
253 <img v-if="series[seriesIndex].type == stone.ThumbnailType.IMAGE" | 253 <img v-if="series[seriesIndex].type == stone.ThumbnailType.IMAGE" |
254 v-bind:src="sopInstanceUid in multiframeInstanceThumbnails ? multiframeInstanceThumbnails[sopInstanceUid] : series[seriesIndex].thumbnail" | 254 v-bind:src="sopInstanceUid in multiframeInstanceThumbnails ? multiframeInstanceThumbnails[sopInstanceUid] : series[seriesIndex].thumbnail" |
255 style="vertical-align:baseline" | 255 style="vertical-align:baseline" |
262 </div> | 262 </div> |
263 </div> | 263 </div> |
264 | 264 |
265 <div v-if="leftMode == 'full'" class="wvSerieslist__information" | 265 <div v-if="leftMode == 'full'" class="wvSerieslist__information" |
266 draggable="true" | 266 draggable="true" |
267 v-on:dragstart="SeriesDragStart($event, seriesIndex)" | 267 v-on:dragstart="MultiframeInstanceDragStart($event, seriesIndex, sopInstanceUid)" |
268 v-on:click="ClickSeries(seriesIndex)"> | 268 v-on:click="MultiframeInstanceDragStart($event, seriesIndex, sopInstanceUid)"> |
269 <p class="wvSerieslist__label"> | 269 <p class="wvSerieslist__label"> |
270 [{{ series[seriesIndex].tags['0008,0060'] }}] | 270 [{{ series[seriesIndex].tags['0008,0060'] }}] |
271 {{ series[seriesIndex].tags['0008,103e'] }} | 271 {{ series[seriesIndex].tags['0008,103e'] }} |
272 </p> | 272 </p> |
273 </div> | 273 </div> |
521 <div id="viewport" class="wvSplitpane"> | 521 <div id="viewport" class="wvSplitpane"> |
522 <viewport v-on:updated-series="SetViewportSeries(1, $event)" | 522 <viewport v-on:updated-series="SetViewportSeries(1, $event)" |
523 v-on:selected-viewport="activeViewport=1" | 523 v-on:selected-viewport="activeViewport=1" |
524 v-show="viewport1Visible" | 524 v-show="viewport1Visible" |
525 canvas-id="canvas1" | 525 canvas-id="canvas1" |
526 v-bind:series="viewport1Series" | 526 v-bind:content="viewport1Content" |
527 v-bind:left="viewport1Left" | 527 v-bind:left="viewport1Left" |
528 v-bind:top="viewport1Top" | 528 v-bind:top="viewport1Top" |
529 v-bind:width="viewport1Width" | 529 v-bind:width="viewport1Width" |
530 v-bind:height="viewport1Height" | 530 v-bind:height="viewport1Height" |
531 v-bind:show-info="showInfo" | 531 v-bind:show-info="showInfo" |
532 v-bind:active="activeViewport==1"></viewport> | 532 v-bind:active="activeViewport==1"></viewport> |
533 <viewport v-on:updated-series="SetViewportSeries(2, $event)" | 533 <viewport v-on:updated-series="SetViewportSeries(2, $event)" |
534 v-on:selected-viewport="activeViewport=2" | 534 v-on:selected-viewport="activeViewport=2" |
535 v-show="viewport2Visible" | 535 v-show="viewport2Visible" |
536 canvas-id="canvas2" | 536 canvas-id="canvas2" |
537 v-bind:series="viewport2Series" | 537 v-bind:content="viewport2Content" |
538 v-bind:left="viewport2Left" | 538 v-bind:left="viewport2Left" |
539 v-bind:top="viewport2Top" | 539 v-bind:top="viewport2Top" |
540 v-bind:width="viewport2Width" | 540 v-bind:width="viewport2Width" |
541 v-bind:height="viewport2Height" | 541 v-bind:height="viewport2Height" |
542 v-bind:show-info="showInfo" | 542 v-bind:show-info="showInfo" |
543 v-bind:active="activeViewport==2"></viewport> | 543 v-bind:active="activeViewport==2"></viewport> |
544 <viewport v-on:updated-series="SetViewportSeries(3, $event)" | 544 <viewport v-on:updated-series="SetViewportSeries(3, $event)" |
545 v-on:selected-viewport="activeViewport=3" | 545 v-on:selected-viewport="activeViewport=3" |
546 v-show="viewport3Visible" | 546 v-show="viewport3Visible" |
547 canvas-id="canvas3" | 547 canvas-id="canvas3" |
548 v-bind:series="viewport3Series" | 548 v-bind:content="viewport3Content" |
549 v-bind:left="viewport3Left" | 549 v-bind:left="viewport3Left" |
550 v-bind:top="viewport3Top" | 550 v-bind:top="viewport3Top" |
551 v-bind:width="viewport3Width" | 551 v-bind:width="viewport3Width" |
552 v-bind:height="viewport3Height" | 552 v-bind:height="viewport3Height" |
553 v-bind:show-info="showInfo" | 553 v-bind:show-info="showInfo" |
554 v-bind:active="activeViewport==3"></viewport> | 554 v-bind:active="activeViewport==3"></viewport> |
555 <viewport v-on:updated-series="SetViewportSeries(4, $event)" | 555 <viewport v-on:updated-series="SetViewportSeries(4, $event)" |
556 v-on:selected-viewport="activeViewport=4" | 556 v-on:selected-viewport="activeViewport=4" |
557 v-show="viewport4Visible" | 557 v-show="viewport4Visible" |
558 canvas-id="canvas4" | 558 canvas-id="canvas4" |
559 v-bind:series="viewport4Series" | 559 v-bind:content="viewport4Content" |
560 v-bind:left="viewport4Left" | 560 v-bind:left="viewport4Left" |
561 v-bind:top="viewport4Top" | 561 v-bind:top="viewport4Top" |
562 v-bind:width="viewport4Width" | 562 v-bind:width="viewport4Width" |
563 v-bind:height="viewport4Height" | 563 v-bind:height="viewport4Height" |
564 v-bind:show-info="showInfo" | 564 v-bind:show-info="showInfo" |
577 left: left, | 577 left: left, |
578 top: top, | 578 top: top, |
579 width: width, | 579 width: width, |
580 height: height }"> | 580 height: height }"> |
581 <div v-bind:class="{ 'wvSplitpane__cellBorder--selected' : active, | 581 <div v-bind:class="{ 'wvSplitpane__cellBorder--selected' : active, |
582 'wvSplitpane__cellBorder' : series.color == '', | 582 'wvSplitpane__cellBorder' : content.color == '', |
583 'wvSplitpane__cellBorder--blue' : series.color == 'blue', | 583 'wvSplitpane__cellBorder--blue' : content.color == 'blue', |
584 'wvSplitpane__cellBorder--red' : series.color == 'red', | 584 'wvSplitpane__cellBorder--red' : content.color == 'red', |
585 'wvSplitpane__cellBorder--green' : series.color == 'green', | 585 'wvSplitpane__cellBorder--green' : content.color == 'green', |
586 'wvSplitpane__cellBorder--yellow' : series.color == 'yellow', | 586 'wvSplitpane__cellBorder--yellow' : content.color == 'yellow', |
587 'wvSplitpane__cellBorder--violet' : series.color == 'violet' | 587 'wvSplitpane__cellBorder--violet' : content.color == 'violet' |
588 }" | 588 }" |
589 ondragover="event.preventDefault()" | 589 ondragover="event.preventDefault()" |
590 v-on:drop="DragDrop($event)" | 590 v-on:drop="DragDrop($event)" |
591 style="width:100%;height:100%"> | 591 style="width:100%;height:100%"> |
592 <div class="wvSplitpane__cell" | 592 <div class="wvSplitpane__cell" |
598 style="position:absolute; left:0; top:0; width:100%; height:100%" | 598 style="position:absolute; left:0; top:0; width:100%; height:100%" |
599 oncontextmenu="return false"></canvas> | 599 oncontextmenu="return false"></canvas> |
600 | 600 |
601 <div v-show="showInfo"> | 601 <div v-show="showInfo"> |
602 <div class="wv-overlay"> | 602 <div class="wv-overlay"> |
603 <div v-if="'tags' in series" class="wv-overlay-topleft"> | 603 <div v-if="'tags' in content" class="wv-overlay-topleft"> |
604 {{ series.tags['0010,0010'] }}<br/> | 604 {{ content.tags['0010,0010'] }}<br/> |
605 {{ series.tags['0010,0020'] }} | 605 {{ content.tags['0010,0020'] }} |
606 </div> | 606 </div> |
607 <div v-if="'tags' in series" class="wv-overlay-topright"> | 607 <div v-if="'tags' in content" class="wv-overlay-topright"> |
608 {{ series.tags['0008,1030'] }}<br/> | 608 {{ content.tags['0008,1030'] }}<br/> |
609 {{ app.FormatDate(series.tags['0008,0020']) }}<br/> | 609 {{ app.FormatDate(content.tags['0008,0020']) }}<br/> |
610 {{ series.tags['0020,0011'] }} | {{ series.tags['0008,103e'] }} | 610 {{ content.tags['0020,0011'] }} | {{ content.tags['0008,103e'] }} |
611 </div> | 611 </div> |
612 <div class="wv-overlay-timeline-wrapper wvPrintExclude"> | 612 <div class="wv-overlay-timeline-wrapper wvPrintExclude"> |
613 <div style="text-align:left; padding:5px" v-show="numberOfFrames != 0"> | 613 <div style="text-align:left; padding:5px" v-show="numberOfFrames != 0"> |
614 <div style="width: 12em; padding: 1em;" v-show="cineControls"> | 614 <div style="width: 12em; padding: 1em;" v-show="cineControls"> |
615 <label> | 615 <label> |