hedgedoc/src/components/editor/task-bar/editor-view-mode.tsx
mrdrogdrog f298d1469b
Add editor split component (#198)
Add split and split divider component
2020-06-13 01:22:27 +02:00

37 lines
1.3 KiB
TypeScript

import React from 'react'
import { ToggleButton, ToggleButtonGroup } from 'react-bootstrap'
import { useTranslation } from 'react-i18next'
import { useSelector } from 'react-redux'
import { ApplicationState } from '../../../redux'
import { setEditorModeConfig } from '../../../redux/editor/methods'
import { ForkAwesomeIcon } from '../../common/fork-awesome/fork-awesome-icon'
export enum EditorMode {
PREVIEW,
BOTH,
EDITOR,
}
export const EditorViewMode: React.FC = () => {
const { t } = useTranslation()
const editorConfig = useSelector((state: ApplicationState) => state.editorConfig)
return (
<ToggleButtonGroup
type="radio"
name="options"
value={editorConfig.editorMode}
onChange={(value: EditorMode) => {
setEditorModeConfig(value)
}}>
<ToggleButton value={EditorMode.PREVIEW} variant="outline-secondary" title={t('editor.viewMode.view')}>
<ForkAwesomeIcon icon="eye"/>
</ToggleButton>
<ToggleButton value={EditorMode.BOTH} variant="outline-secondary" title={t('editor.viewMode.both')}>
<ForkAwesomeIcon icon="columns"/>
</ToggleButton>
<ToggleButton value={EditorMode.EDITOR} variant="outline-secondary" title={t('editor.viewMode.edit')}>
<ForkAwesomeIcon icon="pencil"/>
</ToggleButton>
</ToggleButtonGroup>
)
}