blob: f8bec32572a50ca4185bf495b4fce809411664c6 [file] [log] [blame]
package org.eclipse.nebula.widgets.nattable.renderer.swt.graphics
import javax.inject.Inject
import javax.inject.Provider
import org.eclipse.nebula.widgets.nattable.core.graphics.DefaultPainterFactory
import org.eclipse.nebula.widgets.nattable.core.layer.Layer
import org.eclipse.nebula.widgets.nattable.core.layer.LayerPainter
import org.eclipse.nebula.widgets.nattable.core.layer.impl.viewport.ViewportLayer
import org.eclipse.nebula.widgets.nattable.renderer.swt.layer.viewport.SWTViewportLayerPainter
class SWTPainterFactory extends DefaultPainterFactory {
@Inject Provider<SWTViewportLayerPainter> swtViewportLayerPainterProvider
override <T extends Layer> createLayerPainter(T layer) {
switch (layer) {
ViewportLayer: swtViewportLayerPainterProvider.get as LayerPainter<T>
} ?: super.createLayerPainter(layer)
}
}