@Override
	public void newAttribute(String key, Object value, boolean isReadOnly, AttributeTableModel model) {
 		model.keys.add(key);
		model.values.add(value);
		model.readOnly.add(new Boolean(isReadOnly));
		
	   	Node node = doc.tree.getEditingNode();
		node.setAttribute(key, value, isReadOnly);
		
		// undo
		CompoundUndoable undoable = new CompoundUndoablePropertyChange(doc.tree);
		undoable.setName("New Node Attribute");
		Undoable primitive = new PrimitiveUndoableAttributeChange(node, null, null, false, key, value, isReadOnly);
		undoable.addPrimitive(primitive);
		doc.getUndoQueue().add(undoable);
		
		model.fireTableDataChanged();
	}