Small Layout improvement
This commit is contained in:
parent
4433622e96
commit
1f95c09a2c
|
@ -13,9 +13,22 @@ impl DefaultLayout {
|
||||||
layout.push(Layout::PVD(parent.pvd.clone()));
|
layout.push(Layout::PVD(parent.pvd.clone()));
|
||||||
layout.push(Layout::PathTables);
|
layout.push(Layout::PathTables);
|
||||||
|
|
||||||
add_dir_and_subdir(&mut layout, parent.root.clone());
|
Self::add_dir_and_subdir(&mut layout, parent.root.clone());
|
||||||
layout
|
layout
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn add_dir_and_subdir(layout: &mut Vec<Layout>, dir: SharedPtr<Directory>) {
|
||||||
|
layout.push(Layout::Directory(dir.clone()));
|
||||||
|
|
||||||
|
let dir = dir.borrow();
|
||||||
|
for file in dir.files.iter() {
|
||||||
|
layout.push(Layout::File(file.clone()));
|
||||||
|
}
|
||||||
|
|
||||||
|
for dir in dir.dirs.iter() {
|
||||||
|
Self::add_dir_and_subdir(layout, dir.clone());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub enum Layout {
|
pub enum Layout {
|
||||||
|
@ -26,15 +39,3 @@ pub enum Layout {
|
||||||
File(SharedPtr<File>)
|
File(SharedPtr<File>)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn add_dir_and_subdir(layout: &mut Vec<Layout>, dir: SharedPtr<Directory>) {
|
|
||||||
layout.push(Layout::Directory(dir.clone()));
|
|
||||||
|
|
||||||
let dir = dir.borrow();
|
|
||||||
for file in dir.files.iter() {
|
|
||||||
layout.push(Layout::File(file.clone()));
|
|
||||||
}
|
|
||||||
|
|
||||||
for dir in dir.dirs.iter() {
|
|
||||||
add_dir_and_subdir(layout, dir.clone());
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue