X-Git-Url: https://git.argeo.org/?p=gpl%2Fargeo-suite.git;a=blobdiff_plain;f=publishing%2Forg.argeo.publishing.ui%2Fsrc%2Forg%2Fargeo%2Fdocbook%2Fui%2FDocumentTextEditor.java;fp=publishing%2Forg.argeo.publishing.ui%2Fsrc%2Forg%2Fargeo%2Fdocbook%2Fui%2FDocumentTextEditor.java;h=9dc7e1002dea7e68d91f6f4eb1a28532b5a05f75;hp=0000000000000000000000000000000000000000;hb=147ada7da5bf6292569f17a53a77fca04c97f707;hpb=5431f941fd6161e89f495a330c2ecddaf4f6bfb1 diff --git a/publishing/org.argeo.publishing.ui/src/org/argeo/docbook/ui/DocumentTextEditor.java b/publishing/org.argeo.publishing.ui/src/org/argeo/docbook/ui/DocumentTextEditor.java new file mode 100644 index 0000000..9dc7e10 --- /dev/null +++ b/publishing/org.argeo.publishing.ui/src/org/argeo/docbook/ui/DocumentTextEditor.java @@ -0,0 +1,40 @@ +package org.argeo.docbook.ui; + +import javax.jcr.Node; +import javax.jcr.Property; +import javax.jcr.RepositoryException; + +import org.argeo.cms.text.TextSection; +import org.argeo.cms.ui.CmsEditable; +import org.argeo.cms.ui.util.CmsUiUtils; +import org.eclipse.swt.widgets.Composite; + +/** Text editor where sections and subsections can be managed by the user. */ +public class DocumentTextEditor extends AbstractDbkViewer { + private static final long serialVersionUID = 6049661610883342325L; + + public DocumentTextEditor(Composite parent, int style, Node textNode, CmsEditable cmsEditable) + throws RepositoryException { + super(new TextSection(parent, style, textNode), style, cmsEditable); + refresh(); + getMainSection().setLayoutData(CmsUiUtils.fillWidth()); + } + + @Override + protected void initModel(Node textNode) throws RepositoryException { + if (isFlat()) { + textNode.addNode(DocBookNames.DBK_PARA, DocBookTypes.PARA) + .addNode(DocBookNames.JCR_XMLTEXT, DocBookTypes.XMLTEXT) + .setProperty(DocBookNames.JCR_XMLCHARACTERS, "Hello World!"); + } +// else +// textNode.setProperty(DocBookNames.DBK_TITLE, textNode.getName()); + } + + @Override + protected Boolean isModelInitialized(Node textNode) throws RepositoryException { + return textNode.hasProperty(Property.JCR_TITLE) || textNode.hasNode(DocBookNames.DBK_PARA) + || (!isFlat() && textNode.hasNode(DocBookNames.DBK_SECTION)); + } + +}