81,095
社区成员
发帖
与我相关
我的任务
分享
public class TypeConfigPage extends ContentPanel {
private static final IssueTypeProperties ISSUE_TYPE_PROPERTIES = GWT
.create(IssueTypeProperties.class);
private static final CarTypeProperties CAR_TYPE_PROPERTIES = GWT
.create(CarTypeProperties.class);
private SystemServiceAsync service;
private Folder lastFolder;
// 垂直组件
HorizontalLayoutContainer hlc = new HorizontalLayoutContainer();
BorderLayoutContainer container = new BorderLayoutContainer();
class KeyProvider implements ModelKeyProvider<Folder> {
@Override
public String getKey(Folder item) {
return (item instanceof Folder ? "f-" : "m-")
+ item.getId().toString();
}
}
public TypeConfigPage(Folder folder, SystemServiceAsync systemServiceAsync) {
this.service = systemServiceAsync;
setHeadingText(folder.getName());
ToolTipCreator.create(folder, getHeader(),
"此页面主要配置一些系统基本信息,如<font color='red'>阿斯多夫</font>");
hlc.setScrollMode(ScrollMode.AUTO);
hlc.add(createLeftTree(), new HorizontalLayoutData(300, 1, new
Margins(
5, 5, 5, 5)));
hlc.add(craeteIssueTypeGrid(), new HorizontalLayoutData(1360, 1,
new Margins(5, 5, 5, 0)));
add(hlc);
}
private FramedPanel createLeftTree() {
FramedPanel panel = new FramedPanel();
panel.setHeadingText("选择类别");
TreeStore<Folder> store = new TreeStore<Folder>(new KeyProvider());
List<Folder> typelist = new ArrayList<Folder>();
typelist.add(new Folder(
"<i class='fa fa-star fa-lg light-blue'></i> 卡片操作类型", "",
"", 1));
typelist.add(new Folder(
"<i class='fa fa-star fa-lg light-blue'></i> 车辆类型", "",
"", 2));
for (Folder base : typelist) {
store.add(base);
}
final Tree<Folder, String> tree = new Tree<Folder, String>(store,
new ValueProvider<Folder, String>() {
@Override
public String getValue(Folder object) {
return object.getName();
}
@Override
public void setValue(Folder object, String value) {
}
@Override
public String getPath() {
return "name";
}
});
tree.setWidth(280);
tree.getSelectionModel().setSelectionMode(SelectionMode.SINGLE);
SelectionChangedHandler<Folder> ts = new SelectionChangedHandler<Folder>() {
@Override
public void onSelectionChanged(SelectionChangedEvent<Folder> event) {
Folder f = (Folder) event.getSelection().get(0);
if (f != lastFolder) {
lastFolder = f;
hlc.remove(1);
if (f.getId() == 1) {
hlc.add(craeteIssueTypeGrid(),
new HorizontalLayoutData(1360, 1, new Margins(
5, 5, 5, 0)));
} else if (f.getId() == 2) {
hlc.add(craeteCarTypeGrid(), new HorizontalLayoutData(
1360, 1, new Margins(5, 5, 5, 0)));
}
hlc.forceLayout();
}
}
};
tree.getSelectionModel().addSelectionChangedHandler(ts);
panel.add(tree);
return panel;
}