in cell/src/main/java/jetbrains/jetpad/cell/toView/CellContainerToViewMapper.java [235:326]
private ViewTrait createRedistpatchTrait() {
final View targetView = myTargetView;
final CellContainer cellContainer = getSource();
return new ViewTraitBuilder()
.on(ViewEvents.MOUSE_CLICKED, new ViewEventHandler<MouseEvent>() {
@Override
public void handle(View view, MouseEvent e) {
cellContainer.mouseClicked(e);
}
})
.on(ViewEvents.MOUSE_PRESSED, new ViewEventHandler<MouseEvent>() {
@Override
public void handle(View view, MouseEvent e) {
cellContainer.mousePressed(e);
if (targetView.isAttached()) {
targetView.container().focusedView().set(targetView);
}
}
})
.on(ViewEvents.MOUSE_RELEASED, new ViewEventHandler<MouseEvent>() {
@Override
public void handle(View view, MouseEvent e) {
cellContainer.mouseReleased(e);
}
})
.on(ViewEvents.MOUSE_MOVED, new ViewEventHandler<MouseEvent>() {
@Override
public void handle(View view, MouseEvent e) {
cellContainer.mouseMoved(e);
}
})
.on(ViewEvents.MOUSE_ENTERED, new ViewEventHandler<MouseEvent>() {
@Override
public void handle(View view, MouseEvent e) {
cellContainer.mouseEntered(e);
}
})
.on(ViewEvents.MOUSE_LEFT, new ViewEventHandler<MouseEvent>() {
@Override
public void handle(View view, MouseEvent e) {
cellContainer.mouseLeft(e);
}
})
.on(ViewEvents.MOUSE_DRAGGED, new ViewEventHandler<MouseEvent>() {
@Override
public void handle(View view, MouseEvent e) {
cellContainer.mouseDragged(e);
}
})
.on(ViewEvents.KEY_PRESSED, new ViewEventHandler<KeyEvent>() {
@Override
public void handle(View view, KeyEvent e) {
cellContainer.keyPressed(e);
}
})
.on(ViewEvents.KEY_RELEASED, new ViewEventHandler<KeyEvent>() {
@Override
public void handle(View view, KeyEvent e) {
cellContainer.keyReleased(e);
}
})
.on(ViewEvents.KEY_TYPED, new ViewEventHandler<KeyEvent>() {
@Override
public void handle(View view, KeyEvent e) {
cellContainer.keyTyped(e);
}
})
.on(ViewEvents.COPY, new ViewEventHandler<CopyCutEvent>() {
@Override
public void handle(View view, CopyCutEvent e) {
cellContainer.copy(e);
}
})
.on(ViewEvents.CUT, new ViewEventHandler<CopyCutEvent>() {
@Override
public void handle(View view, CopyCutEvent e) {
cellContainer.cut(e);
}
})
.on(ViewEvents.PASTE, new ViewEventHandler<PasteEvent>() {
@Override
public void handle(View view, PasteEvent e) {
ClipboardContent content = e.getContent();
if (TextContentHelper.isText(content)) {
cellContainer.paste(TextContentHelper.getText(content));
e.consume();
}
}
})
.build();
}