Pull config from window for now

This commit is contained in:
dannyrb 2019-05-01 13:10:44 -04:00
parent 94e45b1b65
commit 7f52bade3e
4 changed files with 100 additions and 100 deletions

View File

@ -1,21 +1,23 @@
import { connect } from 'react-redux';
import { ToolbarSection } from 'react-viewerbase';
import OHIF from 'ohif-core'
import OHIF from 'ohif-core';
const { setToolActive } = OHIF.redux.actions;
const Icons = 'icons.svg';
const Icons = `${window.config.routerBasenameicons}icons.svg`;
const mapStateToProps = state => {
const activeButton = state.tools.buttons.find(tool => tool.active === true);
return {
buttons: [ {
command: 'Rotate',
type: 'tool',
text: 'Rotate',
svgUrl: `${Icons}#3d-rotate`,
active: true
}],
buttons: [
{
command: 'Rotate',
type: 'tool',
text: 'Rotate',
svgUrl: `${Icons}#3d-rotate`,
active: true
}
],
activeCommand: 'Rotate'
};
};

View File

@ -1,7 +1,7 @@
import React from 'react';
import './OHIFLogo.css';
import React from 'react'
import './OHIFLogo.css'
const Icons = 'icons.svg';
const Icons = `${window.config.routerBasenameicons}icons.svg`
function OHIFLogo() {
return (
@ -16,7 +16,7 @@ function OHIFLogo() {
</svg>
<div className="header-logo-text">Open Health Imaging Foundation</div>
</a>
);
)
}
export default OHIFLogo;
export default OHIFLogo

View File

@ -1,42 +1,42 @@
import { connect } from 'react-redux';
import PluginSwitch from './PluginSwitch.js';
import OHIF from 'ohif-core';
import { connect } from 'react-redux'
import PluginSwitch from './PluginSwitch.js'
import OHIF from 'ohif-core'
const { setLayout } = OHIF.redux.actions;
const { setLayout } = OHIF.redux.actions
const mapStateToProps = state => {
const { activeViewportIndex, layout } = state.viewports;
const { activeViewportIndex, layout } = state.viewports
return {
activeViewportIndex,
layout
};
};
layout,
}
}
const mapDispatchToProps = dispatch => {
return {
setLayout: data => {
dispatch(setLayout(data));
}
};
};
dispatch(setLayout(data))
},
}
}
function setSingleLayoutData(originalArray, viewportIndex, data) {
const viewports = originalArray.slice();
const layoutData = Object.assign({}, viewports[viewportIndex], data);
const viewports = originalArray.slice()
const layoutData = Object.assign({}, viewports[viewportIndex], data)
viewports[viewportIndex] = layoutData;
viewports[viewportIndex] = layoutData
return viewports;
return viewports
}
const mergeProps = (propsFromState, propsFromDispatch, ownProps) => {
const { activeViewportIndex, layout } = propsFromState;
const { setLayout } = propsFromDispatch;
const { activeViewportIndex, layout } = propsFromState
const { setLayout } = propsFromDispatch
// TODO: Do not display certain options if the current display set
// cannot be displayed using these view types
const Icons = 'icons.svg';
const Icons = `${window.config.routerBasenameicons}icons.svg`
const buttons = [
{
text: 'Acquired',
@ -44,16 +44,16 @@ const mergeProps = (propsFromState, propsFromDispatch, ownProps) => {
iconClasses: 'fa fa-bars',
active: false,
onClick: click => {
console.warn('Original Acquisition');
console.warn('Original Acquisition')
const layoutData = setSingleLayoutData(
layout.viewports,
activeViewportIndex,
{ plugin: 'cornerstone' }
);
)
setLayout({ viewports: layoutData });
}
setLayout({ viewports: layoutData })
},
},
{
text: 'Axial',
@ -61,46 +61,46 @@ const mergeProps = (propsFromState, propsFromDispatch, ownProps) => {
svgClasses: 'icon-rotate-120',
active: false,
onClick: click => {
console.warn('Axial');
console.warn('Axial')
const data = {
plugin: 'vtk',
vtk: {
mode: 'mpr',
sliceNormal: [0, 0, 1]
}
};
sliceNormal: [0, 0, 1],
},
}
const layoutData = setSingleLayoutData(
layout.viewports,
activeViewportIndex,
data
);
)
setLayout({ viewports: layoutData });
}
setLayout({ viewports: layoutData })
},
},
{
text: 'Sagittal',
svgUrl: `${Icons}#cube`,
active: false,
onClick: click => {
console.warn('Sagittal');
console.warn('Sagittal')
const data = {
plugin: 'vtk',
vtk: {
mode: 'mpr',
sliceNormal: [1, 0, 0]
}
};
sliceNormal: [1, 0, 0],
},
}
const layoutData = setSingleLayoutData(
layout.viewports,
activeViewportIndex,
data
);
)
setLayout({ viewports: layoutData });
}
setLayout({ viewports: layoutData })
},
},
{
text: 'Coronal',
@ -108,24 +108,24 @@ const mergeProps = (propsFromState, propsFromDispatch, ownProps) => {
svgClasses: 'fa-rotate-90 fa-flip-horizontal',
active: false,
onClick: click => {
console.warn('Coronal');
console.warn('Coronal')
const data = {
plugin: 'vtk',
vtk: {
mode: 'mpr',
sliceNormal: [0, 1, 0]
}
};
sliceNormal: [0, 1, 0],
},
}
const layoutData = setSingleLayoutData(
layout.viewports,
activeViewportIndex,
data
);
)
setLayout({ viewports: layoutData });
}
}
setLayout({ viewports: layoutData })
},
},
/*{
text: '3D',
svgUrl: `${Icons}#cube`,
@ -143,17 +143,17 @@ const mergeProps = (propsFromState, propsFromDispatch, ownProps) => {
setLayout({ viewports: layoutData });
}
}*/
];
]
return {
buttons
};
};
buttons,
}
}
const ConnectedPluginSwitch = connect(
mapStateToProps,
mapDispatchToProps,
mergeProps
)(PluginSwitch);
)(PluginSwitch)
export default ConnectedPluginSwitch;
export default ConnectedPluginSwitch

