currentFormActivityPanel = new PSimplePanel();
verticalPanel.add(currentFormActivityPanel);
final PHorizontalPanel horizontalPanel = new PHorizontalPanel();
verticalPanel.add(horizontalPanel);
next.addClickHandler(new PClickHandler() {
@Override
public void onClick(final PClickEvent event) {
if (currentFormActivity.isValid() && index != (formActivities.size() - 1)) {
currentFormActivityPanel.clear();
for (final WizardActivityHandler handler : wizardActivityHandlers) {
handler.onNext(currentFormActivity);
}
index++;
currentFormActivity = formActivities.get(index);
currentFormActivity.start(currentFormActivityPanel);
update();
}
}
});
horizontalPanel.add(previous);
previous.addClickHandler(new PClickHandler() {
@Override
public void onClick(final PClickEvent event) {
if (index != 0) {
currentFormActivityPanel.clear();
for (final WizardActivityHandler handler : wizardActivityHandlers) {
handler.onPrevious(currentFormActivity);
}
index--;
currentFormActivity = formActivities.get(index);
currentFormActivity.start(currentFormActivityPanel);
update();
}
}
});
horizontalPanel.add(next);
horizontalPanel.add(finish);
horizontalPanel.add(cancel);
finish.addClickHandler(new PClickHandler() {
@Override
public void onClick(final PClickEvent event) {
boolean valid = true;
for (final FormActivity activity : formActivities) {
if (!activity.isValid()) valid = false;
}
if (valid) {
for (final WizardActivityHandler handler : wizardActivityHandlers) {
handler.onFinish(currentFormActivity);
}
}
}
});
cancel.addClickHandler(new PClickHandler() {
@Override
public void onClick(final PClickEvent arg0) {
container.hide();
}