// Copyright (C) 2020-2022 Intel Corporation
// Copyright (C) 2023 CVAT.ai Corporation
//
// SPDX-License-Identifier: MIT
import React from 'react';
import Input from 'antd/lib/input';
import { Col, Row } from 'antd/lib/grid';
import {
ActiveControl, PredictorState, ToolsBlockerState, Workspace,
} from 'reducers';
import LeftGroup from './left-group';
import PlayerButtons from './player-buttons';
import PlayerNavigation from './player-navigation';
import RightGroup from './right-group';
interface Props {
playing: boolean;
saving: boolean;
frameNumber: number;
frameFilename: string;
frameDeleted: boolean;
inputFrameRef: React.RefObject;
startFrame: number;
stopFrame: number;
undoAction?: string;
redoAction?: string;
workspace: Workspace;
saveShortcut: string;
undoShortcut: string;
redoShortcut: string;
drawShortcut: string;
switchToolsBlockerShortcut: string;
playPauseShortcut: string;
deleteFrameShortcut: string;
nextFrameShortcut: string;
previousFrameShortcut: string;
forwardShortcut: string;
backwardShortcut: string;
prevButtonType: string;
nextButtonType: string;
focusFrameInputShortcut: string;
predictor: PredictorState;
isTrainingActive: boolean;
activeControl: ActiveControl;
toolsBlockerState: ToolsBlockerState;
changeWorkspace(workspace: Workspace): void;
switchPredictor(predictorEnabled: boolean): void;
showStatistics(): void;
showFilters(): void;
onSwitchPlay(): void;
onSaveAnnotation(): void;
onPrevFrame(): void;
onNextFrame(): void;
onForward(): void;
onBackward(): void;
onFirstFrame(): void;
onLastFrame(): void;
setPrevButtonType(type: 'regular' | 'filtered' | 'empty'): void;
setNextButtonType(type: 'regular' | 'filtered' | 'empty'): void;
onSliderChange(value: number): void;
onInputChange(value: number): void;
onURLIconClick(): void;
onUndoClick(): void;
onRedoClick(): void;
onFinishDraw(): void;
onSwitchToolsBlockerState(): void;
onDeleteFrame(): void;
onRestoreFrame(): void;
switchNavigationBlocked(blocked: boolean): void;
jobInstance: any;
}
export default function AnnotationTopBarComponent(props: Props): JSX.Element {
const {
saving,
undoAction,
redoAction,
playing,
frameNumber,
frameFilename,
frameDeleted,
inputFrameRef,
startFrame,
stopFrame,
workspace,
saveShortcut,
undoShortcut,
redoShortcut,
drawShortcut,
switchToolsBlockerShortcut,
playPauseShortcut,
deleteFrameShortcut,
nextFrameShortcut,
previousFrameShortcut,
forwardShortcut,
backwardShortcut,
prevButtonType,
nextButtonType,
predictor,
focusFrameInputShortcut,
activeControl,
toolsBlockerState,
showStatistics,
switchPredictor,
showFilters,
changeWorkspace,
onSwitchPlay,
onSaveAnnotation,
onPrevFrame,
onNextFrame,
onForward,
onBackward,
onFirstFrame,
onLastFrame,
setPrevButtonType,
setNextButtonType,
onSliderChange,
onInputChange,
onURLIconClick,
onUndoClick,
onRedoClick,
onFinishDraw,
onSwitchToolsBlockerState,
onDeleteFrame,
onRestoreFrame,
switchNavigationBlocked,
jobInstance,
isTrainingActive,
} = props;
return (
);
}