1 package org.kuali.student.common.ui.client.configurable.mvc.layouts;
2
3 import org.kuali.student.common.ui.client.mvc.View;
4
5 public interface ViewLayoutController {
6
7 /**
8 * Add a view to this LayoutController. A view's "key" is defined by its viewType enumeration.
9 * @param view
10 */
11 public void addView(View view);
12
13 /**
14 * Shows the view which corresponds to the viewType enumeration "key"
15 * @param <V>
16 * @param viewType
17 */
18 public <V extends Enum<?>> void showView(final V viewType);
19
20 /**
21 * Set the view with the viewType enum passed in to the be the default view. What the default view
22 * does varies on controller implementation, but will likely be the first view visible.
23 * @param <V>
24 * @param viewType
25 */
26 public <V extends Enum<?>> void setDefaultView(V viewType);
27
28 /**
29 * Creates a popup window with the view, that can be shown when needed for additional information needed
30 * from the user
31 * @param view
32 */
33 public void addStartViewPopup(final View view);
34 }