private ViewTrait createRedistpatchTrait()

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();
  }