Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

ElementListController.java

Go to the documentation of this file.
00001 
00066 package com.arcle.rmt.superwaba.vc;
00067 
00068 import waba.ui.Window;
00069 import com.arcle.rmt.superwaba.vc.ElementList;
00070 import com.arcle.rmt.superwaba.vc.ElementEdit;
00071 import com.arcle.rmt.superwaba.model.Document;
00072 import com.arcle.rmt.superwaba.framework.Model;
00073 import com.arcle.rmt.rqml.RQMLFirstClass;
00074 
00082 public abstract class ElementListController extends ControllerBase {
00083     public ElementListController(Document doc) {
00084         _document = doc;
00085     }
00086 
00087     //----------------------------------------------------------------------
00088     // Command Handlers
00089 
00095     public void cmdNewElement() {
00096         RQMLFirstClass newElement = createElement();
00097         cmdEditElement(newElement);
00098     }
00099 
00107     public void cmdEditElement(RQMLFirstClass elem) {
00108         ElementList view = (ElementList) getView();
00109         ElementEditController ctrl = createElementEditController(elem);
00110         ElementEdit edit = createElementEdit(ctrl);
00111         Window.getTopMost().popupBlockingModal(edit);
00112         view.modelUpdated();
00113     }
00114 
00115     //----------------------------------------------------------------------
00116     // Accessor Methods
00117 
00121     public Document getDocument() {
00122         return _document;
00123     }
00124 
00125     //----------------------------------------------------------------------
00126     // Factory Methods
00127 
00131     protected abstract RQMLFirstClass createElement();
00132 
00136     protected abstract ElementEdit createElementEdit(ElementEditController ctrl);
00137 
00141     protected abstract ElementEditController createElementEditController(RQMLFirstClass elem);
00142 
00143     //----------------------------------------------------------------------
00144     // Member variables
00145 
00149     private Document _document;
00150 }

Generated on Fri Jun 18 19:51:20 2004 for Arcle Rambutan by doxygen 1.3.5