summaryrefslogtreecommitdiffstats
path: root/org/madore/damlengine/TodoDateExtraElement.java
diff options
context:
space:
mode:
authorDavid A. Madore <david+git@madore.org>2011-08-26 17:46:14 +0200
committerDavid A. Madore <david+git@madore.org>2011-08-26 17:46:14 +0200
commit3b1ce20a6d59e3424225421da7aef6fc50b8e047 (patch)
treea869523274a79ad280e5e19c8dc6cb320d8d01f3 /org/madore/damlengine/TodoDateExtraElement.java
parentfc26fdba30e084a2e8a8278d09a1be08a83e0722 (diff)
downloaddamlengine-3b1ce20a6d59e3424225421da7aef6fc50b8e047.tar.gz
damlengine-3b1ce20a6d59e3424225421da7aef6fc50b8e047.tar.bz2
damlengine-3b1ce20a6d59e3424225421da7aef6fc50b8e047.zip
Handle date-extra element.
Diffstat (limited to 'org/madore/damlengine/TodoDateExtraElement.java')
-rw-r--r--org/madore/damlengine/TodoDateExtraElement.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/org/madore/damlengine/TodoDateExtraElement.java b/org/madore/damlengine/TodoDateExtraElement.java
new file mode 100644
index 0000000..a8dd0b6
--- /dev/null
+++ b/org/madore/damlengine/TodoDateExtraElement.java
@@ -0,0 +1,36 @@
+package org.madore.damlengine;
+
+import org.w3c.dom.*;
+
+public final class TodoDateExtraElement extends TodoDefaultElement {
+
+ public static class Factory extends TodoElement.Factory {
+ @Override
+ public TodoDateExtraElement newItem(Element node,
+ Context ctx,
+ TodoItem caller) {
+ return new TodoDateExtraElement(node, ctx, caller);
+ }
+ }
+
+ public TodoDateExtraElement(Element node,
+ Context ctx,
+ TodoItem caller) {
+ super(node, ctx, caller);
+ }
+
+ @Override
+ public void handleNodeOnly() {
+ String lang = LangHelper.getLangRec(node);
+ String explicitLang = LangHelper.getLangNorec(node);
+ if ( explicitLang != null && explicitLang != lang ) {
+ System.err.println("warning: lang attribute on date-extra will be ignored");
+ explicitLang = null;
+ }
+ if ( ctx.ent == null )
+ throw new IllegalStateException("entry context not defined in date-extra element");
+ ctx.ent.headerNode.appendChild(ctx.doc.createTextNode(" \u00b7 "+node.getTextContent()));
+ node.getParentNode().removeChild(node);
+ }
+
+}