show all categorical options filter button

This commit is contained in:
Colin Megill
2018-01-04 17:53:14 -08:00
parent 6fd5999273
commit 04ae59c1d4
3 changed files with 25 additions and 2 deletions
@@ -16,6 +16,12 @@ class Category extends React.Component {
colorAccessor: this.props.metadataField
})
}
toggleAll() {
this.props.dispatch({
type: "categorical metadata filter all of these",
metadataField: this.props.metadataField
})
}
render() {
return (
<div style={{
@@ -30,7 +30,8 @@ const updateCellSelectionMiddleware = (store) => {
action.type === "graph brush deselect" ||
action.type === "categorical metadata filter deselect" ||
action.type === "categorical metadata filter select" ||
action.type === "categorical metadata filter only this"
action.type === "categorical metadata filter only this" ||
action.type === "categorical metadata filter all of these"
;
if (
@@ -158,8 +159,19 @@ const updateCellSelectionMiddleware = (store) => {
...s.controls.categoricalAsBooleansMap,
[action.metadataField]: metadataFieldWithOnlyThisValueSelected
}
console.log('within', metadataFieldWithOnlyThisValueSelected)
} else if (action.type === "categorical metadata filter all of these") {
const metadataFieldWithAllOfTheseValueSelected = {};
/* set EVERYTHING to false in this intermediate object */
_.each(s.controls.categoricalAsBooleansMap[action.metadataField], (isActive, option) => {
metadataFieldWithAllOfTheseValueSelected[option] = true;
})
newCategoricalAsBooleansMap = {
...s.controls.categoricalAsBooleansMap,
[action.metadataField]: metadataFieldWithAllOfTheseValueSelected
}
}
const inactiveCategories = [];
+5
View File
@@ -94,6 +94,11 @@ const Controls = (state = {
categoricalAsBooleansMap: action.newCategoricalAsBooleansMap, /* this comes from middleware */
currentCellSelection: action.newSelection /* this comes from middleware */
})
case "categorical metadata filter all of these":
return Object.assign({}, state, {
categoricalAsBooleansMap: action.newCategoricalAsBooleansMap, /* this comes from middleware */
currentCellSelection: action.newSelection /* this comes from middleware */
})
/*******************************
Color Scale
*******************************/