ohif-viewer/extensions/cornerstone-dynamic-volume/src/getPanelModule.tsx

61 lines
1.6 KiB
TypeScript
Raw Normal View History

import React from 'react';
import { DynamicDataPanel } from './panels';
import { Toolbox } from '@ohif/extension-default';
2024-11-06 13:15:27 +01:00
import { PanelSegmentation } from '@ohif/extension-cornerstone';
import DynamicExport from './panels/DynamicExport';
2024-11-06 13:15:27 +01:00
function getPanelModule({ commandsManager, extensionManager, servicesManager, configuration }) {
const { toolbarService } = servicesManager.services;
2024-11-06 13:15:27 +01:00
const wrappedDynamicDataPanel = () => {
return (
<DynamicDataPanel
commandsManager={commandsManager}
servicesManager={servicesManager}
extensionManager={extensionManager}
/>
);
};
2024-11-06 13:15:27 +01:00
const wrappedDynamicSegmentation = () => {
return (
<>
<Toolbox
buttonSectionId={toolbarService.sections.dynamicToolbox}
2025-12-12 16:46:56 +01:00
title="Buttons:Threshold Tools"
/>
2024-11-06 13:15:27 +01:00
<PanelSegmentation
servicesManager={servicesManager}
2024-11-06 13:15:27 +01:00
commandsManager={commandsManager}
extensionManager={extensionManager}
2024-11-06 13:15:27 +01:00
configuration={configuration}
>
<DynamicExport
servicesManager={servicesManager}
commandsManager={commandsManager}
/>
</PanelSegmentation>
</>
);
};
return [
{
name: 'dynamic-volume',
iconName: 'tab-4d',
iconLabel: '4D Workflow',
label: '4D Workflow',
component: wrappedDynamicDataPanel,
},
{
2024-11-06 13:15:27 +01:00
name: 'dynamic-segmentation',
iconName: 'tab-segmentation',
iconLabel: 'Segmentation',
label: 'Segmentation',
component: wrappedDynamicSegmentation,
},
];
}
export default getPanelModule;