diff --git a/extensions/cornerstone/src/components/WindowLevelActionMenu/VolumeLighting.tsx b/extensions/cornerstone/src/components/WindowLevelActionMenu/VolumeLighting.tsx index 6aa6f5610..a6c07ddc2 100644 --- a/extensions/cornerstone/src/components/WindowLevelActionMenu/VolumeLighting.tsx +++ b/extensions/cornerstone/src/components/WindowLevelActionMenu/VolumeLighting.tsx @@ -5,6 +5,7 @@ export function VolumeLighting({ servicesManager, commandsManager, viewportId, + hasShade, }: VolumeLightingProps): ReactElement { const { cornerstoneViewportService } = servicesManager.services; const [ambient, setAmbient] = useState(null); @@ -38,11 +39,15 @@ export function VolumeLighting({ setDiffuse(diffuse); setSpecular(specular); }, [viewportId, cornerstoneViewportService]); + const disableOption = hasShade ? '' : 'ohif-disabled !opacity-40'; + const disableSlider = !hasShade; return ( <> -
+
-
+
-
+
); diff --git a/extensions/cornerstone/src/components/WindowLevelActionMenu/VolumeShade.tsx b/extensions/cornerstone/src/components/WindowLevelActionMenu/VolumeShade.tsx index 4ef52c0b2..cc7cee7d0 100644 --- a/extensions/cornerstone/src/components/WindowLevelActionMenu/VolumeShade.tsx +++ b/extensions/cornerstone/src/components/WindowLevelActionMenu/VolumeShade.tsx @@ -6,6 +6,7 @@ export function VolumeShade({ commandsManager, viewportId, servicesManager, + onClickShade = bool => {}, }: VolumeShadeProps): ReactElement { const { cornerstoneViewportService } = servicesManager.services; const [shade, setShade] = useState(true); @@ -22,6 +23,7 @@ export function VolumeShade({ const { actor } = viewport.getActors()[0]; const shade = actor.getProperty().getShade(); setShade(shade); + onClickShade(shade); setKey(key + 1); }, [viewportId, cornerstoneViewportService]); @@ -32,6 +34,7 @@ export function VolumeShade({ checked={shade} onChange={() => { setShade(!shade); + onClickShade(!shade); onShadeChange(!shade); }} /> diff --git a/extensions/cornerstone/src/types/ViewportPresets.ts b/extensions/cornerstone/src/types/ViewportPresets.ts index e954c2292..fc27bd324 100644 --- a/extensions/cornerstone/src/types/ViewportPresets.ts +++ b/extensions/cornerstone/src/types/ViewportPresets.ts @@ -57,10 +57,12 @@ export type VolumeShadeProps = { viewportId: string; commandsManager: CommandsManager; servicesManager: AppTypes.ServicesManager; + onClickShade?: (bool: boolean) => void; }; export type VolumeLightingProps = { viewportId: string; commandsManager: CommandsManager; servicesManager: AppTypes.ServicesManager; + hasShade: boolean; };