commit 04d9b275413680c7d7b1cd52edc48e097a9c65e4
parent 3941389f13a36b8b01a81352b07db0e1ce0edb11
Author: Martin Grenfell <martin.grenfell@gmail.com>
Date: Mon, 7 Jul 2014 18:24:37 +0100
add `.refreshFlags()` to path/dir/file objects
This will trigger the path refresh callbacks without refreshing the
path's from disk (which takes ages)
Diffstat:
3 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/lib/nerdtree/path.vim b/lib/nerdtree/path.vim
@@ -544,6 +544,12 @@ function! s:Path.refresh()
call self.cacheDisplayString()
endfunction
+"FUNCTION: Path.refreshFlags() {{{1
+function! s:Path.refreshFlags()
+ call g:NERDTreeRefreshNotifier.NotifyListeners(self)
+ call self.cacheDisplayString()
+endfunction
+
"FUNCTION: Path.rename() {{{1
"
"Renames this node on the filesystem
diff --git a/lib/nerdtree/tree_dir_node.vim b/lib/nerdtree/tree_dir_node.vim
@@ -439,6 +439,15 @@ function! s:TreeDirNode.refresh()
endif
endfunction
+"FUNCTION: TreeDirNode.refreshFlags() {{{1
+unlet s:TreeDirNode.refreshFlags
+function! s:TreeDirNode.refreshFlags()
+ call self.path.refreshFlags()
+ for i in self.children
+ call i.refreshFlags()
+ endfor
+endfunction
+
"FUNCTION: TreeDirNode.reveal(path) {{{1
"reveal the given path, i.e. cache and open all treenodes needed to display it
"in the UI
diff --git a/lib/nerdtree/tree_file_node.vim b/lib/nerdtree/tree_file_node.vim
@@ -372,6 +372,11 @@ function! s:TreeFileNode.refresh()
call self.path.refresh()
endfunction
+"FUNCTION: TreeFileNode.refreshFlags() {{{1
+function! s:TreeFileNode.refreshFlags()
+ call self.path.refreshFlags()
+endfunction
+
"FUNCTION: TreeFileNode.rename() {{{1
"Calls the rename method for this nodes path obj
function! s:TreeFileNode.rename(newName)