private CanvasMouse(Component component) {
		// Need the component object to convert screen coordinates
		this.component = component;
		// Calculate the component center
		int w = component.getBounds().width;
		int h = component.getBounds().height;
		center = new Point(w / 2, h / 2);
		try {
			robot = new Robot();
		} catch (Exception e) {
			// Handle exception [game specific]
		}

		// Create default mouse positions
		mousePos = new Point(0, 0);
		currentPos = new Point(0, 0);
		// Setup initial button states
		state = new boolean[BUTTON_COUNT];
		poll = new MouseState[BUTTON_COUNT];
		for (int i = 0; i < BUTTON_COUNT; ++i) {
			poll[i] = MouseState.RELEASED;
		}
	}