implementing drag and drop and resize shapes