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 }