Package com.google.collide.dto

Examples of com.google.collide.dto.WorkspaceTreeUpdate


    // Check each selected node to make sure it can be moved.
    if (!isMoveAllowed(parentDirData)) {
      return;
    }

    WorkspaceTreeUpdate msg = fileTreeModel.makeEmptyTreeUpdate();
    for (int i = 0, n = nodesToMove.size(); i < n; i++) {
      FileTreeNode nodeToMove = nodesToMove.get(i);
      PathUtil targetPath = new PathUtil.Builder().addPath(parentDirData.getNodePath())
          .addPathComponent(FileTreeUtils.allocateName(
              parentDirData.<DirInfoImpl>cast(), nodeToMove.getName())).build();
      msg.getMutations().add(FileTreeUtils.makeMutation(Mutation.Type.MOVE,
          nodeToMove.getNodePath(), targetPath, nodeToMove.isDirectory(),
          nodeToMove.getFileEditSessionKey()));
    }

    appContext.getFrontendApi().MUTATE_WORKSPACE_TREE.send(
View Full Code Here


   */
  class FileTreeMutationHandler implements Handler<Message<JsonObject>> {   
   
    @Override
    public void handle(Message<JsonObject> message) {
      WorkspaceTreeUpdate update = WorkspaceTreeUpdateImpl.fromJsonString(Dto.get(message));
      synchronized (FileTree.this.lock) {
        try {
          for (Mutation mutation : update.getMutations().asIterable()) {
            final Path oldPath = resolvePathString(mutation.getOldPath());
            final Path newPath = resolvePathString(mutation.getNewPath());
            switch (mutation.getMutationType()) {
              case ADD:
                if (mutation.getNewNodeInfo().getNodeType() == TreeNodeInfo.DIR_TYPE) {
View Full Code Here

      copiedNodes.add(node.getData());
    }
  }

  public void handleDelete(final TreeNodeElement<FileTreeNode> nodeToDelete) {
    WorkspaceTreeUpdate msg = fileTreeModel.makeEmptyTreeUpdate();
    JsoArray<FileTreeNode> selectedNodes =
        fileTreeUiController.getTree().getSelectionModel().getSelectedNodes();

    for (int i = 0, n = selectedNodes.size(); i < n; i++) {
      FileTreeNode node = selectedNodes.get(i);
      copiedNodes.remove(node);
      msg.getMutations().add(FileTreeUtils.makeMutation(
          Mutation.Type.DELETE, node.getNodePath(), null, node.isDirectory(),
          node.getFileEditSessionKey()));
    }

    appContext.getFrontendApi().MUTATE_WORKSPACE_TREE.send(
View Full Code Here

    // TODO: Figure out if we are pasting on top of files that already
    // exist with the same name. If we do, we need to handle that via a prompted
    // replace.

    Mutation.Type mutationType = copiedNodesAreCut ? Mutation.Type.MOVE : Mutation.Type.COPY;
    WorkspaceTreeUpdate msg = fileTreeModel.makeEmptyTreeUpdate();
    for (int i = 0, n = copiedNodes.size(); i < n; i++) {
      FileTreeNode copiedNode = copiedNodes.get(i);
      PathUtil targetPath = new PathUtil.Builder().addPath(parentDirData.getNodePath())
          .addPathComponent(FileTreeUtils.allocateName(
              parentDirData.<DirInfoImpl>cast(), copiedNode.getName())).build();
      msg.getMutations().add(FileTreeUtils.makeMutation(
          mutationType, copiedNode.getNodePath(), targetPath, copiedNode.isDirectory(),
          copiedNode.getFileEditSessionKey()));
    }

    // Cut nodes can only be pasted once.
View Full Code Here

          return;
        }

        // The node should have been renamed in the UI. This is where we
        // send a message to the frontend.
        WorkspaceTreeUpdate msg = fileTreeModel.makeEmptyTreeUpdate();
        msg.getMutations().add(FileTreeUtils.makeMutation(
            Mutation.Type.MOVE, oldPath, node.getData().getNodePath(), node.getData().isDirectory(),
            node.getData().getFileEditSessionKey()));

        appContext.getFrontendApi().MUTATE_WORKSPACE_TREE.send(
            msg, new ApiCallback<EmptyMessage>() {
View Full Code Here

        }       

        // TODO(jaime): Better loading affordance.
        node.addClassName(fileTreeUiController.getTree().getResources().treeCss().treeNodeLabelLoading());
       
        WorkspaceTreeUpdate msg = fileTreeModel.makeEmptyTreeUpdate();
        msg.getMutations().add(FileTreeUtils.makeMutation(Mutation.Type.ADD, null,
            installedNode.getNodePath(), installedNode.isDirectory(), null));

        appContext.getFrontendApi().MUTATE_WORKSPACE_TREE.send(
            msg, new ApiCallback<EmptyMessage>() {
View Full Code Here

    // Check each selected node to make sure it can be moved.
    if (!isMoveAllowed(parentDirData)) {
      return;
    }

    WorkspaceTreeUpdate msg = fileTreeModel.makeEmptyTreeUpdate();
    for (int i = 0, n = nodesToMove.size(); i < n; i++) {
      FileTreeNode nodeToMove = nodesToMove.get(i);
      PathUtil targetPath = new PathUtil.Builder().addPath(parentDirData.getNodePath())
          .addPathComponent(FileTreeUtils.allocateName(
              parentDirData.<DirInfoImpl>cast(), nodeToMove.getName())).build();
      msg.getMutations().add(FileTreeUtils.makeMutation(Mutation.Type.MOVE,
          nodeToMove.getNodePath(), targetPath, nodeToMove.isDirectory(),
          nodeToMove.getFileEditSessionKey()));
    }

    appContext.getFrontendApi().MUTATE_WORKSPACE_TREE.send(
View Full Code Here

          return;
        }

        // The node should have been renamed in the UI. This is where we
        // send a message to the frontend.
        WorkspaceTreeUpdate msg = fileTreeModel.makeEmptyTreeUpdate();
        msg.getMutations().add(FileTreeUtils.makeMutation(
            Mutation.Type.MOVE, oldPath, node.getData().getNodePath(), node.getData().isDirectory(),
            node.getData().getFileEditSessionKey()));

        controller.mutateWorkspaceTree(
            msg, new ApiCallback<EmptyMessage>() {
View Full Code Here

          // if we were showing a tooltip related to the rename, hide it now
          invalidNameTooltip.destroy();
          invalidNameTooltip = null;
        }

        WorkspaceTreeUpdate msg = fileTreeModel.makeEmptyTreeUpdate();
        msg.getMutations().add(FileTreeUtils.makeMutation(Mutation.Type.ADD, null,
            installedNode.getNodePath(), installedNode.isDirectory(), null));

        controller.mutateWorkspaceTree(
            msg, new ApiCallback<EmptyMessage>() {
View Full Code Here

      copiedNodes.add(node.getData());
    }
  }

  public void handleDelete(final TreeNodeElement<FileTreeNode> nodeToDelete) {
    WorkspaceTreeUpdate msg = fileTreeModel.makeEmptyTreeUpdate();
    JsoArray<FileTreeNode> selectedNodes =
        fileTreeUiController.getTree().getSelectionModel().getSelectedNodes();

    for (int i = 0, n = selectedNodes.size(); i < n; i++) {
      FileTreeNode node = selectedNodes.get(i);
      copiedNodes.remove(node);
      msg.getMutations().add(FileTreeUtils.makeMutation(
          Mutation.Type.DELETE, node.getNodePath(), null, node.isDirectory(),
          node.getFileEditSessionKey()));
    }

    controller.mutateWorkspaceTree(
View Full Code Here

TOP

Related Classes of com.google.collide.dto.WorkspaceTreeUpdate

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.