FileTreeEntityController.coffee 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. define [
  2. "base"
  3. ], (App) ->
  4. App.controller "FileTreeEntityController", ["$scope", "ide", "$modal", ($scope, ide, $modal) ->
  5. $scope.select = () ->
  6. ide.fileTreeManager.forEachEntity (entity) ->
  7. entity.selected = false
  8. $scope.entity.selected = true
  9. $scope.inputs =
  10. name: $scope.entity.name
  11. $scope.startRenaming = () ->
  12. $scope.entity.renaming = true
  13. $scope.finishRenaming = () ->
  14. delete $scope.entity.renaming
  15. ide.fileTreeManager.renameEntity($scope.entity, $scope.inputs.name)
  16. $scope.$on "rename:selected", () ->
  17. $scope.startRenaming() if $scope.entity.selected
  18. $scope.openDeleteModal = () ->
  19. $modal.open(
  20. templateUrl: "deleteEntityModalTemplate"
  21. controller: "DeleteEntityModalController"
  22. scope: $scope
  23. )
  24. $scope.$on "delete:selected", () ->
  25. $scope.openDeleteModal() if $scope.entity.selected
  26. if $scope.entity.type == "folder"
  27. $scope.expanded = false
  28. $scope.toggleExpanded = () ->
  29. $scope.expanded = !$scope.expanded
  30. ]
  31. App.controller "DeleteEntityModalController", [
  32. "$scope", "ide", "$modalInstance",
  33. ($scope, ide, $modalInstance) ->
  34. $scope.state =
  35. inflight: false
  36. $scope.delete = () ->
  37. $scope.state.inflight = true
  38. ide.fileTreeManager.deleteEntity $scope.entity, (error) ->
  39. $scope.$apply () ->
  40. $scope.state.inflight = false
  41. $modalInstance.close()
  42. $scope.cancel = () ->
  43. $modalInstance.dismiss('cancel')
  44. ]