001: /*
002: * BasicIReportConnectionEditor.java
003: *
004: * Created on March 27, 2007, 9:31 AM
005: */
006:
007: package it.businesslogic.ireport.connection.gui;
008:
009: import it.businesslogic.ireport.IReportConnection;
010: import it.businesslogic.ireport.IReportConnectionEditor;
011: import java.util.HashMap;
012: import java.util.Iterator;
013: import javax.swing.table.DefaultTableModel;
014:
015: /**
016: *
017: * @author gtoffoli
018: */
019: public class BasicIReportConnectionEditor extends javax.swing.JPanel
020: implements IReportConnectionEditor {
021:
022: IReportConnection iReportConnection = null;
023:
024: /** Creates new form BasicIReportConnectionEditor */
025: public BasicIReportConnectionEditor() {
026: initComponents();
027: }
028:
029: /** This method is called from within the constructor to
030: * initialize the form.
031: * WARNING: Do NOT modify this code. The content of this method is
032: * always regenerated by the Form Editor.
033: */
034: // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
035: private void initComponents() {
036: java.awt.GridBagConstraints gridBagConstraints;
037:
038: jLabelPropertiesTable = new javax.swing.JLabel();
039: jScrollPane1 = new javax.swing.JScrollPane();
040: jTableCustomProperties = new javax.swing.JTable();
041:
042: setLayout(new java.awt.GridBagLayout());
043:
044: jLabelPropertiesTable.setText("IReportConnection properties");
045: gridBagConstraints = new java.awt.GridBagConstraints();
046: gridBagConstraints.gridx = 0;
047: gridBagConstraints.gridy = 0;
048: gridBagConstraints.gridwidth = 2;
049: gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
050: gridBagConstraints.insets = new java.awt.Insets(6, 5, 0, 3);
051: add(jLabelPropertiesTable, gridBagConstraints);
052:
053: jTableCustomProperties
054: .setModel(new javax.swing.table.DefaultTableModel(
055: new Object[][] {
056:
057: }, new String[] { "Name", "Value" }) {
058: Class[] types = new Class[] {
059: java.lang.String.class,
060: java.lang.String.class };
061:
062: public Class getColumnClass(int columnIndex) {
063: return types[columnIndex];
064: }
065: });
066: jTableCustomProperties
067: .addMouseListener(new java.awt.event.MouseAdapter() {
068: public void mouseClicked(
069: java.awt.event.MouseEvent evt) {
070: jTableCustomPropertiesMouseClicked1(evt);
071: }
072: });
073:
074: jScrollPane1.setViewportView(jTableCustomProperties);
075:
076: gridBagConstraints = new java.awt.GridBagConstraints();
077: gridBagConstraints.gridx = 0;
078: gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
079: gridBagConstraints.weightx = 1.0;
080: gridBagConstraints.weighty = 1.0;
081: gridBagConstraints.insets = new java.awt.Insets(4, 4, 4, 4);
082: add(jScrollPane1, gridBagConstraints);
083:
084: }// </editor-fold>//GEN-END:initComponents
085:
086: private void jTableCustomPropertiesMouseClicked1(
087: java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTableCustomPropertiesMouseClicked1
088: //jButtonRemoveProp.setEnabled( jTableCustomProperties.getSelectedRow() >= 0 );
089: }//GEN-LAST:event_jTableCustomPropertiesMouseClicked1
090:
091: public void setIReportConnection(IReportConnection c) {
092:
093: this .iReportConnection = c;
094: DefaultTableModel dtm = ((DefaultTableModel) jTableCustomProperties
095: .getModel());
096: dtm.setRowCount(0);
097: if (iReportConnection != null) {
098: HashMap map = iReportConnection.getProperties();
099: Iterator iterator = map.keySet().iterator();
100: while (iterator.hasNext()) {
101: Object key = iterator.next();
102: dtm.addRow(new Object[] { key, map.get(key) });
103: //jTableCustomProperties.setValueAt(key, row, 0);
104: //jTableCustomProperties.setValueAt(, row, 1);
105: }
106: }
107:
108: jTableCustomProperties.updateUI();
109: }
110:
111: public IReportConnection getIReportConnection() {
112:
113: if (iReportConnection != null) {
114: HashMap map = new HashMap();
115: for (int i = 0; i < jTableCustomProperties.getRowCount(); ++i) {
116: Object key = jTableCustomProperties.getValueAt(i, 0);
117: Object value = jTableCustomProperties.getValueAt(i, 1);
118:
119: if (key != null)
120: map.put(key, jTableCustomProperties
121: .getValueAt(i, 1));
122: }
123:
124: iReportConnection.loadProperties(map);
125: }
126:
127: return iReportConnection;
128: }
129:
130: // Variables declaration - do not modify//GEN-BEGIN:variables
131: private javax.swing.JLabel jLabelPropertiesTable;
132: private javax.swing.JScrollPane jScrollPane1;
133: private javax.swing.JTable jTableCustomProperties;
134: // End of variables declaration//GEN-END:variables
135:
136: }
|