BrightSide Workbench Full Report + Source Code
ContextTree.java
Go to the documentation of this file.
1
/*
2
* TurrĂ³ i Cutiller Foundation. License notice.
3
* Copyright (C) 2021 Lluis TurrĂ³ Cutiller <http://www.turro.org/>
4
*
5
* This program is free software: you can redistribute it and/or modify
6
* it under the terms of the GNU Affero General Public License as published by
7
* the Free Software Foundation, either version 3 of the License, or
8
* (at your option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU Affero General Public License for more details.
14
*
15
* You should have received a copy of the GNU Affero General Public License
16
* along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
package
org.turro.elephant.web;
20
21
import
org.zkoss.zk.ui.event.Event;
22
import
org.zkoss.zk.ui.event.Events;
23
import
org.zkoss.zul.Tree;
24
import
org.zkoss.zul.Treechildren;
25
import
org.zkoss.zul.Treeitem;
26
31
public
class
ContextTree
extends
Tree {
32
33
private
final
Treechildren children;
34
35
public
ContextTree
() {
36
children =
new
Treechildren();
37
appendChild(children);
38
initiate();
39
}
40
41
private
void
initiate() {
42
reload
();
43
addEventListener(Events.ON_SELECT, (Event event) -> {
44
if(getSelectedItem() instanceof ContextItem) {
45
((ContextItem) getSelectedItem()).showContents();
46
}
47
});
48
}
49
50
public
void
reload
() {
51
children.getChildren().clear();
52
addContext(
ElContextMap
.
getRoot
(),
false
).showContents();
53
}
54
55
public
ContextItem
addContext
(
ElContext
context,
boolean
loadOnDemand) {
56
ContextItem
ci =
new
ContextItem
(context, loadOnDemand);
57
children.appendChild(ci);
58
return
ci;
59
}
60
61
public
void
selectPath
(String path) {
62
for
(Treeitem item : getItems()) {
63
ContextItem
ci = (
ContextItem
) item;
64
if
(path.equals(ci.
getElContext
().
getPath
())) {
65
setSelectedItem(item);
66
break
;
67
}
68
}
69
Treeitem parent = getSelectedItem().getParentItem();
70
while
(parent !=
null
) {
71
parent.setOpen(
true
);
72
parent = parent.getParentItem();
73
}
74
}
75
76
}
org.turro.elephant.web.ContextItem
Definition:
ContextItem.java:32
org.turro.elephant.web.ContextItem.getElContext
ElContext getElContext()
Definition:
ContextItem.java:51
org.turro.elephant.web.ContextTree
Definition:
ContextTree.java:31
org.turro.elephant.web.ContextTree.ContextTree
ContextTree()
Definition:
ContextTree.java:35
org.turro.elephant.web.ContextTree.selectPath
void selectPath(String path)
Definition:
ContextTree.java:61
org.turro.elephant.web.ContextTree.reload
void reload()
Definition:
ContextTree.java:50
org.turro.elephant.web.ContextTree.addContext
ContextItem addContext(ElContext context, boolean loadOnDemand)
Definition:
ContextTree.java:55
org.turro.elephant.web.ElContextMap
Definition:
ElContextMap.java:35
org.turro.elephant.web.ElContextMap.getRoot
static ElContext getRoot()
Definition:
ElContextMap.java:97
org.turro.elephant.web.ElContext
Definition:
ElContext.java:61
org.turro.elephant.web.ElContext.getPath
String getPath()
Definition:
ElContext.java:118
TurroProjects
Public
BrightSide
elephant-www
src
main
java
org
turro
elephant
web
ContextTree.java
Generated on Tue Mar 12 2024 07:01:18 for BrightSide by
1.9.1