comparison Applications/StoneWebViewer/WebApplication/app.js @ 1674:0621e523b670

number of frames in badge
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 23 Nov 2020 17:05:24 +0100
parents dd50f8a1a2be
children 51bab5188a13
comparison
equal deleted inserted replaced
1673:dd50f8a1a2be 1674:0621e523b670
48 data: function () { 48 data: function () {
49 return { 49 return {
50 stone: stone, // To access global object "stone" from "index.html" 50 stone: stone, // To access global object "stone" from "index.html"
51 status: 'waiting', 51 status: 'waiting',
52 currentFrame: 0, 52 currentFrame: 0,
53 framesCount: 0, 53 numberOfFrames: 0,
54 quality: '', 54 quality: '',
55 cineControls: false, 55 cineControls: false,
56 cineIncrement: 0, 56 cineIncrement: 0,
57 cineFramesPerSecond: 30, 57 cineFramesPerSecond: 30,
58 cineTimeoutId: null, 58 cineTimeoutId: null,
123 var that = this; 123 var that = this;
124 124
125 window.addEventListener('FrameUpdated', function(args) { 125 window.addEventListener('FrameUpdated', function(args) {
126 if (args.detail.canvasId == that.canvasId) { 126 if (args.detail.canvasId == that.canvasId) {
127 that.currentFrame = (args.detail.currentFrame + 1); 127 that.currentFrame = (args.detail.currentFrame + 1);
128 that.framesCount = args.detail.framesCount; 128 that.numberOfFrames = args.detail.numberOfFrames;
129 that.quality = args.detail.quality; 129 that.quality = args.detail.quality;
130 } 130 }
131 }); 131 });
132 132
133 window.addEventListener('SeriesDetailsReady', function(args) { 133 window.addEventListener('SeriesDetailsReady', function(args) {
420 if (studyInstanceUid in indexStudies) { 420 if (studyInstanceUid in indexStudies) {
421 seriesIndex[seriesInstanceUid] = series.length; 421 seriesIndex[seriesInstanceUid] = series.length;
422 var study = studies[indexStudies[studyInstanceUid]]; 422 var study = studies[indexStudies[studyInstanceUid]];
423 study.series.push(i); 423 study.series.push(i);
424 series.push({ 424 series.push({
425 //'length' : 4, 425 'numberOfFrames' : 0,
426 'complete' : false, 426 'complete' : false,
427 'type' : stone.ThumbnailType.LOADING, 427 'type' : stone.ThumbnailType.LOADING,
428 'color': study.color, 428 'color': study.color,
429 'tags': sourceSeries[i] 429 'tags': sourceSeries[i]
430 }); 430 });
579 var oldComplete = series.complete; 579 var oldComplete = series.complete;
580 580
581 series.complete = stone.IsSeriesComplete(seriesInstanceUid); 581 series.complete = stone.IsSeriesComplete(seriesInstanceUid);
582 582
583 if (!oldComplete && 583 if (!oldComplete &&
584 series.complete && 584 series.complete)
585 seriesInstanceUid in pendingSeriesPdf_) { 585 {
586 stone.FetchPdf(studyInstanceUid, seriesInstanceUid); 586 series.numberOfFrames = stone.GetSeriesNumberOfFrames(seriesInstanceUid);
587 delete pendingSeriesPdf_[seriesInstanceUid]; 587
588 if (seriesInstanceUid in pendingSeriesPdf_) {
589 stone.FetchPdf(studyInstanceUid, seriesInstanceUid);
590 delete pendingSeriesPdf_[seriesInstanceUid];
591 }
588 } 592 }
589 593
590 // https://fr.vuejs.org/2016/02/06/common-gotchas/#Why-isn%E2%80%99t-the-DOM-updating 594 // https://fr.vuejs.org/2016/02/06/common-gotchas/#Why-isn%E2%80%99t-the-DOM-updating
591 this.$set(this.series, index, series); 595 this.$set(this.series, index, series);
592 596