// Copyright (C) 2021-2022 Intel Corporation // // SPDX-License-Identifier: MIT import React from 'react'; import { useDispatch, useSelector } from 'react-redux'; import { Row, Col } from 'antd/lib/grid'; import Checkbox, { CheckboxChangeEvent } from 'antd/lib/checkbox'; import Text from 'antd/lib/typography/Text'; import InputNumber from 'antd/lib/input-number'; import Select from 'antd/lib/select'; import Slider from 'antd/lib/slider'; import Button from 'antd/lib/button'; import { switchGrid, changeGridColor, changeGridOpacity, changeBrightnessLevel, changeContrastLevel, changeSaturationLevel, changeGridSize, } from 'actions/settings-actions'; import { clamp } from 'utils/math'; import { GridColor, CombinedState, PlayerSettingsState } from 'reducers'; const minGridSize = 5; const maxGridSize = 1000; export default function ImageSetupsContent(): JSX.Element { const dispatch = useDispatch(); const { brightnessLevel, contrastLevel, saturationLevel, gridOpacity, gridColor, gridSize, grid: gridEnabled, } = useSelector((state: CombinedState): PlayerSettingsState => state.settings.player); return (
Image grid
Size Color Opacity { dispatch(switchGrid(event.target.checked)); }} /> { if (typeof value !== 'undefined' && value !== null) { const converted = Math.floor(clamp(+value, minGridSize, maxGridSize)); dispatch(changeGridSize(converted)); } }} /> { dispatch(changeGridOpacity(value as number)); }} /> Color settings
Brightness { dispatch(changeBrightnessLevel(value as number)); }} /> Contrast { dispatch(changeContrastLevel(value as number)); }} /> Saturation { dispatch(changeSaturationLevel(value as number)); }} />
); }