	public Canvas getViewPanel() {
		VLayout layout = new VLayout();
		layout.setWidth100();
		layout.setHeight100();

		VLayout mapLayout = new VLayout();
		mapLayout.setShowEdges(true);
		mapLayout.setHeight("60%");

		// Map with ID wmsMap is defined in the XML configuration. (mapWms.xml)
		final MapWidget map = new MapWidget("wmsMap", "gwt-samples");
		mapLayout.addMember(map);

		VLayout labelLayout = new VLayout();
		final Label label = new Label();
		labelLayout.addMember(label);

		// Create the custom controller:
		GraphicsController customController = new AbstractGraphicsController(map) {
			
			public void onMouseMove(MouseMoveEvent event) {
				Coordinate screenPosition = getScreenPosition(event);
				Coordinate worldPosition = getWorldPosition(event);
				String x = NumberFormat.getFormat("0.000").format(worldPosition.getX());
				String y = NumberFormat.getFormat("0.000").format(worldPosition.getY());
				label.setContents(I18nProvider.getSampleMessages().customControllerScreenCoordinates() + " = "
						+ screenPosition + "<br/>"
						+ I18nProvider.getSampleMessages().customControllerWorldCoordinates()
						+ " = (" + x + ", " + y + ")");
			}

		};

		// Set the controller on the map:
		map.setController(customController);

		layout.addMember(mapLayout);
		layout.addMember(labelLayout);
		return layout;
	}