def on_done(self, old, new): item = SideBarItem(old, os.path.isdir(old)) try: if not item.copy(new): sublime.error_message("Unable to duplicate, destination exists.") self.run([old], new) return except: sublime.error_message("Unable to copy:\n\n"+old+"\n\nto\n\n"+new) self.run([old], new) return SideBarProject().refresh();
def on_done(self, old, new): item = SideBarItem(old, os.path.isdir(old)) try: if not item.copy(new): sublime.error_message( "Unable to duplicate, destination exists.") self.run([old], new) return except: sublime.error_message("Unable to copy:\n\n" + old + "\n\nto\n\n" + new) self.run([old], new) return SideBarProject().refresh()
def run(self, paths = [], in_parent = 'False', test = 'True', replace = 'False'): s = sublime.load_settings("SideBarEnhancements/Clipboard.sublime-settings") cut = s.get('cut', '') copy = s.get('copy', '') already_exists_paths = [] if SideBarSelection(paths).len() > 0: if in_parent == 'False': location = SideBarSelection(paths).getSelectedItems()[0].path() else: location = SideBarSelection(paths).getSelectedDirectoriesOrDirnames()[0].dirname() if os.path.isdir(location) == False: location = SideBarItem(os.path.dirname(location), True) else: location = SideBarItem(location, True) if cut != '': cut = cut.split("\n") for path in cut: path = SideBarItem(path, os.path.isdir(path)) new = os.path.join(location.path(), path.name()) if test == 'True' and os.path.exists(new): already_exists_paths.append(new) elif test == 'False': if os.path.exists(new) and replace == 'False': pass else: try: if not path.move(new, replace == 'True'): sublime.error_message("Unable to cut and paste, destination exists.") return except: sublime.error_message("Unable to move:\n\n"+path.path()+"\n\nto\n\n"+new) return if copy != '': copy = copy.split("\n") for path in copy: path = SideBarItem(path, os.path.isdir(path)) new = os.path.join(location.path(), path.name()) if test == 'True' and os.path.exists(new): already_exists_paths.append(new) elif test == 'False': if os.path.exists(new) and replace == 'False': pass else: try: if not path.copy(new, replace == 'True'): sublime.error_message("Unable to copy and paste, destination exists.") return except: sublime.error_message("Unable to copy:\n\n"+path.path()+"\n\nto\n\n"+new) return if test == 'True' and len(already_exists_paths): self.confirm(paths, in_parent, already_exists_paths) elif test == 'True' and not len(already_exists_paths): self.run(paths, in_parent, 'False', 'False') elif test == 'False': cut = s.set('cut', '') SideBarProject().refresh();
def run(self, paths=[], in_parent='False', test='True', replace='False'): s = sublime.load_settings( "SideBarEnhancements/Clipboard.sublime-settings") cut = s.get('cut', '') copy = s.get('copy', '') already_exists_paths = [] if SideBarSelection(paths).len() > 0: if in_parent == 'False': location = SideBarSelection(paths).getSelectedItems()[0].path() else: location = SideBarSelection( paths).getSelectedDirectoriesOrDirnames()[0].dirname() if os.path.isdir(location) == False: location = SideBarItem(os.path.dirname(location), True) else: location = SideBarItem(location, True) if cut != '': cut = cut.split("\n") for path in cut: path = SideBarItem(path, os.path.isdir(path)) new = os.path.join(location.path(), path.name()) if test == 'True' and os.path.exists(new): already_exists_paths.append(new) elif test == 'False': if os.path.exists(new) and replace == 'False': pass else: try: if not path.move(new, replace == 'True'): sublime.error_message( "Unable to cut and paste, destination exists." ) return except: sublime.error_message("Unable to move:\n\n" + path.path() + "\n\nto\n\n" + new) return if copy != '': copy = copy.split("\n") for path in copy: path = SideBarItem(path, os.path.isdir(path)) new = os.path.join(location.path(), path.name()) if test == 'True' and os.path.exists(new): already_exists_paths.append(new) elif test == 'False': if os.path.exists(new) and replace == 'False': pass else: try: if not path.copy(new, replace == 'True'): sublime.error_message( "Unable to copy and paste, destination exists." ) return except: sublime.error_message("Unable to copy:\n\n" + path.path() + "\n\nto\n\n" + new) return if test == 'True' and len(already_exists_paths): self.confirm(paths, in_parent, already_exists_paths) elif test == 'True' and not len(already_exists_paths): self.run(paths, in_parent, 'False', 'False') elif test == 'False': cut = s.set('cut', '') SideBarProject().refresh()