From: Peter W. <pw...@us...> - 2006-07-26 09:37:39
|
Update of /cvsroot/cob/COBEditor/src/edu/iastate/ato/gui/details In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv31183/src/edu/iastate/ato/gui/details Modified Files: TermPropertyPanel.java Log Message: Allows term properties to be deleted. Index: TermPropertyPanel.java =================================================================== RCS file: /cvsroot/cob/COBEditor/src/edu/iastate/ato/gui/details/TermPropertyPanel.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** TermPropertyPanel.java 20 Jul 2006 20:51:12 -0000 1.2 --- TermPropertyPanel.java 26 Jul 2006 09:37:30 -0000 1.3 *************** *** 3,11 **** --- 3,16 ---- import java.sql.Connection ; import java.util.HashMap ; + import java.util.HashSet; import java.util.Map ; import java.util.Vector ; import java.awt.BorderLayout ; + import java.awt.Color; + import java.awt.Insets; import java.awt.event.ActionEvent ; + + import javax.swing.BorderFactory; import javax.swing.JButton ; import javax.swing.JComboBox ; *************** *** 48,52 **** JButton btnAdd = new JButton("Add") ; ! LabelledItemPanel mainPane = new LabelledItemPanel(3) ; JScrollPane jScrollPane1 = new JScrollPane() ; --- 53,57 ---- JButton btnAdd = new JButton("Add") ; ! LabelledItemPanel mainPane = new LabelledItemPanel(0) ; JScrollPane jScrollPane1 = new JScrollPane() ; *************** *** 56,59 **** --- 61,67 ---- new HashMap<JTextArea, JComponent>() ; + HashSet<JTextArea> newItems = new HashSet<JTextArea>() ; + HashSet<JTextArea> deletedItems = new HashSet<JTextArea>() ; + // map from the property name to its JTextField //Map<String, JTextField> attributeEditors = new HashMap(); *************** *** 78,91 **** } JTextArea v = new JTextArea() ; ! mainPane.addItem(cb, v) ; ! allItem.put(v, cb) ; return v ; } public JTextArea addProperty(String attr, String value) { JLabel label = new JLabel(attr) ; JTextArea v = new JTextArea(value) ; ! mainPane.addItem(label, v) ; allItem.put(v, label) ; return v ; --- 86,146 ---- } JTextArea v = new JTextArea() ; ! ! JPanel p = new JPanel(); ! p.add(createDeleteButton(v)); ! p.add(cb); ! ! mainPane.addItem(p, v) ; ! allItem.put(v, cb); ! newItems.add(v); return v ; } + public class OnDeletionHandler implements MessageHandler{ + public JTextArea vref; + public OnDeletionHandler(JTextArea v){ + vref = v; + } + + public void onDelete(ActionEvent e){ + vref.setEnabled(false); + deletedItems.add(vref); + } + + public void messageMap(){ + + } + } + + private JButton createDeleteButton(JTextArea vref){ + JButton deleteButton = new JButton(); + deleteButton.setMargin(new Insets(0,0,0,0)); + deleteButton.setIcon(IconLib.iconDelete_sm); + deleteButton.setSelectedIcon(IconLib.iconAddSubPackage); + deleteButton.setBorder(BorderFactory.createEtchedBorder()); + deleteButton.setBackground(new Color(238,238,238)); + deleteButton.setToolTipText("Delete"); + + try{ + MessageMap.mapAction(deleteButton, new OnDeletionHandler(vref), "onDelete") ; + } + catch(Exception ex){} + + return deleteButton; + } + public JTextArea addProperty(String attr, String value) { JLabel label = new JLabel(attr) ; JTextArea v = new JTextArea(value) ; ! ! JPanel p = new JPanel(); ! p.add(createDeleteButton(v)); ! JComboBox cb = makeComboBox(); ! cb.setEnabled(false); ! p.add(cb); ! ! ! mainPane.addItem(p, v) ; allItem.put(v, label) ; return v ; *************** *** 190,194 **** try { ! MessageMap.mapAction(this.btnConfirm, this, "onConfirm") ; MessageMap.mapAction(this.btnCancel, this, "onCancel") ; MessageMap.mapAction(this.btnAdd, this, "onAdd") ; --- 245,249 ---- try { ! MessageMap.mapAction(this.btnConfirm, this, "onConfirm") ; MessageMap.mapAction(this.btnCancel, this, "onCancel") ; MessageMap.mapAction(this.btnAdd, this, "onAdd") ; *************** *** 231,242 **** { // JDBCUtils:insertOrUpdateDatabase() - insert with null primary key ! ! String attr = getLabel(item) ; ! OntologyEdit.addTermProperty(db, term_oid, attr, value, ! MOEditor.user.name) ; ! allItem.get(item).setEnabled(false) ; } } ! } --- 286,307 ---- { // JDBCUtils:insertOrUpdateDatabase() - insert with null primary key ! if(deletedItems.contains(item)){ ! if(!newItems.contains(item)){ ! // Delete Item ! OntologyEdit.deleteTermProperty(db,term_oid,getLabel(item)); ! } ! ! }else{ ! String attr = getLabel(item) ; ! OntologyEdit.addTermProperty(db, term_oid, attr, value, ! MOEditor.user.name) ; ! allItem.get(item).setEnabled(false) ; ! } } } ! } ! ! public void deleteTermProperty(){ ! } |