]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/wx/tools/genaxmodule.py
Lindsay Mathieson's newest wxActiveX class has been wrapped into a new
[wxWidgets.git] / wxPython / wx / tools / genaxmodule.py
diff --git a/wxPython/wx/tools/genaxmodule.py b/wxPython/wx/tools/genaxmodule.py
new file mode 100644 (file)
index 0000000..c178aab
--- /dev/null
@@ -0,0 +1,43 @@
+"""
+
+
+When this script is run it will create a .py module (output to the
+current directory) containing a class derived from
+wx.activex.ActiveXWindow for the progID or CLSID given on the command
+line.  By default the class name will be used as the module name as
+well, but this is just because I am lazy, not trying to define a
+standard or anything.  Feel free to rename the module, I do.
+
+Usage:
+
+    python genax.py CLSID|progID className
+    
+"""
+
+import wx
+import wx.activex
+import sys
+
+
+def main(args):
+    if len(args) < 3:
+        print __doc__
+        sys.exit(1)
+
+    # unfortunatly we need to make an app, frame and an instance of
+    # the ActiceX control in order to get the TypeInfo about it...
+    app = wx.PySimpleApp()
+    f = wx.Frame(None, -1, "")
+    clsid = wx.activex.CLSID(args[1])
+    axw = wx.activex.ActiveXWindow(f, clsid)
+
+    wx.activex.GernerateAXModule(axw, args[2], '.', verbose=True)
+
+    # Cleanup
+    f.Close()
+    app.MainLoop()
+
+    
+if __name__ == "__main__":
+    main(sys.argv)
+