Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/util/odf/draw.py
diff options
context:
space:
mode:
Diffstat (limited to 'util/odf/draw.py')
-rw-r--r--util/odf/draw.py182
1 files changed, 182 insertions, 0 deletions
diff --git a/util/odf/draw.py b/util/odf/draw.py
new file mode 100644
index 0000000..7692e5a
--- /dev/null
+++ b/util/odf/draw.py
@@ -0,0 +1,182 @@
+# -*- coding: utf-8 -*-
+# Copyright (C) 2006-2007 Søren Roug, European Environment Agency
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+#
+# Contributor(s):
+#
+
+from namespaces import DRAWNS, STYLENS, PRESENTATIONNS
+from element import Element
+
+def StyleRefElement(stylename=None, classnames=None, **args):
+ qattrs = {}
+ if stylename is not None:
+ f = stylename.getAttrNS(STYLENS, 'family')
+ if f == 'graphic':
+ qattrs[(DRAWNS,u'style-name')]= stylename
+ elif f == 'presentation':
+ qattrs[(PRESENTATIONNS,u'style-name')]= stylename
+ else:
+ raise ValueError, "Style's family must be either 'graphic' or 'presentation'"
+ if classnames is not None:
+ f = classnames[0].getAttrNS(STYLENS, 'family')
+ if f == 'graphic':
+ qattrs[(DRAWNS,u'class-names')]= classnames
+ elif f == 'presentation':
+ qattrs[(PRESENTATIONNS,u'class-names')]= classnames
+ else:
+ raise ValueError, "Style's family must be either 'graphic' or 'presentation'"
+ return Element(qattributes=qattrs, **args)
+
+def DrawElement(name=None, **args):
+ e = Element(name=name, **args)
+ if not args.has_key('displayname'):
+ e.setAttrNS(DRAWNS,'display-name', name)
+ return e
+
+# Autogenerated
+def A(**args):
+ return Element(qname = (DRAWNS,'a'), **args)
+
+def Applet(**args):
+ return Element(qname = (DRAWNS,'applet'), **args)
+
+def AreaCircle(**args):
+ return Element(qname = (DRAWNS,'area-circle'), **args)
+
+def AreaPolygon(**args):
+ return Element(qname = (DRAWNS,'area-polygon'), **args)
+
+def AreaRectangle(**args):
+ return Element(qname = (DRAWNS,'area-rectangle'), **args)
+
+def Caption(**args):
+ return StyleRefElement(qname = (DRAWNS,'caption'), **args)
+
+def Circle(**args):
+ return StyleRefElement(qname = (DRAWNS,'circle'), **args)
+
+def Connector(**args):
+ return StyleRefElement(qname = (DRAWNS,'connector'), **args)
+
+def ContourPath(**args):
+ return Element(qname = (DRAWNS,'contour-path'), **args)
+
+def ContourPolygon(**args):
+ return Element(qname = (DRAWNS,'contour-polygon'), **args)
+
+def Control(**args):
+ return StyleRefElement(qname = (DRAWNS,'control'), **args)
+
+def CustomShape(**args):
+ return StyleRefElement(qname = (DRAWNS,'custom-shape'), **args)
+
+def Ellipse(**args):
+ return StyleRefElement(qname = (DRAWNS,'ellipse'), **args)
+
+def EnhancedGeometry(**args):
+ return Element(qname = (DRAWNS,'enhanced-geometry'), **args)
+
+def Equation(**args):
+ return Element(qname = (DRAWNS,'equation'), **args)
+
+def FillImage(**args):
+ return DrawElement(qname = (DRAWNS,'fill-image'), **args)
+
+def FloatingFrame(**args):
+ return Element(qname = (DRAWNS,'floating-frame'), **args)
+
+def Frame(**args):
+ return StyleRefElement(qname = (DRAWNS,'frame'), **args)
+
+def G(**args):
+ return StyleRefElement(qname = (DRAWNS,'g'), **args)
+
+def GluePoint(**args):
+ return Element(qname = (DRAWNS,'glue-point'), **args)
+
+def Gradient(**args):
+ return DrawElement(qname = (DRAWNS,'gradient'), **args)
+
+def Handle(**args):
+ return Element(qname = (DRAWNS,'handle'), **args)
+
+def Hatch(**args):
+ return DrawElement(qname = (DRAWNS,'hatch'), **args)
+
+def Image(**args):
+ return Element(qname = (DRAWNS,'image'), **args)
+
+def ImageMap(**args):
+ return Element(qname = (DRAWNS,'image-map'), **args)
+
+def Layer(**args):
+ return Element(qname = (DRAWNS,'layer'), **args)
+
+def LayerSet(**args):
+ return Element(qname = (DRAWNS,'layer-set'), **args)
+
+def Line(**args):
+ return StyleRefElement(qname = (DRAWNS,'line'), **args)
+
+def Marker(**args):
+ return DrawElement(qname = (DRAWNS,'marker'), **args)
+
+def Measure(**args):
+ return StyleRefElement(qname = (DRAWNS,'measure'), **args)
+
+def Object(**args):
+ return Element(qname = (DRAWNS,'object'), **args)
+
+def ObjectOle(**args):
+ return Element(qname = (DRAWNS,'object-ole'), **args)
+
+def Opacity(**args):
+ return DrawElement(qname = (DRAWNS,'opacity'), **args)
+
+def Page(**args):
+ return Element(qname = (DRAWNS,'page'), **args)
+
+def PageThumbnail(**args):
+ return StyleRefElement(qname = (DRAWNS,'page-thumbnail'), **args)
+
+def Param(**args):
+ return Element(qname = (DRAWNS,'param'), **args)
+
+def Path(**args):
+ return StyleRefElement(qname = (DRAWNS,'path'), **args)
+
+def Plugin(**args):
+ return Element(qname = (DRAWNS,'plugin'), **args)
+
+def Polygon(**args):
+ return StyleRefElement(qname = (DRAWNS,'polygon'), **args)
+
+def Polyline(**args):
+ return StyleRefElement(qname = (DRAWNS,'polyline'), **args)
+
+def Rect(**args):
+ return StyleRefElement(qname = (DRAWNS,'rect'), **args)
+
+def RegularPolygon(**args):
+ return StyleRefElement(qname = (DRAWNS,'regular-polygon'), **args)
+
+def StrokeDash(**args):
+ return DrawElement(qname = (DRAWNS,'stroke-dash'), **args)
+
+def TextBox(**args):
+ return Element(qname = (DRAWNS,'text-box'), **args)
+