diff options
| author | Georgios Andreadis <g.andreadis@student.tudelft.nl> | 2017-09-11 11:53:06 +0200 |
|---|---|---|
| committer | Georgios Andreadis <g.andreadis@student.tudelft.nl> | 2017-09-23 10:06:00 +0200 |
| commit | aa448cb5c3e2e372dad1c79ffc32ff32144b4140 (patch) | |
| tree | 19f6cff07ca75f541d543ca5e0eb65c50b8e93b8 /src/containers | |
| parent | 8bd2bc91cc7e97f233031a42ccfda92af5e8bb96 (diff) | |
Move zoom level and map position info to store
Diffstat (limited to 'src/containers')
| -rw-r--r-- | src/containers/map/MapStage.js | 26 | ||||
| -rw-r--r-- | src/containers/map/layers/MapLayer.js | 15 | ||||
| -rw-r--r-- | src/containers/map/layers/ObjectHoverLayer.js | 2 | ||||
| -rw-r--r-- | src/containers/map/layers/RoomHoverLayer.js | 2 |
4 files changed, 45 insertions, 0 deletions
diff --git a/src/containers/map/MapStage.js b/src/containers/map/MapStage.js new file mode 100644 index 00000000..62dd7463 --- /dev/null +++ b/src/containers/map/MapStage.js @@ -0,0 +1,26 @@ +import {connect} from "react-redux"; +import {setMapDimensions, setMapPosition, setMapScale} from "../../actions/map"; +import MapStageComponent from "../../components/map/MapStageComponent"; + +const mapStateToProps = state => { + return { + mapPosition: state.map.position, + mapDimensions: state.map.dimensions, + mapScale: state.map.scale, + }; +}; + +const mapDispatchToProps = dispatch => { + return { + setMapPosition: (x, y) => dispatch(setMapPosition(x, y)), + setMapDimensions: (width, height) => dispatch(setMapDimensions(width, height)), + setMapScale: (scale) => dispatch(setMapScale(scale)), + }; +}; + +const MapStage = connect( + mapStateToProps, + mapDispatchToProps +)(MapStageComponent); + +export default MapStage; diff --git a/src/containers/map/layers/MapLayer.js b/src/containers/map/layers/MapLayer.js new file mode 100644 index 00000000..9ef5c662 --- /dev/null +++ b/src/containers/map/layers/MapLayer.js @@ -0,0 +1,15 @@ +import {connect} from "react-redux"; +import MapLayerComponent from "../../../components/map/layers/MapLayerComponent"; + +const mapStateToProps = state => { + return { + mapPosition: state.map.position, + mapScale: state.map.scale, + }; +}; + +const MapLayer = connect( + mapStateToProps +)(MapLayerComponent); + +export default MapLayer; diff --git a/src/containers/map/layers/ObjectHoverLayer.js b/src/containers/map/layers/ObjectHoverLayer.js index d0cc35fd..b0201257 100644 --- a/src/containers/map/layers/ObjectHoverLayer.js +++ b/src/containers/map/layers/ObjectHoverLayer.js @@ -5,6 +5,8 @@ import {findTileWithPosition} from "../../../util/tile-calculations"; const mapStateToProps = state => { return { + mapPosition: state.map.position, + mapScale: state.map.scale, isEnabled: () => state.construction.inRackConstructionMode, isValid: (x, y) => { if (state.interactionLevel.mode !== "ROOM") { diff --git a/src/containers/map/layers/RoomHoverLayer.js b/src/containers/map/layers/RoomHoverLayer.js index 23f590d5..528e45d3 100644 --- a/src/containers/map/layers/RoomHoverLayer.js +++ b/src/containers/map/layers/RoomHoverLayer.js @@ -9,6 +9,8 @@ import { const mapStateToProps = state => { return { + mapPosition: state.map.position, + mapScale: state.map.scale, isEnabled: () => state.construction.currentRoomInConstruction !== -1, isValid: (x, y) => { if (state.interactionLevel.mode !== "BUILDING") { |
