1 package org
.argeo
.cms
.ux
.widgets
;
3 import java
.util
.ArrayList
;
4 import java
.util
.Collections
;
7 public abstract class AbstractGuidedForm
implements GuidedForm
{
8 private String formTitle
;
9 private List
<Page
> pages
= new ArrayList
<>();
13 public abstract void addPages();
15 public void addPage(AbstractGuidedFormPage page
) {
21 public boolean canFinish() {
26 public boolean performFinish() {
31 public boolean performCancel() {
36 public int getPageCount() {
41 public List
<Page
> getPages() {
42 return Collections
.unmodifiableList(pages
);
46 public Page
getStartingPage() {
48 throw new IllegalStateException("No page available");
53 public Page
getPreviousPage(Page page
) {
54 int index
= pages
.indexOf(page
);
55 if (index
== 0 || index
== -1) {
56 // first page or page not found
59 return pages
.get(index
- 1);
63 public Page
getNextPage(Page page
) {
64 int index
= pages
.indexOf(page
);
65 if (index
== pages
.size() - 1 || index
== -1) {
66 // last page or page not found
69 return pages
.get(index
+ 1);
72 public void setFormTitle(String formTitle
) {
73 this.formTitle
= formTitle
;
77 public String
getFormTitle() {
82 public void setView(View view
) {