Changed WANavigation to be modifiable
This commit is contained in:
parent
ea9ed51910
commit
846ed78252
8 changed files with 124 additions and 14 deletions
|
|
@ -30,19 +30,46 @@ import java.util.List;
|
|||
* Created by Ziver on 2015-04-02.
|
||||
*/
|
||||
public class WANavigation {
|
||||
private static WANavigation rootNav;
|
||||
|
||||
private String name;
|
||||
private List<WANavigation> sub_nav;
|
||||
private ArrayList<WANavigation> subNavs;
|
||||
|
||||
|
||||
public WANavigation(String name) {
|
||||
this.name = name;
|
||||
this.subNavs = new ArrayList<>();
|
||||
}
|
||||
public WANavigation(String name, WANavigation[] sub_nav) {
|
||||
this.name = name;
|
||||
this.sub_nav = Arrays.asList(sub_nav);
|
||||
this(name);
|
||||
this.subNavs.addAll(Arrays.asList(sub_nav));
|
||||
}
|
||||
|
||||
public Object getSubNav() {
|
||||
return sub_nav;
|
||||
public void addSubNav(WANavigation subNav) {
|
||||
this.subNavs.add(subNav);
|
||||
}
|
||||
public List<WANavigation> getSubNav() {
|
||||
return subNavs;
|
||||
}
|
||||
public Object getSubNav(String name) {
|
||||
int index = subNavs.indexOf(name);
|
||||
if(index >= 0)
|
||||
return subNavs.get(index);
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
public boolean equals(Object o){
|
||||
if(o instanceof String)
|
||||
return this.name.equals(o);
|
||||
return this == o ||
|
||||
(o != null && this.name.equals(((WANavigation)o).name));
|
||||
}
|
||||
|
||||
|
||||
public static WANavigation getRootNav(){
|
||||
if(rootNav == null)
|
||||
rootNav = new WANavigation("root_nav");
|
||||
return rootNav;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue