summaryrefslogtreecommitdiff
path: root/source3/python/gprinterdata
diff options
context:
space:
mode:
Diffstat (limited to 'source3/python/gprinterdata')
-rwxr-xr-xsource3/python/gprinterdata39
1 files changed, 39 insertions, 0 deletions
diff --git a/source3/python/gprinterdata b/source3/python/gprinterdata
new file mode 100755
index 0000000000..cd062076c0
--- /dev/null
+++ b/source3/python/gprinterdata
@@ -0,0 +1,39 @@
+#!/usr/bin/env python
+
+import sys
+from gtkdictbrowser import GtkDictBrowser, hex_string
+import gtk
+from samba import spoolss
+import string
+import printerdata
+
+# Initialise printerdata dictionary
+
+if len(sys.argv) < 2 or len(sys.argv) > 3:
+ print "Usage: gprinterdata [--ex] <printer>"
+ print "where <printer> is a UNC printer name."
+ sys.exit(1)
+
+try:
+ host = string.replace(sys.argv[len(sys.argv) - 1], "/", "\\")
+ if sys.argv[1] == "--ex":
+ t = printerdata.printerdata_ex(host)
+ else:
+ t = printerdata.printerdata(host)
+except:
+ print "gprinterdata: error opening %s" % sys.argv[len(sys.argv) - 1]
+ sys.exit(1)
+
+# Create interface
+
+db = GtkDictBrowser(t)
+db.register_get_value_text_fn("", hex_string)
+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()