xref: /trunk/test/odf-validate/fixtures/ole-text/make.py (revision 0e16a31d78a652c56c5c0fc79c752f48b9048df9)
1*0e16a31dSJim Jagielski# usage: runpy.sh fixtures/ole-text/make.py <port> <out.odg>   (office saving ODF 1.2 Extended)
2*0e16a31dSJim Jagielski# Draw page with an OLE object without text and one with text.
3*0e16a31dSJim Jagielskiimport sys, uno
4*0e16a31dSJim Jagielskifrom unohelp import connect, desktop, pv
5*0e16a31dSJim Jagielskifrom com.sun.star.awt import Size, Point
6*0e16a31dSJim Jagielski
7*0e16a31dSJim Jagielskiport, out = int(sys.argv[1]), sys.argv[2]
8*0e16a31dSJim Jagielskid = desktop(connect(port))
9*0e16a31dSJim Jagielskidoc = d.loadComponentFromURL("private:factory/sdraw", "_blank", 0, (pv("Hidden", True),))
10*0e16a31dSJim Jagielskipage = doc.DrawPages.getByIndex(0)
11*0e16a31dSJim Jagielskifor i, text in enumerate(("", "OLE label")):
12*0e16a31dSJim Jagielski    s = doc.createInstance("com.sun.star.drawing.OLE2Shape")
13*0e16a31dSJim Jagielski    s.CLSID = "078B7ABA-54FC-457F-8551-6147e776a997"
14*0e16a31dSJim Jagielski    page.add(s)
15*0e16a31dSJim Jagielski    s.Position = Point(2000 + i * 8000, 2000); s.Size = Size(5000, 3000)
16*0e16a31dSJim Jagielski    if text:
17*0e16a31dSJim Jagielski        s.String = text
18*0e16a31dSJim Jagielskidoc.storeToURL(uno.systemPathToFileUrl(out), (pv("FilterName", "draw8"),))
19*0e16a31dSJim Jagielskidoc.close(True)
20