1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.krad.uif.view;
17
18 import org.kuali.rice.krad.uif.container.CollectionGroup;
19 import org.kuali.rice.krad.uif.container.Group;
20 import org.kuali.rice.krad.uif.element.Action;
21 import org.kuali.rice.krad.uif.field.Field;
22 import org.kuali.rice.krad.uif.widget.Widget;
23 import org.kuali.rice.krad.web.form.UifFormBase;
24
25 import java.util.Set;
26
27
28
29
30
31
32
33
34 public interface ViewPresentationController {
35
36 public Set<String> getActionFlags(View view, UifFormBase model);
37
38 public Set<String> getEditModes(View view, UifFormBase model);
39
40
41
42
43
44
45
46
47 public boolean canEditView(View view, ViewModel model);
48
49
50
51
52
53
54
55
56
57
58 public boolean canEditField(View view, ViewModel model, Field field, String propertyName);
59
60
61
62
63
64
65
66
67
68
69 public boolean canViewField(View view, ViewModel model, Field field, String propertyName);
70
71
72
73
74
75
76
77
78
79
80
81 public boolean fieldIsRequired(View view, ViewModel model, Field field, String propertyName);
82
83 public boolean canEditGroup(View view, ViewModel model, Group group, String groupId);
84
85 public boolean canViewGroup(View view, ViewModel model, Group group, String groupId);
86
87 public boolean canEditWidget(View view, ViewModel model, Widget widget, String widgetId);
88
89 public boolean canViewWidget(View view, ViewModel model, Widget widget, String widgetId);
90
91 public boolean canPerformAction(View view, ViewModel model, Action action, String actionEvent,
92 String actionId);
93
94 public boolean canEditLine(View view, ViewModel model, CollectionGroup collectionGroup,
95 String collectionPropertyName, Object line);
96
97 public boolean canViewLine(View view, ViewModel model, CollectionGroup collectionGroup,
98 String collectionPropertyName, Object line);
99
100 public boolean canEditLineField(View view, ViewModel model, CollectionGroup collectionGroup,
101 String collectionPropertyName, Object line, Field field, String propertyName);
102
103 public boolean canViewLineField(View view, ViewModel model, CollectionGroup collectionGroup,
104 String collectionPropertyName, Object line, Field field, String propertyName);
105
106 public boolean canPerformLineAction(View view, ViewModel model, CollectionGroup collectionGroup,
107 String collectionPropertyName, Object line, Action action, String actionEvent, String actionId);
108
109 }