Add reset button to viewport for restoring default properties
This commit is contained in:
@@ -2555,6 +2555,39 @@ function App({ container_id, imageStacks, autoCacheStack, annotationJson, viewer
|
|||||||
}}
|
}}
|
||||||
onClick={e => e.stopPropagation()} // <-- prevent bubbling to viewport
|
onClick={e => e.stopPropagation()} // <-- prevent bubbling to viewport
|
||||||
>
|
>
|
||||||
|
<button
|
||||||
|
style={{
|
||||||
|
display: "block",
|
||||||
|
width: "100%",
|
||||||
|
margin: "2px 0 8px 0",
|
||||||
|
background: "#444",
|
||||||
|
color: "#fff",
|
||||||
|
border: "none",
|
||||||
|
borderRadius: "3px",
|
||||||
|
cursor: "pointer",
|
||||||
|
padding: "6px 0",
|
||||||
|
fontSize: "13px",
|
||||||
|
fontWeight: "600",
|
||||||
|
}}
|
||||||
|
onClick={(e) => {
|
||||||
|
e.stopPropagation();
|
||||||
|
// Reset viewport properties (window/level and camera) to defaults
|
||||||
|
try {
|
||||||
|
const viewportId = `CT_${i}`;
|
||||||
|
const renderingEngine = renderingEngineRef.current;
|
||||||
|
const viewport = renderingEngine?.getViewport(viewportId);
|
||||||
|
if (viewport) {
|
||||||
|
if (typeof viewport.resetProperties === 'function') viewport.resetProperties();
|
||||||
|
if (typeof viewport.resetCamera === 'function') viewport.resetCamera();
|
||||||
|
if (typeof viewport.render === 'function') viewport.render();
|
||||||
|
updateOverlay(i, viewport);
|
||||||
|
}
|
||||||
|
} catch (err) { console.warn('Failed to reset viewport properties', err); }
|
||||||
|
setPresetsOpenArr(prev => { const next = [...prev]; next[i] = false; return next; });
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
Reset to default
|
||||||
|
</button>
|
||||||
{WINDOW_LEVEL_PRESETS.map((preset) => (
|
{WINDOW_LEVEL_PRESETS.map((preset) => (
|
||||||
<button
|
<button
|
||||||
key={preset.name}
|
key={preset.name}
|
||||||
|
|||||||
Reference in New Issue
Block a user