feat(actions): simplify action corner api through the toolbarService (#5033)
This commit is contained in:
1 parent
f71b88e639
commit
7c15bb8901
246 files changed
+7930
-4270
No files matched your search
@@ -89,9 +89,9 @@ function modeFactory() {
|
||||
'@ohif/extension-test.customizationModule.custom-context-menu',
|
||||
]);
|
||||
|
||||
toolbarService.addButtons(toolbarButtons);
|
||||
toolbarService.register(toolbarButtons);
|
||||
console.debug('toolbarButtons', toolbarButtons);
|
||||
toolbarService.createButtonSection('primary', [
|
||||
toolbarService.updateSection(toolbarService.sections.primary, [
|
||||
'MeasurementTools',
|
||||
'Zoom',
|
||||
'WindowLevelGroup',
|
||||
@@ -103,7 +103,7 @@ function modeFactory() {
|
||||
'MoreTools',
|
||||
]);
|
||||
|
||||
toolbarService.createButtonSection('windowLevelSection', [
|
||||
toolbarService.updateSection('windowLevelSection', [
|
||||
'WindowLevel',
|
||||
'Soft tissue',
|
||||
'Lung',
|
||||
@@ -112,7 +112,42 @@ function modeFactory() {
|
||||
'Brain',
|
||||
]);
|
||||
|
||||
toolbarService.createButtonSection('measurementSection', [
|
||||
toolbarService.updateSection(toolbarService.sections.viewportActionMenu.topLeft, [
|
||||
'orientationMenu',
|
||||
'dataOverlayMenu',
|
||||
]);
|
||||
|
||||
toolbarService.updateSection(toolbarService.sections.viewportActionMenu.bottomMiddle, [
|
||||
'advancedRenderingControls',
|
||||
]);
|
||||
|
||||
toolbarService.updateSection('advancedRenderingControls', [
|
||||
'voiManualControlMenu',
|
||||
'Colorbar',
|
||||
'opacityMenu',
|
||||
'thresholdMenu',
|
||||
]);
|
||||
|
||||
toolbarService.updateSection(toolbarService.sections.viewportActionMenu.topRight, [
|
||||
'modalityLoadBadge',
|
||||
'trackingStatus',
|
||||
'navigationComponent',
|
||||
]);
|
||||
|
||||
toolbarService.updateSection(toolbarService.sections.viewportActionMenu.bottomLeft, [
|
||||
'windowLevelMenu',
|
||||
]);
|
||||
|
||||
toolbarService.updateSection('windowLevelSection', [
|
||||
'WindowLevel',
|
||||
'Soft tissue',
|
||||
'Lung',
|
||||
'Liver',
|
||||
'Bone',
|
||||
'Brain',
|
||||
]);
|
||||
|
||||
toolbarService.updateSection(toolbarService.sections.measurementSection, [
|
||||
'Length',
|
||||
'Bidirectional',
|
||||
'ArrowAnnotate',
|
||||
@@ -123,7 +158,7 @@ function modeFactory() {
|
||||
'LivewireContour',
|
||||
]);
|
||||
|
||||
toolbarService.createButtonSection('moreToolsSection', [
|
||||
toolbarService.updateSection(toolbarService.sections.moreToolsSection, [
|
||||
'Reset',
|
||||
'rotate-right',
|
||||
'flipHorizontal',
|
||||
|
||||
@@ -40,11 +40,11 @@ export const setToolActiveToolbar = {
|
||||
},
|
||||
};
|
||||
|
||||
const ReferenceLinesListeners = [
|
||||
const callbacks = (toolName: string) => [
|
||||
{
|
||||
commandName: 'setViewportForToolConfiguration',
|
||||
commandOptions: {
|
||||
toolName: 'ReferenceLines',
|
||||
toolName,
|
||||
},
|
||||
},
|
||||
];
|
||||
@@ -55,7 +55,6 @@ const toolbarButtons: Button[] = [
|
||||
uiType: 'ohif.toolButtonList',
|
||||
props: {
|
||||
buttonSection: 'measurementSection',
|
||||
groupId: 'MeasurementTools',
|
||||
},
|
||||
},
|
||||
{
|
||||
@@ -63,19 +62,143 @@ const toolbarButtons: Button[] = [
|
||||
uiType: 'ohif.toolButtonList',
|
||||
props: {
|
||||
buttonSection: 'moreToolsSection',
|
||||
groupId: 'MoreTools',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'WindowLevelGroup',
|
||||
uiType: 'ohif.toolButtonList',
|
||||
props: {
|
||||
groupId: 'WindowLevelGroup',
|
||||
buttonSection: 'windowLevelSection',
|
||||
},
|
||||
},
|
||||
|
||||
// tool defs
|
||||
{
|
||||
id: 'advancedRenderingControls',
|
||||
uiType: 'ohif.advancedRenderingControls',
|
||||
props: {
|
||||
evaluate: {
|
||||
name: 'evaluate.advancedRenderingControls',
|
||||
hideWhenDisabled: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'modalityLoadBadge',
|
||||
uiType: 'ohif.modalityLoadBadge',
|
||||
props: {
|
||||
icon: 'Status',
|
||||
label: 'Status',
|
||||
tooltip: 'Status',
|
||||
evaluate: {
|
||||
name: 'evaluate.modalityLoadBadge',
|
||||
hideWhenDisabled: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'navigationComponent',
|
||||
uiType: 'ohif.navigationComponent',
|
||||
props: {
|
||||
icon: 'Navigation',
|
||||
label: 'Navigation',
|
||||
tooltip: 'Navigate between segments/measurements and manage their visibility',
|
||||
evaluate: {
|
||||
name: 'evaluate.navigationComponent',
|
||||
hideWhenDisabled: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'trackingStatus',
|
||||
uiType: 'ohif.trackingStatus',
|
||||
props: {
|
||||
icon: 'TrackingStatus',
|
||||
label: 'Tracking Status',
|
||||
tooltip: 'View and manage tracking status of measurements and annotations',
|
||||
evaluate: {
|
||||
name: 'evaluate.trackingStatus',
|
||||
hideWhenDisabled: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'dataOverlayMenu',
|
||||
uiType: 'ohif.dataOverlayMenu',
|
||||
props: {
|
||||
icon: 'ViewportViews',
|
||||
label: 'Data Overlay',
|
||||
tooltip: 'Configure data overlay options and manage foreground/background display sets',
|
||||
evaluate: 'evaluate.dataOverlayMenu',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'orientationMenu',
|
||||
uiType: 'ohif.orientationMenu',
|
||||
props: {
|
||||
icon: 'OrientationSwitch',
|
||||
label: 'Orientation',
|
||||
tooltip:
|
||||
'Change viewport orientation between axial, sagittal, coronal and acquisition planes',
|
||||
evaluate: {
|
||||
name: 'evaluate.orientationMenu',
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'windowLevelMenu',
|
||||
uiType: 'ohif.windowLevelMenu',
|
||||
props: {
|
||||
icon: 'WindowLevel',
|
||||
label: 'Window Level',
|
||||
tooltip: 'Adjust window/level presets and customize image contrast settings',
|
||||
evaluate: 'evaluate.windowLevelMenu',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'voiManualControlMenu',
|
||||
uiType: 'ohif.voiManualControlMenu',
|
||||
props: {
|
||||
icon: 'WindowLevelAdvanced',
|
||||
label: 'Advanced Window Level',
|
||||
tooltip: 'Advanced window/level settings with manual controls and presets',
|
||||
evaluate: 'evaluate.voiManualControlMenu',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'thresholdMenu',
|
||||
uiType: 'ohif.thresholdMenu',
|
||||
props: {
|
||||
icon: 'Threshold',
|
||||
label: 'Threshold',
|
||||
tooltip: 'Image threshold settings',
|
||||
evaluate: {
|
||||
name: 'evaluate.thresholdMenu',
|
||||
hideWhenDisabled: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'opacityMenu',
|
||||
uiType: 'ohif.opacityMenu',
|
||||
props: {
|
||||
icon: 'Opacity',
|
||||
label: 'Opacity',
|
||||
tooltip: 'Image opacity settings',
|
||||
evaluate: {
|
||||
name: 'evaluate.opacityMenu',
|
||||
hideWhenDisabled: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'Colorbar',
|
||||
uiType: 'ohif.colorbar',
|
||||
props: {
|
||||
type: 'tool',
|
||||
label: 'Colorbar',
|
||||
},
|
||||
},
|
||||
_createWwwcPreset(1, 'Soft tissue', '400 / 40'),
|
||||
_createWwwcPreset(2, 'Lung', '1500 / -600'),
|
||||
_createWwwcPreset(3, 'Liver', '150 / 90'),
|
||||
@@ -338,10 +461,6 @@ const toolbarButtons: Button[] = [
|
||||
label: 'Reference Lines',
|
||||
tooltip: 'Show Reference Lines',
|
||||
commands: 'toggleEnabledDisabledToolbar',
|
||||
listeners: {
|
||||
[ViewportGridService.EVENTS.ACTIVE_VIEWPORT_ID_CHANGED]: ReferenceLinesListeners,
|
||||
[ViewportGridService.EVENTS.VIEWPORTS_READY]: ReferenceLinesListeners,
|
||||
},
|
||||
evaluate: 'evaluate.cornerstoneTool.toggle',
|
||||
},
|
||||
},
|
||||
|
||||
Reference in new issue
Block a user