Disabled map select when loading a map

This commit is contained in:
Mitchell McCaffrey 2020-07-17 15:57:52 +10:00
parent f25261d70b
commit 61a2e1ac8d
4 changed files with 16 additions and 3 deletions

View File

@ -32,6 +32,7 @@ function Map({
onFogDrawRedo,
allowMapDrawing,
allowFogDrawing,
allowMapChange,
disabledTokens,
}) {
const { tokensById } = useContext(TokenDataContext);
@ -141,6 +142,9 @@ function Map({
if (!allowFogDrawing) {
disabledControls.push("fog");
}
if (!allowMapChange) {
disabledControls.push("map");
}
const disabledSettings = { fog: [], drawing: [] };
if (mapShapes.length === 0) {

View File

@ -67,6 +67,7 @@ function MapContols({
onMapStateChange={onMapStateChange}
currentMap={currentMap}
currentMapState={currentMapState}
disabled={disabledControls.includes("map")}
/>
),
},

View File

@ -11,6 +11,7 @@ function SelectMapButton({
onMapStateChange,
currentMap,
currentMapState,
disabled,
}) {
const [isModalOpen, setIsModalOpen] = useState(false);
@ -30,6 +31,7 @@ function SelectMapButton({
aria-label="Select Map"
title="Select Map"
onClick={openModal}
disabled={disabled}
>
<SelectMapIcon />
</IconButton>

View File

@ -25,9 +25,12 @@ import Tokens from "../components/token/Tokens";
*/
function NetworkedMapAndTokens({ session }) {
const { userId } = useContext(AuthContext);
const { assetLoadStart, assetLoadFinish, assetProgressUpdate } = useContext(
MapLoadingContext
);
const {
assetLoadStart,
assetLoadFinish,
assetProgressUpdate,
isLoading,
} = useContext(MapLoadingContext);
const { putToken, getToken } = useContext(TokenDataContext);
const { putMap, getMap, updateMap } = useContext(MapDataContext);
@ -363,6 +366,8 @@ function NetworkedMapAndTokens({ session }) {
};
});
const canChangeMap = !isLoading;
const canEditMapDrawing =
currentMap !== null &&
currentMapState !== null &&
@ -407,6 +412,7 @@ function NetworkedMapAndTokens({ session }) {
onFogDrawRedo={handleFogDrawRedo}
allowMapDrawing={canEditMapDrawing}
allowFogDrawing={canEditFogDrawing}
allowMapChange={canChangeMap}
disabledTokens={disabledMapTokens}
/>
<Tokens onMapTokenStateCreate={handleMapTokenStateCreate} />