canvas as argument in constructor