View File

@ -1,12 +1,12 @@
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import OHIF from 'ohif-core';
import { RoundedButtonGroup } from 'react-viewerbase';
import ConnectedLayoutButton from './ConnectedLayoutButton';
import ConnectedPluginSwitch from './ConnectedPluginSwitch.js';
import './ToolbarRow.css';
import React, { Component } from 'react'
import PropTypes from 'prop-types'
import OHIF from 'ohif-core'
import { RoundedButtonGroup } from 'react-viewerbase'
import ConnectedLayoutButton from './ConnectedLayoutButton'
import ConnectedPluginSwitch from './ConnectedPluginSwitch.js'
import './ToolbarRow.css'
const Icons = 'icons.svg';
const Icons = `${window.config.routerBasenameicons}icons.svg`
class ToolbarRow extends Component {
static propTypes = {
@ -14,21 +14,21 @@ class ToolbarRow extends Component {
rightSidebarOpen: PropTypes.bool.isRequired,
setLeftSidebarOpen: PropTypes.func,
setRightSidebarOpen: PropTypes.func,
pluginId: PropTypes.string
};
pluginId: PropTypes.string,
}
static defaultProps = {
leftSidebarOpen: false,
rightSidebarOpen: false
};
rightSidebarOpen: false,
}
onLeftSidebarValueChanged = value => {
this.props.setLeftSidebarOpen(!!value);
};
this.props.setLeftSidebarOpen(!!value)
}
onRightSidebarValueChanged = value => {
this.props.setRightSidebarOpen(!!value);
};
this.props.setRightSidebarOpen(!!value)
}
render() {
const leftSidebarToggle = [
@ -37,9 +37,9 @@ class ToolbarRow extends Component {
svgLink: `${Icons}#icon-studies`,
svgWidth: 15,
svgHeight: 13,
bottomLabel: 'Series'
}
];
bottomLabel: 'Series',
},
]
const rightSidebarToggle = [
{
@ -47,32 +47,30 @@ class ToolbarRow extends Component {
svgLink: `${Icons}#icon-measurements-lesions`,
svgWidth: 15,
svgHeight: 13,
bottomLabel: 'Measurements'
}
];
bottomLabel: 'Measurements',
},
]
const leftSidebarValue = this.props.leftSidebarOpen
? leftSidebarToggle[0].value
: null;
: null
const rightSidebarValue = this.props.rightSidebarOpen
? rightSidebarToggle[0].value
: null;
: null
const currentPluginId = this.props.pluginId;
const currentPluginId = this.props.pluginId
const { PLUGIN_TYPES, availablePlugins } = OHIF.plugins;
const { PLUGIN_TYPES, availablePlugins } = OHIF.plugins
const plugin = availablePlugins.find(entry => {
return (
entry.type === PLUGIN_TYPES.TOOLBAR && entry.id === currentPluginId
);
});
return entry.type === PLUGIN_TYPES.TOOLBAR && entry.id === currentPluginId
})
let pluginComp;
let pluginComp
if (plugin) {
const PluginComponent = plugin.component;
const PluginComponent = plugin.component
pluginComp = <PluginComponent />;
pluginComp = <PluginComponent />
}
return (
@ -95,8 +93,8 @@ class ToolbarRow extends Component {
/>
</div>
</div>
);
)
}
}
export default ToolbarRow;
export default ToolbarRow