fix(layout): Fix the issues with displaying vtkjs viewports (#500)
* fix(dependencies): Bump react-cornerstone-viewport to 0.1.29 * fix(dependencies): Bump ohif-cornerstone-extension to 0.0.32 * fix(layout): Get missing display set fields in viewport specific data from the original display set * fix(layout): Cache the viewport data to be used for the replaced viewport when it is empty since viewportSpecificData is cleaned when viewport is changed
This commit is contained in:
parent
f1f2981415
commit
6b8d1a695b
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "ohif-cornerstone-extension",
|
"name": "ohif-cornerstone-extension",
|
||||||
"version": "0.0.31",
|
"version": "0.0.32",
|
||||||
"description": "OHIF extension for Cornerstone",
|
"description": "OHIF extension for Cornerstone",
|
||||||
"author": "OHIF",
|
"author": "OHIF",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
@ -39,7 +39,7 @@
|
|||||||
"@babel/runtime": "^7.2.0",
|
"@babel/runtime": "^7.2.0",
|
||||||
"classnames": "^2.2.6",
|
"classnames": "^2.2.6",
|
||||||
"lodash.throttle": "^4.1.1",
|
"lodash.throttle": "^4.1.1",
|
||||||
"react-cornerstone-viewport": "0.1.28"
|
"react-cornerstone-viewport": "0.1.29"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/core": "^7.2.2",
|
"@babel/core": "^7.2.2",
|
||||||
|
|||||||
@ -4418,10 +4418,10 @@ randomfill@^1.0.3:
|
|||||||
randombytes "^2.0.5"
|
randombytes "^2.0.5"
|
||||||
safe-buffer "^5.1.0"
|
safe-buffer "^5.1.0"
|
||||||
|
|
||||||
react-cornerstone-viewport@0.1.28:
|
react-cornerstone-viewport@0.1.29:
|
||||||
version "0.1.28"
|
version "0.1.29"
|
||||||
resolved "https://registry.yarnpkg.com/react-cornerstone-viewport/-/react-cornerstone-viewport-0.1.28.tgz#ca1b0062c9f08868c653c11d6cdef8f5d519f90a"
|
resolved "https://registry.yarnpkg.com/react-cornerstone-viewport/-/react-cornerstone-viewport-0.1.29.tgz#7ef3c2f3d7dc45339b14c17a53e05db367a28394"
|
||||||
integrity sha512-lGXFB1pxUJE+tozAHjQD8KcmnGuGG/nD3CGrK44cFqx8e3W/CKU9/bZM6qomy/X1fK5TlnJUaZ9NOCaDLhzJrQ==
|
integrity sha512-KUjdqjti53v4eNyFTT3tXJ4cTyb64eMW3QF1cQqd+1+Re8UXSF1+k9uku15vR/Qt/YOv9Bsh74PabBct7BxWog==
|
||||||
dependencies:
|
dependencies:
|
||||||
lodash.debounce "^4.0.8"
|
lodash.debounce "^4.0.8"
|
||||||
moment "^2.23.0"
|
moment "^2.23.0"
|
||||||
|
|||||||
@ -78,7 +78,7 @@
|
|||||||
"lodash.isequal": "4.5.0",
|
"lodash.isequal": "4.5.0",
|
||||||
"moment": "^2.24.0",
|
"moment": "^2.24.0",
|
||||||
"ohif-core": "0.5.5",
|
"ohif-core": "0.5.5",
|
||||||
"ohif-cornerstone-extension": "0.0.31",
|
"ohif-cornerstone-extension": "0.0.32",
|
||||||
"ohif-dicom-html-extension": "^0.0.2",
|
"ohif-dicom-html-extension": "^0.0.2",
|
||||||
"ohif-dicom-microscopy-extension": "^0.0.5",
|
"ohif-dicom-microscopy-extension": "^0.0.5",
|
||||||
"ohif-dicom-pdf-extension": "^0.0.6",
|
"ohif-dicom-pdf-extension": "^0.0.6",
|
||||||
|
|||||||
@ -28,6 +28,8 @@ class ViewerMain extends Component {
|
|||||||
this.state = {
|
this.state = {
|
||||||
displaySets: [],
|
displaySets: [],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.cachedViewportData = {}
|
||||||
}
|
}
|
||||||
|
|
||||||
getDisplaySets(studies) {
|
getDisplaySets(studies) {
|
||||||
@ -81,8 +83,25 @@ class ViewerMain extends Component {
|
|||||||
) {
|
) {
|
||||||
let displaySet = viewportSpecificData[viewportIndex]
|
let displaySet = viewportSpecificData[viewportIndex]
|
||||||
|
|
||||||
// If the viewport is empty, get one available in study
|
// Use the cached display set in viewport if the new one is empty
|
||||||
if (!displaySet || !displaySet.displaySetInstanceUid) {
|
if (displaySet && !displaySet.displaySetInstanceUid) {
|
||||||
|
displaySet = this.cachedViewportData[viewportIndex]
|
||||||
|
}
|
||||||
|
|
||||||
|
if (
|
||||||
|
displaySet &&
|
||||||
|
displaySet.studyInstanceUid &&
|
||||||
|
displaySet.displaySetInstanceUid
|
||||||
|
) {
|
||||||
|
// Get missing fields from original display set
|
||||||
|
const originalDisplaySet = this.findDisplaySet(
|
||||||
|
this.props.studies,
|
||||||
|
displaySet.studyInstanceUid,
|
||||||
|
displaySet.displaySetInstanceUid
|
||||||
|
)
|
||||||
|
viewportData.push(Object.assign({}, originalDisplaySet, displaySet))
|
||||||
|
} else {
|
||||||
|
// If the viewport is empty, get one available in study
|
||||||
const { displaySets } = this.state
|
const { displaySets } = this.state
|
||||||
displaySet = displaySets.find(
|
displaySet = displaySets.find(
|
||||||
ds =>
|
ds =>
|
||||||
@ -90,11 +109,12 @@ class ViewerMain extends Component {
|
|||||||
v => v.displaySetInstanceUid === ds.displaySetInstanceUid
|
v => v.displaySetInstanceUid === ds.displaySetInstanceUid
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
viewportData.push(Object.assign({}, displaySet))
|
||||||
}
|
}
|
||||||
|
|
||||||
viewportData.push(displaySet)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.cachedViewportData = viewportData
|
||||||
|
|
||||||
return viewportData
|
return viewportData
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
18
yarn.lock
18
yarn.lock
@ -9688,15 +9688,15 @@ ohif-core@0.5.5:
|
|||||||
lodash.merge "^4.6.1"
|
lodash.merge "^4.6.1"
|
||||||
validate.js "^0.12.0"
|
validate.js "^0.12.0"
|
||||||
|
|
||||||
ohif-cornerstone-extension@0.0.31:
|
ohif-cornerstone-extension@0.0.32:
|
||||||
version "0.0.31"
|
version "0.0.32"
|
||||||
resolved "https://registry.yarnpkg.com/ohif-cornerstone-extension/-/ohif-cornerstone-extension-0.0.31.tgz#39669e5d8a5e39a4e84f0bdae02b39e222c222aa"
|
resolved "https://registry.yarnpkg.com/ohif-cornerstone-extension/-/ohif-cornerstone-extension-0.0.32.tgz#607852e2e300b320e29a37f0f8c9ced3cf4b07e5"
|
||||||
integrity sha512-7skySEBTkQ2cVOvHXI1Q4rPsjynD1xQ9xQTnPskNNvMEiH4/XJbBXsmbg37D3hocXL16CKIztHoYpNqF0cruYQ==
|
integrity sha512-qHpYno6pYT3UqqAVd+SsMvwIei2sPRxkasqt8uxDSA+tbsM/TaY8daICMknC5aRGvr5XrY9+gSztE6GPJbX0Og==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime" "^7.2.0"
|
"@babel/runtime" "^7.2.0"
|
||||||
classnames "^2.2.6"
|
classnames "^2.2.6"
|
||||||
lodash.throttle "^4.1.1"
|
lodash.throttle "^4.1.1"
|
||||||
react-cornerstone-viewport "0.1.28"
|
react-cornerstone-viewport "0.1.29"
|
||||||
|
|
||||||
ohif-dicom-html-extension@^0.0.2:
|
ohif-dicom-html-extension@^0.0.2:
|
||||||
version "0.0.2"
|
version "0.0.2"
|
||||||
@ -11480,10 +11480,10 @@ react-bootstrap-modal@4.2.0, react-bootstrap-modal@^4.2.0:
|
|||||||
react-overlays "^0.8.0"
|
react-overlays "^0.8.0"
|
||||||
react-transition-group "^2.0.0"
|
react-transition-group "^2.0.0"
|
||||||
|
|
||||||
react-cornerstone-viewport@0.1.28:
|
react-cornerstone-viewport@0.1.29:
|
||||||
version "0.1.28"
|
version "0.1.29"
|
||||||
resolved "https://registry.yarnpkg.com/react-cornerstone-viewport/-/react-cornerstone-viewport-0.1.28.tgz#ca1b0062c9f08868c653c11d6cdef8f5d519f90a"
|
resolved "https://registry.yarnpkg.com/react-cornerstone-viewport/-/react-cornerstone-viewport-0.1.29.tgz#7ef3c2f3d7dc45339b14c17a53e05db367a28394"
|
||||||
integrity sha512-lGXFB1pxUJE+tozAHjQD8KcmnGuGG/nD3CGrK44cFqx8e3W/CKU9/bZM6qomy/X1fK5TlnJUaZ9NOCaDLhzJrQ==
|
integrity sha512-KUjdqjti53v4eNyFTT3tXJ4cTyb64eMW3QF1cQqd+1+Re8UXSF1+k9uku15vR/Qt/YOv9Bsh74PabBct7BxWog==
|
||||||
dependencies:
|
dependencies:
|
||||||
lodash.debounce "^4.0.8"
|
lodash.debounce "^4.0.8"
|
||||||
moment "^2.23.0"
|
moment "^2.23.0"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user