From b413527371d218c76e0320d77620eefa53b40e71 Mon Sep 17 00:00:00 2001 From: Erik Ziegler Date: Sun, 10 Feb 2019 22:28:42 +0100 Subject: [PATCH] Demonstrate tool configuration via App redux settings (using Freehand tool) (ohif-cornerstone-extension: 0.0.8, ohif-viewer 0.0.10) --- .../ohif-cornerstone-extension/package.json | 2 +- .../src/ConnectedCornerstoneViewport.js | 6 +++++ Packages-react/ohif-core | 2 +- Packages-react/ohif-viewer/package.json | 6 ++--- Packages-react/ohif-viewer/src/App.js | 27 +++++++++++++++++++ Packages-react/ohif-viewer/src/sha.js | 2 +- Packages-react/ohif-viewer/src/version.js | 2 +- 7 files changed, 40 insertions(+), 7 deletions(-) diff --git a/Packages-react/extensions/ohif-cornerstone-extension/package.json b/Packages-react/extensions/ohif-cornerstone-extension/package.json index 3c4a32db9..8450b0a16 100644 --- a/Packages-react/extensions/ohif-cornerstone-extension/package.json +++ b/Packages-react/extensions/ohif-cornerstone-extension/package.json @@ -1,6 +1,6 @@ { "name": "ohif-cornerstone-extension", - "version": "0.0.7", + "version": "0.0.8", "description": "OHIF extension for Cornerstone", "author": "OHIF", "license": "MIT", diff --git a/Packages-react/extensions/ohif-cornerstone-extension/src/ConnectedCornerstoneViewport.js b/Packages-react/extensions/ohif-cornerstone-extension/src/ConnectedCornerstoneViewport.js index c82d93b33..1d759143a 100644 --- a/Packages-react/extensions/ohif-cornerstone-extension/src/ConnectedCornerstoneViewport.js +++ b/Packages-react/extensions/ohif-cornerstone-extension/src/ConnectedCornerstoneViewport.js @@ -8,6 +8,11 @@ const { setViewportActive, setViewportSpecificData, clearViewportSpecificData } const mapStateToProps = (state, ownProps) => { const activeButton = state.tools.buttons.find(tool => tool.active === true); + let availableTools; + + if (state.extensions && state.extensions.cornerstone && state.extensions.availableTools) { + availableTools = state.extensions.availableTools; + }; // If this is the active viewport, enable prefetching. const { viewportIndex } = ownProps;//.viewportData; @@ -18,6 +23,7 @@ const mapStateToProps = (state, ownProps) => { layout: state.viewports.layout, isActive, activeTool: activeButton && activeButton.command, + availableTools, enableStackPrefetch: isActive, //stack: viewportSpecificData.stack, cineToolData: viewportSpecificData.cine, diff --git a/Packages-react/ohif-core b/Packages-react/ohif-core index 847511a52..b77ff9c58 160000 --- a/Packages-react/ohif-core +++ b/Packages-react/ohif-core @@ -1 +1 @@ -Subproject commit 847511a526739d20b9178878989ae8593800e031 +Subproject commit b77ff9c585fac5c75abe674d9460c8552af40127 diff --git a/Packages-react/ohif-viewer/package.json b/Packages-react/ohif-viewer/package.json index 21a29cf70..ffb0e9ad3 100644 --- a/Packages-react/ohif-viewer/package.json +++ b/Packages-react/ohif-viewer/package.json @@ -1,6 +1,6 @@ { "name": "ohif-viewer", - "version": "0.0.9", + "version": "0.0.10", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -103,8 +103,8 @@ "dicomweb-client": "^0.4.2", "hammerjs": "^2.0.8", "lodash.isequal": "^4.5.0", - "ohif-core": "^0.2.7", - "ohif-cornerstone-extension": "^0.0.7", + "ohif-core": "^0.2.8", + "ohif-cornerstone-extension": "^0.0.8", "ohif-dicom-html-extension": "^0.0.2", "ohif-dicom-microscopy-extension": "^0.0.5", "ohif-dicom-pdf-extension": "^0.0.5", diff --git a/Packages-react/ohif-viewer/src/App.js b/Packages-react/ohif-viewer/src/App.js index ddba2d698..bc7ebbcc0 100644 --- a/Packages-react/ohif-viewer/src/App.js +++ b/Packages-react/ohif-viewer/src/App.js @@ -103,6 +103,13 @@ const defaultButtons = [ iconClasses: 'fa fa-circle', active: false }, + { + command: 'FreehandMouse', + type: 'tool', + text: 'Freehand', + iconClasses: 'fa fa-star', + active: false + }, { command: 'reset', type: 'command', @@ -116,6 +123,26 @@ const buttonsAction = OHIF.redux.actions.setAvailableButtons(defaultButtons); store.dispatch(buttonsAction); +const availableTools = [ + { name: 'Pan', mouseButtonMasks: [1, 4] }, + { name: 'Zoom', mouseButtonMasks: [1, 2] }, + { name: 'Wwwc', mouseButtonMasks: [1] }, + { name: 'Bidirectional', mouseButtonMasks: [1] }, + { name: 'Length', mouseButtonMasks: [1] }, + { name: 'Angle', mouseButtonMasks: [1] }, + { name: 'StackScroll', mouseButtonMasks: [1] }, + { name: 'Brush', mouseButtonMasks: [1] }, + { name: 'FreehandMouse', mouseButtonMasks: [1] }, + { name: 'PanMultiTouch' }, + { name: 'ZoomTouchPinch' }, + { name: 'StackScrollMouseWheel' }, + { name: 'StackScrollMultiTouch' } +]; + +const toolAction = OHIF.redux.actions.setExtensionData('cornerstone', { availableTools }); + +store.dispatch(toolAction); + /** TODO: extensions should be passed in as prop as soon as we have the extensions as separate packages and then registered by ExtensionsManager */ const extensions = [ new OHIFCornerstoneExtension(), diff --git a/Packages-react/ohif-viewer/src/sha.js b/Packages-react/ohif-viewer/src/sha.js index e0bc18084..b8433c23c 100644 --- a/Packages-react/ohif-viewer/src/sha.js +++ b/Packages-react/ohif-viewer/src/sha.js @@ -1 +1 @@ -export default '2868b08a4aa5f31d63e945c150e1e412f032c633'; +export default 'e2359800402212ac6ab18e8a0cfed34b238516d7'; diff --git a/Packages-react/ohif-viewer/src/version.js b/Packages-react/ohif-viewer/src/version.js index b6ed91115..422be783c 100644 --- a/Packages-react/ohif-viewer/src/version.js +++ b/Packages-react/ohif-viewer/src/version.js @@ -1 +1 @@ -export default '0.0.8'; +export default '0.0.9';