in view/src/main/java/jetbrains/jetpad/projectional/view/toGwt/ViewMapperFactory.java [29:75]
static MapperFactory<View, Element> factory(final ViewToDomContext ctx) {
return new MapperFactory<View, Element>() {
@Override
public Mapper<? extends View, ? extends Element> createMapper(View source) {
Mapper<? extends View, ? extends Element> result;
if (source instanceof TextView) {
result = new TextViewMapper(ctx, (TextView) source);
} else if (source instanceof LineView) {
result = new LineViewMapper(ctx, (LineView) source);
} else if (source instanceof MultiPointView) {
result = new MultiPointViewMapper(ctx, (MultiPointView) source);
} else if (BROWSER_LAYOUT_COLLECTIONS && source.getClass() == VerticalView.class) {
result = new VerticalViewMapper(ctx, (VerticalView) source);
} else if (BROWSER_LAYOUT_COLLECTIONS && source.getClass() == HorizontalView.class) {
result = new HorizontalViewMapper(ctx, (HorizontalView) source);
} else if (source instanceof ScrollView) {
result = new ScrollViewMapper(ctx, (ScrollView) source);
} else if (source instanceof ImageView) {
result = new ImageViewMapper(ctx, (ImageView) source);
} else if (source instanceof DomView) {
result = new DomViewMapper(ctx, (DomView) source);
} else if (source instanceof SvgView) {
result = new SvgViewMapper(ctx, (SvgView) source);
} else {
result = new CompositeViewMapper<View, Element>(ctx, source, DOM.createDiv());
}
if (source instanceof VerticalView) {
result.getTarget().addClassName("V");
}
if (source instanceof HorizontalView) {
result.getTarget().addClassName("H");
}
if (source instanceof TextView) {
result.getTarget().addClassName("T");
}
if (source instanceof ScrollView) {
result.getTarget().addClassName("S");
}
return result;
}
};
}