BufferedValueModel bufferedOrderLines = presentationModel
.getBufferedModel(ICostableModel.PROPERTY_ORDER_LINE_ARRAY_LIST_MODEL);
OrderLineAttribute attribute = (OrderLineAttribute) selectedNode
.getObject();
OrderLine orderLine = attribute.getOrderLine();
orderLine.setHasArticle(null);
orderLine.setAttributeInfo(null);
orderLine.removeAllOrderLineAttributeInfo();
orderLine.setIsDefault(null);
String attributeValue;
if (attribute.isYesNo()) {
attributeValue = (String) JOptionPane.showInputDialog(window
.getComponent(), "Gi ny verdi", "Endre verdi",
JOptionPane.QUESTION_MESSAGE, null, new Object[] {
"Ja", "Nei" }, attribute.getAttributeValue());
} else if (attribute.getChoices() != null
&& attribute.getChoices().size() != 0) {
attributeValue = (String) JOptionPane.showInputDialog(window
.getComponent(), "Gi ny verdi", "Endre verdi",
JOptionPane.QUESTION_MESSAGE, null, attribute
.getChoices().toArray(), attribute
.getAttributeValue());
} else {
attributeValue = JOptionPane.showInputDialog(window
.getComponent(), "Gi ny verdi", attribute
.getAttributeValue());
}
if (attributeValue != null && attributeValue.length() != 0) {
if (!StringUtils.isEmpty(attribute.getAttributeDataType())
&& !AttributeDataType.valueOf(
StringUtils.upperCase(attribute
.getAttributeDataType())).isValid(
attributeValue)) {
Util.showErrorDialog(window, "Feil datatype",
"Attributt har feil datatype");
} else {
attribute.setAttributeValue(attributeValue);
OrderWrapper<T, E> orderWrapper = (OrderWrapper<T, E>) ((OrderLineTreeNode) orderLineTreeTableModel
.getRoot()).getObject();
calculateAttributes(orderWrapper.getOrderLines());
bufferedOrderLines.setValue(new ArrayListModel(orderWrapper
.getOrderLines()));
}
}
} else if (selectedNode != null) {
BufferedValueModel bufferedOrderLines = presentationModel
.getBufferedModel(ICostableModel.PROPERTY_ORDER_LINE_ARRAY_LIST_MODEL);
OrderLine line = (OrderLine) selectedNode.getObject();
String metric = line.getMetric();
if (metric != null) {
metric = "(" + metric + ")";
} else {
metric = "";
}
String numberOfValue = JOptionPane.showInputDialog(window
.getComponent(), "Gi antall" + metric, line
.getNumberOfItems());
if (!ValidationUtils.isNumeric(numberOfValue)) {
Util.showErrorDialog(window, "Feil", "Antall m� v�re et tall");
return;
}
if (numberOfValue != null && numberOfValue.length() != 0) {
line.setNumberOfItems(Integer.valueOf(numberOfValue.replace(
',', '.')));
OrderWrapper orderWrapper = (OrderWrapper) ((OrderLineTreeNode) orderLineTreeTableModel
.getRoot()).getObject();
bufferedOrderLines.setValue(new ArrayListModel(orderWrapper