import { Component } from 'react'; import Box from '@mui/material/Box'; import Dialog from '@mui/material/Dialog'; import DialogContent from '@mui/material/DialogContent'; import DialogTitle from '@mui/material/DialogTitle'; import Tab from '@mui/material/Tab'; import Tabs from '@mui/material/Tabs'; import NumbersIcon from '@mui/icons-material/Numbers'; import TuneIcon from '@mui/icons-material/Tune'; import NumberSettingsPanel from './NumberSettingsPanel'; import SettingsKeysPanel from './SettingsKeysPanel'; const TAB_KEYS = { keys: 'keys', numbers: 'numbers', }; const TABS = [ { id: TAB_KEYS.keys, label: 'Einstellungen', icon: , Panel: SettingsKeysPanel }, { id: TAB_KEYS.numbers, label: 'Nummernkreise', icon: , Panel: NumberSettingsPanel }, ]; export default class SettingsDialog extends Component { constructor(props) { super(props); this.state = { tab: TAB_KEYS.keys }; this.handleTabChange = this.handleTabChange.bind(this); } componentDidUpdate(prevProps) { const { open } = this.props; if (!open && prevProps.open) { this.setState({ tab: TAB_KEYS.keys }); } } handleTabChange(_event, value) { this.setState({ tab: value }); } render() { const { open, onClose } = this.props; const { tab } = this.state; return ( Einstellungen {TABS.map((t) => ( ))} {TABS.map((t) => ( ))} ); } }