00001 00066 package com.arcle.rmt.superwaba.vc; 00067 00068 import waba.ui.TabPanel; 00069 import waba.ui.Window; 00070 import waba.ui.Button; 00071 import waba.ui.Event; 00072 import waba.ui.Label; 00073 import waba.ui.ControlEvent; 00074 import waba.ui.Control; 00075 import waba.ui.ScrollBar; 00076 import waba.ui.ComboBox; 00077 00078 import com.arcle.rmt.xplat.util.List; 00079 import com.arcle.rmt.superwaba.ui.CategoryWindow; 00080 import com.arcle.rmt.superwaba.framework.View; 00081 import com.arcle.rmt.superwaba.vc.ElementEditController; 00082 00093 public abstract class ElementEdit extends CategoryWindow implements View { 00094 protected ElementEdit(ElementEditController ctrl,String title) { 00095 super(title); 00096 _controller = ctrl; 00097 } 00098 00099 //----------------------------------------------------------------------- 00100 // New Abstract Methods 00101 00102 protected abstract List createPanels(); 00103 00104 00105 //----------------------------------------------------------------------- 00106 // Implemented Abstract Methods 00107 00108 protected String getPanelCaptionAt(int i) { 00109 return ((ElementPanel)getPanelAt(i)).getCaption(); 00110 } 00111 00112 public Button[] getCommandButtons() { 00113 return new Button[] { 00114 btnOk, 00115 btnCancel, 00116 btnDelete 00117 }; 00118 } 00119 00120 public void modelUpdated() { 00121 } 00122 00123 00124 //----------------------------------------------------------------------- 00125 // Overridden Methods 00126 00127 protected void initChildren() { 00128 super.initChildren(); 00129 00130 btnOk = createButton("OK"); 00131 btnCancel = createButton("Cancel"); 00132 btnDelete = createButton("Delete"); 00133 } 00134 00135 public void postPopup() { 00136 getController().viewInitialized(this); 00137 } 00138 00139 00144 public void onEvent(Event event) { 00145 ElementEditController ctrl = getController(); 00146 switch(event.type) { 00147 case ControlEvent.PRESSED: 00148 if(event.target == btnOk) { 00149 ctrl.cmdOk(); 00150 event.consumed = true; 00151 } else if(event.target == btnCancel) { 00152 ctrl.cmdCancel(); 00153 event.consumed = true; 00154 } else if(event.target == btnDelete) { 00155 ctrl.cmdDelete(); 00156 event.consumed = true; 00157 } 00158 break; 00159 } 00160 if (!event.consumed) { 00161 super.onEvent(event); 00162 } 00163 } 00164 00165 //----------------------------------------------------------------------- 00166 // Accessor Methods 00167 00168 protected ElementEditController getController() { 00169 return _controller; 00170 } 00171 00172 00173 //----------------------------------------------------------------------- 00174 // Factory Methods 00175 00176 00177 00178 //----------------------------------------------------------------------- 00179 // Member Variables 00180 00181 00185 private Button btnOk; 00186 00187 /* 00188 The "Cancel" button. 00189 */ 00190 private Button btnCancel; 00191 00192 /* 00193 The "Delete" button. 00194 */ 00195 private Button btnDelete; 00196 00199 private ElementEditController _controller; 00200 00201 }