import { FC } from 'react'; import { LocalizeText } from '../../../api'; import { Flex, LayoutGridItem, Text } from '../../../common'; import { FloorAction } from '@nitrots/nitro-renderer'; import { FloorplanEditor } from '@nitrots/nitro-renderer'; import { useFloorplanEditorContext } from '../FloorplanEditorContext'; interface FloorplanOptionsViewProps { } export const FloorplanOptionsView: FC = props => { const { visualizationSettings = null, setVisualizationSettings = null, floorAction, setFloorAction } = useFloorplanEditorContext(); const isSquareSelectMode = FloorplanEditor.instance.isSquareSelectMode; const selectAction = (action: number) => { setFloorAction(action); FloorplanEditor.instance.actionSettings.currentAction = action; }; const toggleSquareSelectMode = () => { FloorplanEditor.instance.toggleSquareSelectMode(); // force re-render by toggling action to same value setFloorAction(prev => prev); }; const changeDoorDirection = () => { setVisualizationSettings(prevValue => { const newValue = { ...prevValue }; if(newValue.entryPointDir < 7) { ++newValue.entryPointDir; } else { newValue.entryPointDir = 0; } return newValue; }); }; const onWallThicknessChange = (value: number) => { setVisualizationSettings(prevValue => { const newValue = { ...prevValue }; newValue.thicknessWall = value; return newValue; }); }; const onFloorThicknessChange = (value: number) => { setVisualizationSettings(prevValue => { const newValue = { ...prevValue }; newValue.thicknessFloor = value; return newValue; }); }; return ( { LocalizeText('floor.plan.editor.draw.mode') } selectAction(FloorAction.SET) }> selectAction(FloorAction.UNSET) }> selectAction(FloorAction.UP) }> selectAction(FloorAction.DOWN) }> selectAction(FloorAction.DOOR) }> FloorplanEditor.instance.toggleSelectAll() }> { LocalizeText('floor.plan.editor.enter.direction') } ); };