diff --git a/new-client/src/plugins/coordinates/CoordinatesModel.js b/new-client/src/plugins/coordinates/CoordinatesModel.js index c2f8c8f68..02a3a8e75 100644 --- a/new-client/src/plugins/coordinates/CoordinatesModel.js +++ b/new-client/src/plugins/coordinates/CoordinatesModel.js @@ -21,7 +21,7 @@ class CoordinatesModel { this.map.addLayer(this.vector); this.coordinates = undefined; - this.transformedCoordinates = {}; + this.transformedCoordinates = []; } get getMap() { @@ -69,20 +69,27 @@ class CoordinatesModel { presentCoordinates() { var coordinates = this.coordinates; - var transformedCoordinates = {}; + var transformedCoordinates = []; var transformations = this.transformations; - transformations.map((transformation, i) => { - transformedCoordinates = { - coordinates: this.transform(coordinates, transformation.code) || "", - xtitle: transformation.xtitle || "", - ytitle: transformation.ytitle || "" - }; - - this.transformedCoordinates[i] = transformedCoordinates; - - return transformedCoordinates; - }); + if (transformations.length) { + transformations.map((transformation, i) => { + transformedCoordinates = { + code: transformation.code || "", + default: transformation.default || false, + hint: transformation.hint || "", + title: transformation.title || "", + xtitle: transformation.xtitle || "", + ytitle: transformation.ytitle || "", + inverseAxis: transformation.inverseAxis || false, + coordinates: this.transform(coordinates, transformation.code) || "" + }; + + this.transformedCoordinates[i] = transformedCoordinates; + + return this.transformedCoordinates; + }); + } this.localObserver.publish( "setTransformedCoordinates", diff --git a/new-client/src/plugins/coordinates/CoordinatesView.js b/new-client/src/plugins/coordinates/CoordinatesView.js index f4d027fb4..421deb73b 100644 --- a/new-client/src/plugins/coordinates/CoordinatesView.js +++ b/new-client/src/plugins/coordinates/CoordinatesView.js @@ -7,6 +7,7 @@ import TableHead from "@material-ui/core/TableHead"; import TableRow from "@material-ui/core/TableRow"; import Paper from "@material-ui/core/Paper"; import Typography from "@material-ui/core/Typography"; +import TextField from "@material-ui/core/TextField"; const styles = theme => ({ root: { @@ -21,7 +22,12 @@ const styles = theme => ({ position: "unset" } }, - table: {} + table: {}, + textField: { + marginLeft: theme.spacing(1), + marginRight: theme.spacing(1), + marginTop: theme.spacing(2) + } }); class CoordinatesView extends React.PureComponent { @@ -34,8 +40,6 @@ class CoordinatesView extends React.PureComponent { this.options = this.props.options; this.localObserver = this.props.localObserver; - this.transformations = this.props.options.transformations; - this.localObserver.subscribe( "setTransformedCoordinates", transformedCoordinates => { @@ -53,57 +57,58 @@ class CoordinatesView extends React.PureComponent { } renderProjections() { - if (this.transformations.length) { - return ( - <> - {this.transformations.map((coordinates, i) => { - return ( - - - - {coordinates.title} ({coordinates.code}) - - - - - {coordinates.ytitle}: - {this.state.transformedCoordinates - ? this.state.transformedCoordinates[i].coordinates[1] - : ""} - - - {coordinates.xtitle}: - {this.state.transformedCoordinates - ? this.state.transformedCoordinates[i].coordinates[0] - : ""} - - - - ); - })} - - ); - } else { - return ( - <> - - - - Sweref 99 12 00 - - - - - N: {this.props.coordinates} - - - E: {this.props.coordinates} - - - - - ); - } + const { classes } = this.props; + + return ( + <> + {this.state.transformedCoordinates + ? this.state.transformedCoordinates.map((transformations, i) => { + return ( + + + + {transformations.title} + + + ({transformations.code}) + + + + + + + + ); + }) + : null} + + ); } render() {