private GraphicsController createGeometryController(GeometryIndex index) {
    List<AbstractGeometryIndexMapHandler> handlers = EditingHandlerRegistry.getGeometryHandlers();
    if (handlers == null || handlers.size() == 0) {
      return null;
    }

    CompositeGeometryIndexController controller =
        new CompositeGeometryIndexController(
            mapWidget,
            editingService,
            index,
            editingService.getEditingState() == GeometryEditState.DRAGGING);
    for (AbstractGeometryIndexMapHandler handler : handlers) {
      controller.addMapHandler(handler);
    }
    return controller;
  }