Skip to content

Commit

Permalink
Added "designer.clearCanvas" to clear and remove all shapes.
Browse files Browse the repository at this point in the history
  • Loading branch information
muaz-khan committed Dec 17, 2018
1 parent 26ffa66 commit 24596fe
Show file tree
Hide file tree
Showing 9 changed files with 36 additions and 8 deletions.
10 changes: 9 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Demo: https://www.webrtc-experiment.com/Canvas-Designer/

## Advance Demo: [demos/dashboard.html](https://rtcmulticonnection.herokuapp.com/demos/dashboard.html)
## Advance Demo: [demos/dashboard/](https://rtcmulticonnection.herokuapp.com/demos/dashboard/)

Multiple designers demo: https://www.webrtc-experiment.com/Canvas-Designer/multiple.html

Expand Down Expand Up @@ -236,6 +236,14 @@ Pass array-of-points that are shared by remote users using socket.io or websocke
designer.syncData(arrayOfPoints);
```

## `clearCanvas`

Remove and clear all drawings from the canvas:

```javascript
designer.clearCanvas();
```

## `addSyncListener`

This callback is invoked as soon as something new is drawn. An array-of-points is passed over this function. That array MUST be shared with remote users for collaboration.
Expand Down
2 changes: 1 addition & 1 deletion bower.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "canvas-designer",
"preferGlobal": false,
"version": "1.2.5",
"version": "1.2.6",
"author": {
"name": "Muaz Khan",
"email": "muazkh@gmail.com",
Expand Down
8 changes: 8 additions & 0 deletions canvas-designer-widget.js
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,14 @@ function CanvasDesigner() {
});
};

designer.clearCanvas = function () {
if (!designer.iframe) return;

designer.postMessage({
clearCanvas: true
});
};

designer.widgetHtmlURL = 'widget.html';
designer.widgetJsURL = 'widget.min.js';
}
6 changes: 6 additions & 0 deletions dev/share-drawings.js
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,12 @@ window.addEventListener('message', function(event) {
return;
}

if (event.data.clearCanvas) {
points = [];
drawHelper.redraw();
return;
}

if (!event.data.canvasDesignerSyncData) return;

// drawing is shared here (array of points)
Expand Down
2 changes: 1 addition & 1 deletion index.html
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,7 @@ <h2><a href="https://github.com/muaz-khan/Canvas-Designer#how-to-use">How to use

<hr>

<h2><a href="https://rtcmulticonnection.herokuapp.com/demos/dashboard.html">WebRTC Dashboard</a></h2>
<h2><a href="https://rtcmulticonnection.herokuapp.com/demos/dashboard/">WebRTC Dashboard</a></h2>

<br><br><br>

Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "canvas-designer",
"preferGlobal": false,
"version": "1.2.5",
"version": "1.2.6",
"author": {
"name": "Muaz Khan",
"email": "muazkh@gmail.com",
Expand Down
2 changes: 1 addition & 1 deletion simple.html
Original file line number Diff line number Diff line change
Expand Up @@ -320,7 +320,7 @@ <h2><a href="https://github.com/muaz-khan/Canvas-Designer#how-to-use">How to use

<hr>

<h2><a href="https://rtcmulticonnection.herokuapp.com/demos/dashboard.html">WebRTC Dashboard</a></h2>
<h2><a href="https://rtcmulticonnection.herokuapp.com/demos/dashboard/">WebRTC Dashboard</a></h2>

<br><br><br>

Expand Down
8 changes: 7 additions & 1 deletion widget.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Last time updated: 2018-10-17 10:08:21 AM UTC
// Last time updated: 2018-12-17 10:32:34 AM UTC

// _______________
// Canvas-Designer
Expand Down Expand Up @@ -3963,6 +3963,12 @@
return;
}

if (event.data.clearCanvas) {
points = [];
drawHelper.redraw();
return;
}

if (!event.data.canvasDesignerSyncData) return;

// drawing is shared here (array of points)
Expand Down
4 changes: 2 additions & 2 deletions widget.min.js

Large diffs are not rendered by default.

0 comments on commit 24596fe

Please sign in to comment.