Skip to content

Commit

Permalink
Fix/reactify RulerControl with useControl
Browse files Browse the repository at this point in the history
Correct useControl for RulerControl
mapbox-gl-controls was deprecated, moved to monorepo `@mapbox-controls/ruler`
https://github.com/korywka/mapbox-controls/tree/master/packages/ruler
  • Loading branch information
jo-chemla committed Jul 19, 2024
1 parent edb2074 commit d0432b1
Showing 1 changed file with 14 additions and 10 deletions.
24 changes: 14 additions & 10 deletions src/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,10 @@ import GeocoderControl from "./geocoder-control";
import ControlPanelDrawer, { type MapSplitMode } from "./control-panel";
import { set, subMonths } from "date-fns";
import Split from "react-split";
import {RulerControl} from 'mapbox-gl-controls'
import { ToggleButton, ToggleButtonGroup } from "@mui/material";
import RulerControl from '@mapbox-controls/ruler';
import '@mapbox-controls/ruler/src/index.css';


import {
planetBasemapUrl,
Expand Down Expand Up @@ -123,15 +125,11 @@ const { url: rightWaybackUrl, loading: rightLoading } = useWaybackUrl(rightTimel
// rightMapRef.current.resize();
}

const leftRuler = new RulerControl();
const rightRuler = new RulerControl();

if (!rulerOk) {
// console.log("Adding ruler control");
leftMapRef.current?.getMap()?.addControl(leftRuler, "top-left");
rightMapRef.current?.getMap()?.addControl(rightRuler, "top-right");
if (leftMapRef.current?.getMap()) {rulerOk=true;}
// setRulerOk(true);
function WrappedRulerControl(props) {
useControl(() => new RulerControl(props), {
position: props.position
});
return null;
}

// Update raster TMS source faster than react component remount on timelineDate state update
Expand Down Expand Up @@ -409,6 +407,9 @@ const { url: rightWaybackUrl, loading: rightLoading } = useWaybackUrl(rightTimel
flyTo={false}
mapRef={leftMapRef}
/>
<WrappedRulerControl
position="top-left"
/>

{leftSelectedTms == BasemapsIds.Mapbox ? (
<></>
Expand Down Expand Up @@ -486,6 +487,9 @@ const { url: rightWaybackUrl, loading: rightLoading } = useWaybackUrl(rightTimel
// style={RightMapStyle}
mapStyle={rightMapboxMapStyle}
>
<WrappedRulerControl
position="top-right"
/>
{
rightSelectedTms == BasemapsIds.Mapbox ? (
<></> ) :
Expand Down

0 comments on commit d0432b1

Please sign in to comment.