mirror of
https://github.com/chanzuckerberg/cellxgene.git
synced 2026-09-17 05:47:58 +08:00
reducer
This commit is contained in:
@@ -48,7 +48,7 @@ import { getEmbSubsetView } from "../../util/stateManager/viewStackHelpers";
|
||||
tosURL: state.config?.parameters?.about_legal_tos,
|
||||
privacyURL: state.config?.parameters?.about_legal_privacy,
|
||||
categoricalSelection: state.categoricalSelection,
|
||||
dotplotEnabled: true /* TODO(colinmegill) #632 wire dotplot*/,
|
||||
dotplotEnabled: state.layoutChoice.dotplot,
|
||||
};
|
||||
})
|
||||
class MenuBar extends React.PureComponent {
|
||||
@@ -195,7 +195,10 @@ class MenuBar extends React.PureComponent {
|
||||
dispatch(actions.resetSubsetAction());
|
||||
};
|
||||
|
||||
handleDotplotToggle = () => {};
|
||||
handleDotplotToggle = () => {
|
||||
const { dispatch } = this.props;
|
||||
dispatch({ type: "toggle dotplot" });
|
||||
};
|
||||
|
||||
render() {
|
||||
const {
|
||||
@@ -265,9 +268,6 @@ class MenuBar extends React.PureComponent {
|
||||
<Tooltip
|
||||
content="Enable dotplot mode (hides embedding)"
|
||||
position="bottom"
|
||||
disabled={
|
||||
false /* TODO(colinmegill) #632 if no genesets or categories*/
|
||||
}
|
||||
>
|
||||
<AnchorButton
|
||||
className={styles.menubarButton}
|
||||
@@ -277,9 +277,6 @@ class MenuBar extends React.PureComponent {
|
||||
onClick={this.handleDotplotToggle}
|
||||
active={dotplotEnabled}
|
||||
intent={dotplotEnabled ? "primary" : "none"}
|
||||
disabled={
|
||||
false /* TODO(colinmegill) #632 if no genesets or categories*/
|
||||
}
|
||||
/>
|
||||
</Tooltip>
|
||||
<Tooltip
|
||||
|
||||
24
client/src/reducers/dotplot.js
Normal file
24
client/src/reducers/dotplot.js
Normal file
@@ -0,0 +1,24 @@
|
||||
const Dotplot = (
|
||||
state = {
|
||||
row: null,
|
||||
column: null,
|
||||
},
|
||||
action
|
||||
) => {
|
||||
switch (action.type) {
|
||||
case "set dotplot row":
|
||||
return {
|
||||
...state,
|
||||
row: action.data,
|
||||
};
|
||||
case "set dotplot column":
|
||||
return {
|
||||
...state,
|
||||
column: action.data,
|
||||
};
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
};
|
||||
|
||||
export default Dotplot;
|
||||
@@ -24,7 +24,7 @@ function setToDefaultLayout(schema) {
|
||||
const LayoutChoice = (
|
||||
state = {
|
||||
available: [], // all available choices
|
||||
dotplot: true /* todo(colinmegill) #632 wire up inputs */,
|
||||
dotplot: true, // is the dotplot toggled on, or not
|
||||
current: undefined, // name of the current layout, eg, 'umap'
|
||||
currentDimNames: [], // dimension name
|
||||
},
|
||||
@@ -41,6 +41,14 @@ const LayoutChoice = (
|
||||
};
|
||||
}
|
||||
|
||||
case "toggle dotplot": {
|
||||
console.log("toggle: state, newstate", state.dotplot, !state.dotplot);
|
||||
return {
|
||||
...state,
|
||||
dotplot: !state.dotplot,
|
||||
};
|
||||
}
|
||||
|
||||
case "set layout choice": {
|
||||
const { schema } = nextSharedState.annoMatrix;
|
||||
const current = action.layoutChoice;
|
||||
|
||||
Reference in New Issue
Block a user