Refactor AgvControls and update manual operation UI

This commit is contained in:
backuppc
2025-12-19 10:35:19 +09:00
parent b2a26bc67d
commit a43c2d769e
3 changed files with 167 additions and 234 deletions

15
App.tsx
View File

@@ -4,7 +4,7 @@ import { INITIAL_MAP, MAX_SPEED } from './constants';
import EditorToolbar from './components/EditorToolbar';
import SimulationCanvas from './components/SimulationCanvas';
import SerialConsole from './components/SerialConsole';
import AgvControls from './components/AgvControls';
import AgvManualControls from './components/AgvManualControls';
import BmsPanel from './components/BmsPanel';
import AcsControls from './components/AcsControls';
import AgvStatusPanel from './components/AgvStatusPanel';
@@ -1326,16 +1326,15 @@ const App: React.FC = () => {
{/* Top: Controls (Scrollable if needed) */}
<div className="flex-1 overflow-y-auto">
<AgvControls
{/* Manual Controls */}
<AgvManualControls
agvState={agvState}
setMotion={(m) => setAgvState(s => ({ ...s, motionState: m }))}
setLift={(h) => setAgvState(s => ({ ...s, liftHeight: h }))}
setRunConfig={(c) => setAgvState(s => ({ ...s, runConfig: c }))}
setError={(e) => setAgvState(s => ({ ...s, error: e }))}
setMotion={(state) => setAgvState(s => ({ ...s, motionState: state }))}
setRunConfig={(config) => setAgvState(s => ({ ...s, runConfig: config }))}
setError={(err) => setAgvState(s => ({ ...s, error: err }))}
onTurn180={handleTurn180}
setMagnet={(isOn) => setAgvState(s => ({ ...s, magnetOn: isOn }))}
setLiftStatus={(status) => setAgvState(s => ({ ...s, liftStatus: status }))}
setLidar={(isOn) => setAgvState(s => ({ ...s, lidarEnabled: isOn, sensorStatus: isOn ? '1' : '0' }))}
setMagnet={(isOn) => setAgvState(s => ({ ...s, magnetOn: isOn }))}
/>
</div>