implemented drag and drop on canvas