diff --git a/frontend/apps/editor3d/app/src/pages/PageEdit/DrawToolControlBar.tsx b/frontend/apps/editor3d/app/src/pages/PageEdit/DrawToolControlBar.tsx new file mode 100644 index 0000000000..641e4e4724 --- /dev/null +++ b/frontend/apps/editor3d/app/src/pages/PageEdit/DrawToolControlBar.tsx @@ -0,0 +1,51 @@ +import { faPlusCircle, faMinusCircle, faDrawCircle, faEraser, faPaintbrush } from "@fortawesome/pro-regular-svg-icons"; +import { EditOperation } from "./stores/EditState"; +import { ButtonIconSelect } from "@storyteller/ui-button-icon-select"; +import { SliderV2 } from "@storyteller/ui-sliderv2"; +import { faPaintBrush } from "@fortawesome/pro-solid-svg-icons"; + +export interface DrawToolControlBarProps { + currentMode: EditOperation; + currentSize: number; + onModeChange?: (mode: EditOperation) => void; + onSizeChange?: (size: number) => void; +} + +const DrawToolControlBar = ({ + currentMode, + currentSize, + onModeChange, + onSizeChange = () => { } +}: DrawToolControlBarProps) => { + + const modes = [ + { + value: "add", + icon: faPaintBrush, + text: "Draw", + tooltip: "Draw strokes", + }, + { + value: "minus", + icon: faEraser, + text: "Erase", + tooltip: "Erases strokes", + }, + ]; + + return ( +
+
+ + +
+
+ ) +} + +export default DrawToolControlBar; diff --git a/frontend/apps/editor3d/app/src/pages/PageEdit/PageEdit.tsx b/frontend/apps/editor3d/app/src/pages/PageEdit/PageEdit.tsx index ad788194b3..965bd75491 100644 --- a/frontend/apps/editor3d/app/src/pages/PageEdit/PageEdit.tsx +++ b/frontend/apps/editor3d/app/src/pages/PageEdit/PageEdit.tsx @@ -22,6 +22,7 @@ import { ActiveEditTool, useEditStore } from "./stores/EditState"; import { EditPaintSurface } from "./EditPaintSurface"; import { normalizeCanvas } from "~/Helpers/CanvasHelpers"; import { BaseImageSelector, BaseSelectorImage } from "./BaseImageSelector"; +import DrawToolControlBar from "./DrawToolControlBar"; const PageEdit = () => { //useStateSceneLoader(); @@ -242,6 +243,18 @@ const PageEdit = () => { return ( <> +
+ +
= ({ }) => { return (
-
-
void; + setEditOperation: (mode: EditOperation) => void; setBrushColor: (color: string) => void; setBrushOpacity: (opacity: number) => void; setBrushSize: (size: number) => void; @@ -291,7 +292,6 @@ export const useEditStore = create((set, get) => ({ return { history: newHistory, historyIndex: newHistory.length - 1, - editOperation: state.editOperation === "add" ? "minus" : "add", }; }); }, @@ -684,6 +684,7 @@ export const useEditStore = create((set, get) => ({ // Toolbar actions setActiveTool: (tool: ActiveEditTool) => set({ activeTool: tool }), + setEditOperation: (mode: EditOperation) => set({ editOperation: mode }), setBrushColor: (color: string) => set({ brushColor: color }), setBrushSize: (size: number) => set({ brushSize: size }), setFillColor: (color: string) => set({ fillColor: color }),