summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2002-09-03 01:48:24 +0000
committerTim Potter <tpot@samba.org>2002-09-03 01:48:24 +0000
commit53495225a5e5392a98f1fbc252f0fddf48f0dd77 (patch)
tree9c30a5f78497b1d2d7d542b9d67652a0dde32c58
parent8e56ded996d3b083a1a12ce81dbf0ace4bbc6381 (diff)
downloadsamba-53495225a5e5392a98f1fbc252f0fddf48f0dd77.tar.gz
samba-53495225a5e5392a98f1fbc252f0fddf48f0dd77.tar.bz2
samba-53495225a5e5392a98f1fbc252f0fddf48f0dd77.zip
A printerdata browser I whipped up in about 5 minutes. (-:
Usage: gprinterdata //win2kdc1/fooprinter (This used to be commit a3e52367c961070ce80ac3d4bba763ad9ec1007c)
-rwxr-xr-xsource3/python/gprinterdata44
1 files changed, 44 insertions, 0 deletions
diff --git a/source3/python/gprinterdata b/source3/python/gprinterdata
new file mode 100755
index 0000000000..cd04e6f5a1
--- /dev/null
+++ b/source3/python/gprinterdata
@@ -0,0 +1,44 @@
+#!/usr/bin/env python
+
+import sys
+from gtkdictbrowser import GtkDictBrowser
+import gtk
+import spoolss
+import string
+
+class printerdata:
+ def __init__(self, host):
+ host = string.replace(host, "/", "\\")
+ self.hnd = spoolss.openprinter(host)
+
+ def keys(self):
+ return self.hnd.enumprinterdata().keys()
+
+ def __getitem__(self, key):
+ return self.hnd.getprinterdata(key)['data']
+
+# Initialise printerdata dictionary
+
+if len(sys.argv) != 2:
+ print "Usage: gprinterdata <printer>"
+ print "where <printer> is a UNC printer name."
+ sys.exit(1)
+
+try:
+ t = printerdata(sys.argv[1])
+except:
+ print "gprinterdata: error opening %s" % sys.argv[1]
+ sys.exit(1)
+
+# Create interface
+
+db = GtkDictBrowser(t)
+db.build_ui('gprinterdata')
+
+# Override Python's handling of ctrl-c so we can break out of the
+# gui from the command line.
+
+import signal
+signal.signal(signal.SIGINT, signal.SIG_DFL)
+
+gtk.mainloop()