diff --git a/src/canvas/canvas.js b/src/canvas/canvas.js index 504bf2f..db12b58 100644 --- a/src/canvas/canvas.js +++ b/src/canvas/canvas.js @@ -244,6 +244,15 @@ class Canvas extends React.Component { } + openToolbar = (widget) => { + this.setState({ + // selectedWidget: selectedWidget, + toolbarAttrs: widget.getToolbarAttrs(), + toolbarOpen: true + }) + + } + mouseDownEvent(event) { this.mousePos = { x: event.clientX, y: event.clientY } @@ -263,11 +272,12 @@ class Canvas extends React.Component { selectedWidget.setZIndex(1000) selectedWidget.select() // console.log("selected widget", selectedWidget.getToolbarAttrs(), selectedWidget, this.state.selectedWidget) - this.setState({ - // selectedWidget: selectedWidget, - toolbarAttrs: selectedWidget.getToolbarAttrs(), - toolbarOpen: true - }) + // this.setState({ + // // selectedWidget: selectedWidget, + // toolbarAttrs: selectedWidget.getToolbarAttrs(), + // toolbarOpen: true + // }) + // this.openToolbar(selectedWidget) this.setSelectedWidget(selectedWidget) @@ -1216,6 +1226,17 @@ class Canvas extends React.Component { }) } + const handleWidgetSelect = (widgetId) => { + + if (this.selectedWidget && this.selectedWidget.getId() !== widgetId){ + this.selectedWidget?.deSelect() // deselect the previous widget before adding the new one + } + + const widget = this.getWidgetById(widgetId)?.current + this.setSelectedWidget(widget) + this.openToolbar(widget) + } + return ( this.setSelectedWidget(this.getWidgetById(widgetId)?.current)} + onSelect={handleWidgetSelect} onWidgetDeleteRequest={this.removeWidget} diff --git a/src/canvas/toolbar.js b/src/canvas/toolbar.js index 055b6d7..a5c6c30 100644 --- a/src/canvas/toolbar.js +++ b/src/canvas/toolbar.js @@ -165,7 +165,7 @@ const CanvasToolBar = memo(({ isOpen, widgetType, attrs = {} }) => { onChange={(value) => handleChange({ ...val.value, direction: value }, val.onChange)} /> -
+ {/*
Align items