package demo18.client; import javax.swing.*; import java.awt.*; import org.openswing.swing.client.*; import java.util.*; import org.openswing.swing.util.client.ClientSettings; import org.openswing.swing.internationalization.java.EnglishOnlyResourceFactory; import org.openswing.swing.form.model.client.VOModel; import org.openswing.swing.form.client.Form; import org.openswing.swing.form.client.FormController; import org.openswing.swing.util.java.Consts; import org.openswing.swing.message.receive.java.*; import org.openswing.swing.lookup.client.LookupController; import org.openswing.swing.lookup.client.LookupDataLocator; import org.openswing.swing.internationalization.java.Resources; import org.openswing.swing.mdi.client.InternalFrame; import javax.swing.border.*; import org.openswing.swing.lookup.client.LookupServerDataLocator; /** * <p>Title: OpenSwing Framework</p> * <p>Description: Demo Application: detail employee frame.</p> * <p>Copyright: Copyright (C) 2006 Mauro Carniel</p> * <p> </p> * @author Mauro Carniel * @version 1.0 */ public class EmpDetailFrame extends InternalFrame { JPanel buttonsPanel = new JPanel(); DateControl controlDate = new DateControl(); GridBagLayout gridBagLayout1 = new GridBagLayout(); LabelControl labelDate = new LabelControl(); ComboBoxControl controlSex = new ComboBoxControl(); LabelControl labelEmpCode = new LabelControl(); CurrencyControl controlCurrency = new CurrencyControl(); TextControl controlempCode = new TextControl(); private Form mainPanel = new Form(); InsertButton insertButton = new InsertButton(); FlowLayout flowLayout1 = new FlowLayout(); EditButton editButton = new EditButton(); ReloadButton reloadButton = new ReloadButton(); SaveButton saveButton = new SaveButton(); DeleteButton deleteButton = new DeleteButton(); CodLookupControl controlLookup = new CodLookupControl(); TextControl controlDeptDescr = new TextControl(); CopyButton copyButton = new CopyButton(); TextAreaControl controlNote = new TextAreaControl(); TitledBorder titledBorder1; TitledBorder titledBorder2; LabelControl labelFName = new LabelControl(); LabelControl labelLName = new LabelControl(); TextControl controlFName = new TextControl(); TextControl controlLName = new TextControl(); LabelControl labelSex = new LabelControl(); LabelControl labelSalary = new LabelControl(); LabelControl labelTask = new LabelControl(); LabelControl labelDeptCode = new LabelControl(); CodLookupControl controlCodTask = new CodLookupControl(); TextControl controlTaskDescr = new TextControl(); LookupController taskController = new LookupController(); LookupServerDataLocator taskDataLocator = new LookupServerDataLocator(); LookupController deptController = new LookupController(); LookupServerDataLocator deptDataLocator = new LookupServerDataLocator(); public EmpDetailFrame(FormController dataController) { try { jbInit(); mainPanel.setFormController(dataController); // dept lookup... deptDataLocator.setGridMethodName("loadDepts"); deptDataLocator.setValidationMethodName("validateDept"); controlLookup.setLookupController(deptController); deptController.setLookupDataLocator(deptDataLocator); deptController.setFrameTitle("depts"); deptController.setLookupValueObjectClassName("demo18.java.DeptVO"); deptController.addLookup2ParentLink("deptCode", "deptCode"); deptController.addLookup2ParentLink("description","deptDescription"); deptController.setAllColumnVisible(false); deptController.setVisibleColumn("deptCode", true); deptController.setVisibleColumn("description", true); deptController.setForm(mainPanel); // task lookup... taskDataLocator.setGridMethodName("loadTasks"); taskDataLocator.setValidationMethodName("validateTask"); controlCodTask.setLookupController(taskController); taskController.setLookupDataLocator(taskDataLocator); taskController.setFrameTitle("tasks"); taskController.setLookupValueObjectClassName("demo18.java.TaskVO"); taskController.addLookup2ParentLink("taskCode", "taskCode"); taskController.addLookup2ParentLink("description","taskDescription"); taskController.setAllColumnVisible(false); taskController.setVisibleColumn("taskCode", true); taskController.setVisibleColumn("description", true); taskController.setForm(mainPanel); setSize(590,440); } catch(Exception e) { e.printStackTrace(); } } private void jbInit() throws Exception { titledBorder1 = new TitledBorder(""); titledBorder2 = new TitledBorder(""); mainPanel.setVOClassName("demo18.java.EmpVO"); mainPanel.setLayout(gridBagLayout1); labelDate.setText("hire date"); labelEmpCode.setText("empCode"); controlSex.setCanCopy(true); controlSex.setAttributeName("sex"); controlSex.setDomainId("SEX"); controlSex.setLinkLabel(labelSex); controlSex.setRequired(true); controlCurrency.setCanCopy(true); controlCurrency.setDecimals(2); controlCurrency.setMaxValue(1000.0); controlCurrency.setMinValue(-1000.0); controlCurrency.setRequired(false); controlCurrency.setAttributeName("salary"); controlempCode.setMaxCharacters(5); controlempCode.setTrimText(true); controlempCode.setUpperCase(true); controlempCode.setEnabledOnEdit(false); controlempCode.setAttributeName("empCode"); buttonsPanel.setLayout(flowLayout1); flowLayout1.setAlignment(FlowLayout.LEFT); mainPanel.setBorder(titledBorder1); mainPanel.setInsertButton(insertButton); mainPanel.setCopyButton(copyButton); mainPanel.setEditButton(editButton); mainPanel.setReloadButton(reloadButton); mainPanel.setDeleteButton(deleteButton); mainPanel.setSaveButton(saveButton); saveButton.setEnabled(false); controlLookup.setCanCopy(true); controlLookup.setMaxCharacters(5); controlLookup.setRequired(true); controlLookup.setAttributeName("deptCode"); controlDeptDescr.setAttributeName("deptDescription"); controlDeptDescr.setCanCopy(true); controlDeptDescr.setEnabledOnInsert(false); controlDeptDescr.setEnabledOnEdit(false); controlDate.setCanCopy(true); controlDate.setRequired(false); controlDate.setAttributeName("hireDate"); copyButton.setText("copyButton1"); controlNote.setAttributeName("note"); titledBorder1.setTitle("Title"); titledBorder1.setTitleColor(Color.blue); labelFName.setRequestFocusEnabled(true); labelFName.setText("firstName"); labelLName.setText("lastName"); controlFName.setLinkLabel(labelFName); controlFName.setRequired(true); controlFName.setAttributeName("firstName"); controlLName.setRequired(true); controlLName.setAttributeName("lastName"); labelSex.setRequestFocusEnabled(true); labelSex.setText("sex"); labelSalary.setText("salary"); labelTask.setText("task"); labelDeptCode.setText("department"); controlCodTask.setMaxCharacters(5); controlCodTask.setRequired(true); controlCodTask.setAttributeName("taskCode"); controlTaskDescr.setAttributeName("taskDescription"); controlTaskDescr.setEnabledOnInsert(false); controlTaskDescr.setEnabledOnEdit(false); this.getContentPane().add(buttonsPanel, BorderLayout.NORTH); buttonsPanel.add(insertButton, null); buttonsPanel.add(copyButton, null); buttonsPanel.add(editButton, null); buttonsPanel.add(reloadButton, null); buttonsPanel.add(saveButton, null); buttonsPanel.add(deleteButton, null); this.getContentPane().add(mainPanel, BorderLayout.CENTER); mainPanel.add(controlCurrency, new GridBagConstraints(1, 2, 5, 1, 0.0, 0.0 ,GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(controlDeptDescr, new GridBagConstraints(2, 4, 3, 2, 1.0, 0.0 ,GridBagConstraints.NORTHWEST, GridBagConstraints.HORIZONTAL, new Insets(5, 5, 0, 5), 0, 0)); mainPanel.add(controlNote, new GridBagConstraints(0, 7, 6, 1, 1.0, 1.0 ,GridBagConstraints.NORTHWEST, GridBagConstraints.BOTH, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(labelEmpCode, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0 ,GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(controlempCode, new GridBagConstraints(1, 0, 3, 1, 1.0, 0.0 ,GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 0), 0, 0)); mainPanel.add(labelDate, new GridBagConstraints(0, 3, 1, 1, 0.0, 0.0 ,GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(labelFName, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0 ,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(controlDate, new GridBagConstraints(1, 3, 4, 1, 0.0, 0.0 ,GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 0), 0, 0)); mainPanel.add(controlFName, new GridBagConstraints(1, 1, 1, 1, 1.0, 0.0 ,GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(labelLName, new GridBagConstraints(2, 1, 1, 1, 0.0, 0.0 ,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 0), 0, 0)); mainPanel.add(controlLName, new GridBagConstraints(3, 1, 3, 1, 1.0, 0.0 ,GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(labelSalary, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0 ,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(labelSex, new GridBagConstraints(2, 0, 1, 1, 0.0, 0.0 ,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(controlSex, new GridBagConstraints(4, 0, 1, 1, 0.0, 0.0 ,GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(controlLookup, new GridBagConstraints(1, 4, 1, 1, 1.0, 0.0 ,GridBagConstraints.NORTHWEST, GridBagConstraints.HORIZONTAL, new Insets(5, 5, 5, 0), 0, 0)); mainPanel.add(labelTask, new GridBagConstraints(0, 5, 1, 2, 0.0, 0.0 ,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(labelDeptCode, new GridBagConstraints(0, 4, 1, 1, 0.0, 0.0 ,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0)); mainPanel.add(controlCodTask, new GridBagConstraints(1, 5, 1, 2, 1.0, 0.0 ,GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(5, 5, 5, 0), 0, 0)); mainPanel.add(controlTaskDescr, new GridBagConstraints(2, 6, 3, 1, 1.0, 0.0 ,GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(5, 5, 5, 5), 0, 0)); controlempCode.setAttributeName("empCode"); controlempCode.setRequired(true); // controlDate.setDateType(Consts.TYPE_DATE_TIME); // controlDate.setTimeFormat(Resources.H_MM_AAA); } public Form getMainPanel() { return mainPanel; } public SaveButton getSaveButton() { return saveButton; } public DeleteButton getDeleteButton() { return deleteButton; } public EditButton getEditButton() { return editButton; } public CurrencyControl getControlCurrency() { return controlCurrency; } }