package demo50;
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 java.sql.*;
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 javax.swing.border.*;
import javax.swing.text.MaskFormatter;
import org.openswing.swing.lookup.client.LookupListener;
import java.awt.event.*;
import org.openswing.swing.util.client.ClientUtils;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.*;
/**
* <p>Title: OpenSwing Framework</p>
* <p>Description: Demo Application: detail frame containing several input controls.</p>
* <p>Copyright: Copyright (C) 2006 Mauro Carniel</p>
* <p> </p>
* @author Mauro Carniel
* @version 1.0
*/
public class DetailFrame extends JFrame {
JPanel buttonsPanel = new JPanel();
GridBagLayout gridBagLayout1 = new GridBagLayout();
LabelControl labelCode = new LabelControl();
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();
private Connection conn = null;
TextControl controlDescr = new TextControl();
JButton buttonSel = new JButton();
TextControl controlCode = new TextControl();
LabelControl labelFile = new LabelControl();
public DetailFrame(Connection conn,DetailFrameController dataController) {
try {
super.setDefaultCloseOperation(super.EXIT_ON_CLOSE);
this.conn = conn;
jbInit();
mainPanel.setFormController(dataController);
setSize(600,150);
ClientUtils.centerFrame(this);
setVisible(true);
}
catch(Exception e) {
e.printStackTrace();
}
}
private void jbInit() throws Exception {
mainPanel.setVOClassName("demo50.DetailTestVO");
mainPanel.setLayout(gridBagLayout1);
labelCode.setText("code");
buttonsPanel.setLayout(flowLayout1);
flowLayout1.setAlignment(FlowLayout.LEFT);
mainPanel.setInsertButton(insertButton);
mainPanel.setEditButton(editButton);
mainPanel.setReloadButton(reloadButton);
mainPanel.setSaveButton(saveButton);
saveButton.setEnabled(false);
buttonSel.setText("...");
buttonSel.addActionListener(new DetailFrame_buttonSel_actionAdapter(this));
controlDescr.setAttributeName("fileDescription");
controlDescr.setEnabledOnInsert(false);
controlDescr.setEnabledOnEdit(false);
controlCode.setAttributeName("stringValue");
controlCode.setTrimText(true);
controlCode.setUpperCase(true);
controlCode.setEnabledOnEdit(false);
labelFile.setText("file");
this.getContentPane().add(buttonsPanel, BorderLayout.NORTH);
buttonsPanel.add(insertButton, null);
buttonsPanel.add(editButton, null);
buttonsPanel.add(reloadButton, null);
buttonsPanel.add(saveButton, null);
this.getContentPane().add(mainPanel, BorderLayout.CENTER);
mainPanel.add(labelCode, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0
,GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0));
mainPanel.add(controlDescr, new GridBagConstraints(1, 1, 1, 1, 1.0, 1.0
,GridBagConstraints.NORTHWEST, GridBagConstraints.HORIZONTAL, new Insets(5, 5, 5, 5), 0, 0));
mainPanel.add(buttonSel, new GridBagConstraints(2, 1, 1, 1, 0.0, 0.0
,GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0));
mainPanel.add(controlCode, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0
,GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0));
mainPanel.add(labelFile, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0
,GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0));
}
void buttonSel_actionPerformed(ActionEvent e) {
JFileChooser f = new JFileChooser(".");
int res = f.showOpenDialog(this);
if (res==f.APPROVE_OPTION && f.getSelectedFile()!=null) {
BufferedInputStream in = null;
try {
byte[] bb = new byte[ (int) f.getSelectedFile().length()];
in = new BufferedInputStream(new FileInputStream(f.getSelectedFile()));
in.read(bb);
DetailTestVO vo = (DetailTestVO)mainPanel.getVOModel().getValueObject();
vo.setFile(bb);
controlDescr.setText(f.getSelectedFile().getPath());
}
catch (Exception ex) {
ex.printStackTrace();
}
finally {
try {
in.close();
}
catch (Exception ex1) {
}
}
}
}
public Form getMainPanel() {
return mainPanel;
}
}
class DetailFrame_buttonSel_actionAdapter implements java.awt.event.ActionListener {
DetailFrame adaptee;
DetailFrame_buttonSel_actionAdapter(DetailFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.buttonSel_actionPerformed(e);
}
}