com.mxgraph.util.mxDomUtils Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jgraphx Show documentation
Show all versions of jgraphx Show documentation
JGraphX Swing Component - Java Graph Visualization Library
This is a binary & source redistribution of the original, unmodified JGraphX library originating from:
"https://github.com/jgraph/jgraphx/archive/v3.4.1.3.zip".
The purpose of this redistribution is to make the library available to other Maven projects.
/**
* $Id: mxDomUtils.java,v 1.1 2012/01/13 12:26:15 david Exp $
* Copyright (c) 2007-2012, JGraph Ltd
*/
package com.mxgraph.util;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
/**
* Contains various DOM API helper methods for use with mxGraph.
*/
public class mxDomUtils
{
/**
* Returns a new, empty DOM document.
*
* @return Returns a new DOM document.
*/
public static Document createDocument()
{
Document result = null;
try
{
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance();
DocumentBuilder parser = factory.newDocumentBuilder();
result = parser.newDocument();
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
return result;
}
/**
* Creates a new SVG document for the given width and height.
*/
public static Document createSvgDocument(int width, int height)
{
Document document = createDocument();
Element root = document.createElement("svg");
String w = String.valueOf(width);
String h = String.valueOf(height);
root.setAttribute("width", w);
root.setAttribute("height", h);
root.setAttribute("viewBox", "0 0 " + w + " " + h);
root.setAttribute("version", "1.1");
root.setAttribute("xmlns", mxConstants.NS_SVG);
root.setAttribute("xmlns:xlink", mxConstants.NS_XLINK);
document.appendChild(root);
return document;
}
/**
*
*/
public static Document createVmlDocument()
{
Document document = createDocument();
Element root = document.createElement("html");
root.setAttribute("xmlns:v", "urn:schemas-microsoft-com:vml");
root.setAttribute("xmlns:o", "urn:schemas-microsoft-com:office:office");
document.appendChild(root);
Element head = document.createElement("head");
Element style = document.createElement("style");
style.setAttribute("type", "text/css");
style.appendChild(document
.createTextNode(""));
head.appendChild(style);
root.appendChild(head);
Element body = document.createElement("body");
root.appendChild(body);
return document;
}
/**
* Returns a document with a HTML node containing a HEAD and BODY node.
*/
public static Document createHtmlDocument()
{
Document document = createDocument();
Element root = document.createElement("html");
document.appendChild(root);
Element head = document.createElement("head");
root.appendChild(head);
Element body = document.createElement("body");
root.appendChild(body);
return document;
}
}