From b086f57f56bf0eb9dab9cf321a0f69aaaae84347 Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Wed, 30 May 2012 08:37:45 +0200 Subject: Initial Maven Conversion --- .../com/c2kernel/gui/tabs/outcome/form/Field.java | 142 --------------------- 1 file changed, 142 deletions(-) delete mode 100644 source/com/c2kernel/gui/tabs/outcome/form/Field.java (limited to 'source/com/c2kernel/gui/tabs/outcome/form/Field.java') diff --git a/source/com/c2kernel/gui/tabs/outcome/form/Field.java b/source/com/c2kernel/gui/tabs/outcome/form/Field.java deleted file mode 100644 index 9d21c97..0000000 --- a/source/com/c2kernel/gui/tabs/outcome/form/Field.java +++ /dev/null @@ -1,142 +0,0 @@ -package com.c2kernel.gui.tabs.outcome.form; -import java.awt.Component; - -import javax.swing.JComponent; -import javax.swing.JLabel; -import javax.swing.JPanel; -import javax.swing.SwingConstants; - -import org.exolab.castor.xml.schema.ElementDecl; -import org.w3c.dom.Document; -import org.w3c.dom.Element; -import org.w3c.dom.Text; - -import com.c2kernel.gui.tabs.outcome.OutcomeException; -import com.c2kernel.gui.tabs.outcome.form.field.StringEditField; -import com.c2kernel.utils.Logger; - - -public class Field extends OutcomeStructure { - - StringEditField myElementPanel = null; - AttributeList myAttributes; - JLabel tagName; - Text textNode; - boolean fixed; - public static final JPanel nullPanel = new JPanel(); - - public Field(ElementDecl model, boolean readOnly, HelpPane helpPane) { - super(model, readOnly, helpPane); - - try { - myElementPanel = StringEditField.getEditField(model); - Logger.msg(6, "Field type: "+myElementPanel.getClass().getName()); - myElementPanel.setHelp(helpPane, help); - if (readOnly) myElementPanel.setEditable(false); - - } catch (StructuralException e) { // no base type for field - only attributes - myElementPanel = null; - } - - myAttributes = new AttributeList(model, readOnly, helpPane); - - tagName = new JLabel(model.getName()); - tagName.setVerticalAlignment(SwingConstants.BOTTOM); - } - - public JComponent getLabel() { - return tagName; - } - - public Component getCData() { - if (myElementPanel == null) - return nullPanel; - return myElementPanel.getControl(); - } - - public JComponent getAttributes() { - return myAttributes; - } - - @Override - public void addStructure(OutcomeStructure newElement) throws StructuralException { - throw new StructuralException("Field "+model.getName()+" cannot have child structures"); - } - - @Override - public void addInstance(Element myElement, Document parentDoc) throws OutcomeException { - Logger.msg(6, "Accepting Field "+myElement.getTagName()); - if (this.myElement != null) throw new CardinalException("Field "+this.getName()+" cannot repeat"); - this.myElement = myElement; - - try { - if (myElementPanel == null) - Logger.error("Field should be empty. Discarding contents."); - else { - if (myElement.hasChildNodes()) - textNode = (Text)myElement.getFirstChild(); - else { - textNode = parentDoc.createTextNode(getDefaultValue()); - myElement.appendChild(textNode); - } - - myElementPanel.setData(textNode); - } - } catch (ClassCastException ex) { - throw new StructuralException("First child node of Field " + this.getName() + " was not Text: "+myElement.getFirstChild().getNodeType()); - } - myAttributes.setInstance(myElement); - } - - // check if valid - - @Override - public String validateStructure() { - myAttributes.validateAttributes(); - if (myElementPanel != null) myElementPanel.updateNode(); - Text contents = (Text)myElement.getFirstChild(); - if (!myElement.hasAttributes() && model.getMinOccurs() < 1 && - (contents == null || contents.getData().length() == 0)) - // empty - should remove if optional - myElement.getParentNode().removeChild(myElement); - return null; - } - - @Override - public Element initNew(Document parent) { - Logger.msg(6, "Creating Field "+this.getName()); - - // make a new Element - myElement = parent.createElement(this.getName()); - - // see if there is a default/fixed value - if (myElementPanel != null) { - // populate - String defaultVal = readOnly?"":getDefaultValue(); - textNode = parent.createTextNode(defaultVal); - myElement.appendChild(textNode); - myElementPanel.setData(textNode); - } - - // set up attributes - myAttributes.initNew(myElement); - - return myElement; - } - - private String getDefaultValue() { - String defaultValue = model.getFixedValue(); - if (defaultValue == null) defaultValue = model.getDefaultValue(); - if (defaultValue == null) defaultValue = myElementPanel.getDefaultValue(); - return defaultValue; - } - - @Override - public void grabFocus() { - if (myElementPanel != null) - myElementPanel.grabFocus(); - else - myAttributes.grabFocus(); - } - -} -- cgit v1.2.3