use of org.activityinfo.client.page.common.nav.Link in project activityinfo by bedatadriven.
the class ConfigNavigator method loadDbList.
private void loadDbList(final AsyncCallback<List<Link>> callback, SchemaDTO result) {
List<Link> list = new ArrayList<Link>();
for (UserDatabaseDTO db : result.getDatabases()) {
if (db.isDesignAllowed() || db.isManageUsersAllowed()) {
Link link = Link.to(new DbPageState(DbConfigPresenter.PAGE_ID, db.getId())).labeled(db.getName()).withIcon(icons.database()).build();
link.set("db", db);
list.add(link);
}
}
callback.onSuccess(list);
}
use of org.activityinfo.client.page.common.nav.Link in project activityinfo by bedatadriven.
the class TargetIndicatorView method createGridAndAddToContainer.
@Override
protected Grid<ModelData> createGridAndAddToContainer(Store store) {
final TreeStore treeStore = (TreeStore) store;
tree = new EditorTreeGrid<ModelData>(treeStore, createColumnModel());
tree.setAutoExpandColumn("name");
tree.setSelectionModel(new ImprovedCellTreeGridSelectionModel<ModelData>());
tree.setClicksToEdit(EditorGrid.ClicksToEdit.ONE);
tree.setLoadMask(true);
tree.setStateId("TargetValueGrid" + db.getId());
tree.setIconProvider(new ModelIconProvider<ModelData>() {
@Override
public AbstractImagePrototype getIcon(ModelData model) {
if (model instanceof ActivityDTO) {
return IconImageBundle.ICONS.activity();
} else if (model instanceof TargetValueDTO) {
return IconImageBundle.ICONS.indicator();
} else if (model instanceof Link) {
return IconImageBundle.ICONS.folder();
} else {
return null;
}
}
});
addBeforeEditListener();
addAfterEditListener();
add(tree, new BorderLayoutData(Style.LayoutRegion.CENTER));
return tree;
}
use of org.activityinfo.client.page.common.nav.Link in project activityinfo by bedatadriven.
the class TargetIndicatorPresenter method fillStore.
private void fillStore() {
Map<String, Link> categories = new HashMap<String, Link>();
for (ActivityDTO activity : db.getActivities()) {
if (activity.getCategory() != null) {
Link actCategoryLink = categories.get(activity.getCategory());
if (actCategoryLink == null) {
actCategoryLink = createCategoryLink(activity, categories);
categories.put(activity.getCategory(), actCategoryLink);
treeStore.add(actCategoryLink, false);
}
treeStore.add(actCategoryLink, activity, false);
addIndicatorLinks(activity, activity);
} else {
treeStore.add(activity, false);
addIndicatorLinks(activity, activity);
}
}
}
use of org.activityinfo.client.page.common.nav.Link in project activityinfo by bedatadriven.
the class ConfigNavigator method load.
@Override
public void load(DataReader<List<Link>> dataReader, Object parent, AsyncCallback<List<Link>> callback) {
if (parent == null) {
Link dbListLink = Link.to(new DbListPageState()).labeled(messages.databases()).withIcon(icons.database()).build();
Link dbLinksLink = Link.to(new IndicatorLinkPlace()).labeled(messages.linkIndicators()).withIcon(icons.link()).build();
callback.onSuccess(Arrays.asList(dbListLink, dbLinksLink));
} else {
Link link = (Link) parent;
if (link.getPageState() instanceof DbListPageState) {
loadDbListAsync(callback);
}
}
}
use of org.activityinfo.client.page.common.nav.Link in project activityinfo by bedatadriven.
the class TargetIndicatorPresenter method addIndicatorLinks.
private void addIndicatorLinks(ActivityDTO activity, ModelData parent) {
Map<String, Link> indicatorCategories = new HashMap<String, Link>();
for (IndicatorDTO indicator : activity.getIndicators()) {
if (indicator.getCategory() != null) {
Link indCategoryLink = indicatorCategories.get(indicator.getCategory());
if (indCategoryLink == null) {
indCategoryLink = createIndicatorCategoryLink(indicator, indicatorCategories);
indicatorCategories.put(indicator.getCategory(), indCategoryLink);
treeStore.add(parent, indCategoryLink, false);
}
TargetValueDTO targetValueDTO = getTargetValueByIndicatorId(indicator.getId());
if (null != targetValueDTO) {
treeStore.add(indCategoryLink, targetValueDTO, false);
} else {
treeStore.add(indCategoryLink, createTargetValueModel(indicator), false);
}
} else {
TargetValueDTO targetValueDTO = getTargetValueByIndicatorId(indicator.getId());
if (null != targetValueDTO) {
treeStore.add(parent, targetValueDTO, false);
} else {
treeStore.add(parent, createTargetValueModel(indicator), false);
}
}
}
}
Aggregations