nerdtree

A tree explorer plugin for vim.
Index Commits Files Refs
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:
Mlib/nerdtree/path.vim | 6++++++
Mlib/nerdtree/tree_dir_node.vim | 9+++++++++
Mlib/nerdtree/tree_file_node.vim | 5+++++
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)