use of org.activityinfo.shared.dto.ActivityDTO in project activityinfo by bedatadriven.
the class AddLockedPeriodDialog method initializeComponent.
private void initializeComponent() {
setWidth(400);
setHeight(280);
setHeaderVisible(false);
fieldsetContainer = new FieldSet();
fieldsetContainer.setHeading(I18N.CONSTANTS.type());
comboboxProjects = new ComboBox<ProjectDTO>();
storeProjects = new ListStore<ProjectDTO>();
comboboxProjects.setStore(storeProjects);
comboboxProjects.setDisplayField("name");
comboboxProjects.setForceSelection(true);
comboboxProjects.setTriggerAction(TriggerAction.ALL);
comboboxProjects.setEditable(false);
comboboxActivities = new ComboBox<ActivityDTO>();
storeActivities = new ListStore<ActivityDTO>();
comboboxActivities.setStore(storeActivities);
comboboxActivities.setDisplayField("name");
comboboxActivities.setForceSelection(true);
comboboxActivities.setTriggerAction(TriggerAction.ALL);
comboboxActivities.setEditable(false);
radiogroupContainer = new RadioGroup();
radiogroupContainer.setFieldLabel(I18N.CONSTANTS.type());
labelDatabase = new LabelField(I18N.CONSTANTS.database());
labelDatabase.setWidth(100);
labelDatabaseName = new LabelField();
radioDatabase = new Radio();
radioDatabase.setFieldLabel(I18N.CONSTANTS.database());
radioDatabase.addListener(Events.Change, new Listener<FieldEvent>() {
@Override
public void handleEvent(FieldEvent be) {
}
});
radiogroupContainer.add(radioDatabase);
panelDatabase = new HorizontalPanel();
panelDatabase.add(labelDatabase);
panelDatabase.add(radioDatabase);
panelDatabase.add(labelDatabaseName);
fieldsetContainer.add(panelDatabase);
radioActivity = new Radio();
radioActivity.setFieldLabel(I18N.CONSTANTS.activity());
labelActivity = new LabelField(I18N.CONSTANTS.activity());
labelActivity.setWidth(100);
panelActivity = new HorizontalPanel();
panelActivity.add(labelActivity);
panelActivity.add(radioActivity);
panelActivity.add(comboboxActivities);
fieldsetContainer.add(panelActivity);
radiogroupContainer.add(radioActivity);
radioProject = new Radio();
radioProject.setFieldLabel(I18N.CONSTANTS.project());
radioProject.addListener(Events.Change, new Listener<FieldEvent>() {
@Override
public void handleEvent(FieldEvent be) {
comboboxProjects.setEnabled(radioProject.getValue());
}
});
labelProject = new LabelField(I18N.CONSTANTS.project());
labelProject.setWidth(100);
panelProject = new HorizontalPanel();
panelProject.add(labelProject);
panelProject.add(radioProject);
panelProject.add(comboboxProjects);
fieldsetContainer.add(panelProject);
radiogroupContainer.add(radioProject);
add(fieldsetContainer);
textfieldName = new TextField<String>();
textfieldName.setFieldLabel(I18N.CONSTANTS.name());
textfieldName.setAllowBlank(false);
add(textfieldName);
checkboxEnabled = new CheckBox();
checkboxEnabled.setFieldLabel(I18N.CONSTANTS.enabledColumn());
add(checkboxEnabled);
datefieldFromDate = new DateField();
datefieldFromDate.setFieldLabel(I18N.CONSTANTS.fromDate());
datefieldFromDate.setAllowBlank(false);
add(datefieldFromDate);
datefieldToDate = new DateField();
datefieldToDate.setFieldLabel(I18N.CONSTANTS.toDate());
datefieldFromDate.setAllowBlank(false);
add(datefieldToDate);
radiogroupContainer.addListener(Events.Change, new Listener<FieldEvent>() {
@Override
public void handleEvent(FieldEvent be) {
comboboxActivities.setAllowBlank(!radioActivity.getValue());
comboboxProjects.setAllowBlank(!radioProject.getValue());
comboboxActivities.clearInvalid();
comboboxProjects.clearInvalid();
}
});
}
use of org.activityinfo.shared.dto.ActivityDTO 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.shared.dto.ActivityDTO in project activityinfo by bedatadriven.
the class LockedPeriodsPresenter method go.
@Override
public void go(UserDatabaseDTO db) {
parentModel = db;
ArrayList<LockedPeriodDTO> items = new ArrayList<LockedPeriodDTO>(db.getLockedPeriods());
for (ActivityDTO activity : db.getActivities()) {
if (activity.getLockedPeriods() != null && activity.getLockedPeriods().size() > 0) {
items.addAll(activity.getLockedPeriods());
}
}
for (ProjectDTO project : db.getProjects()) {
if (project.getLockedPeriods() != null && project.getLockedPeriods().size() > 0) {
items.addAll(project.getLockedPeriods());
}
}
view.setItems(items);
if (items.size() > 0) {
view.setValue(items.get(0));
}
view.setParent(parentModel);
}
use of org.activityinfo.shared.dto.ActivityDTO in project activityinfo by bedatadriven.
the class LockedPeriodsPresenter method onCreate.
@Override
public void onCreate(CreateEvent event) {
view.getCreatingMonitor().beforeRequest();
final LockedPeriodDTO lockedPeriod = view.getValue();
CreateLockedPeriod lockUserDatabase = new CreateLockedPeriod(lockedPeriod);
if (lockedPeriod.getParent() instanceof ActivityDTO) {
lockUserDatabase.setActivityId(lockedPeriod.getParent().getId());
}
if (lockedPeriod.getParent() instanceof ProjectDTO) {
lockUserDatabase.setProjectId(lockedPeriod.getParent().getId());
}
if (lockedPeriod.getParent() instanceof UserDatabaseDTO) {
lockUserDatabase.setUserDatabaseId(lockedPeriod.getParent().getId());
}
service.execute(lockUserDatabase, new AsyncCallback<CreateResult>() {
@Override
public void onFailure(Throwable caught) {
view.getCreatingMonitor().onServerError();
MessageBox.alert(I18N.CONSTANTS.error(), I18N.CONSTANTS.errorOnServer() + "\n\n" + caught.getMessage(), null);
}
@Override
public void onSuccess(CreateResult result) {
// Update the Id for the child instance
lockedPeriod.setId(result.getNewId());
// Tell the view there's a new kid on the block
view.create(lockedPeriod);
// Actually add the lock to it's parent
lockedPeriod.getParent().getLockedPeriods().add(lockedPeriod);
}
});
}
use of org.activityinfo.shared.dto.ActivityDTO 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);
}
}
}
Aggregations