UNPKG

itk-viewer-material-ui

Version:

[![npm version](https://badge.fury.io/js/itk-viewer-material-ui.svg)](https://badge.fury.io/js/itk-viewer-material-ui)

46 lines (40 loc) 1.15 kB
import React, { useEffect, useRef } from 'react' import { useActor } from '@xstate/react' import { AppBar, Icon, IconButton, Toolbar, Typography } from '@mui/material' import { toggleIconDataUri } from 'itk-viewer-icons' import toggleUICollapsed from './toggleUICollapsed' import './Panel.css' function AppToolbar(props) { const { service } = props const collapseUIButton = useRef(null) const [state, send] = useActor(service) useEffect(() => { state.context.main.collapseUIButton = collapseUIButton.current }, []) const handleToggle = () => { send('TOGGLE_UI_COLLAPSED') toggleUICollapsed(state.context) } return ( <AppBar className="appBar"> <Toolbar> <IconButton id="toggleDrawer" size="small" ref={collapseUIButton} color="inherit" onClick={handleToggle} edge="start" > <Icon> <img src={toggleIconDataUri} alt="toggle" /> </Icon> </IconButton> <Typography variant="h5" noWrap> ITK Viewer </Typography> </Toolbar> </AppBar> ) } export default AppToolbar