import { Crop, Download, Grid2X2, ImageOff, Loader2, PersonStanding, Scissors, Sparkles, WandSparkles, } from 'lucide-react'; import type { CSSProperties } from 'react'; import { PlatformIconButton } from '../common/PlatformIconButton'; import { EditorIconButton } from './ImageCanvasEditorPrimitives'; import type { CanvasLayer } from './ImageCanvasEditorTypes'; import { isQuickEditUnsupportedAssetKind } from './ImageCanvasGenerationModel'; type ImageCanvasSelectedLayerToolbarViewProps = { selectedLayer: CanvasLayer | null; selectedToolbarStyle: CSSProperties | null; onOpenQuickEditPanel: (layer: CanvasLayer) => void; onOpenRedrawPanel: (layer: CanvasLayer) => void; onOpenCropExpandPanel: (layer: CanvasLayer) => void; onRemoveBackground: (layer: CanvasLayer) => void; onPerfectPixel: (layer: CanvasLayer) => void; isPerfectPixelProcessing: boolean; isSplittingIconSpritesheet: boolean; isPersistingAssetKind: boolean; onSplitIconSpritesheet: (layer: CanvasLayer) => void; onExtractUiDesignAssets: (layer: CanvasLayer) => void; onOpenCharacterAnimationPanel: (layer: CanvasLayer) => void; onDownloadLayer: (layer: CanvasLayer) => void; }; export function ImageCanvasSelectedLayerToolbarView({ selectedLayer, selectedToolbarStyle, onOpenQuickEditPanel, onOpenRedrawPanel, onOpenCropExpandPanel, onRemoveBackground, onPerfectPixel, isPerfectPixelProcessing, isSplittingIconSpritesheet, isPersistingAssetKind, onSplitIconSpritesheet, onExtractUiDesignAssets, onOpenCharacterAnimationPanel, onDownloadLayer, }: ImageCanvasSelectedLayerToolbarViewProps) { if (!selectedLayer || !selectedToolbarStyle) { return null; } if (selectedLayer.mediaType === 'audio') { return (
event.stopPropagation()} > } onClick={() => onOpenRedrawPanel(selectedLayer)} > 改造 onDownloadLayer(selectedLayer)} />
); } const canRasterEdit = selectedLayer.mediaType !== 'video' && selectedLayer.mediaType !== 'image-sequence' && selectedLayer.assetKind !== 'character-animation'; return (
event.stopPropagation()} > {!isQuickEditUnsupportedAssetKind(selectedLayer) ? ( <> } onClick={() => onOpenQuickEditPanel(selectedLayer)} > 快速编辑
); }