add .refreshFlags() to path/dir/file objects

This will trigger the path refresh callbacks without refreshing the
path's from disk (which takes ages)
This commit is contained in:
Martin Grenfell 2014-07-07 18:24:37 +01:00
parent 3941389f13
commit 04d9b27541
3 changed files with 20 additions and 0 deletions

View File

@ -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

View File

@ -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

View File

@ -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)