Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1454)

Unified Diff: third_party/twisted_8_1/twisted/manhole/ui/pywidgets.py

Issue 12261012: Remove third_party/twisted_8_1 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/build
Patch Set: Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/twisted_8_1/twisted/manhole/ui/pywidgets.py
diff --git a/third_party/twisted_8_1/twisted/manhole/ui/pywidgets.py b/third_party/twisted_8_1/twisted/manhole/ui/pywidgets.py
deleted file mode 100644
index 5f8a6ab7cf714f78175f68edf20b4656f5ed4058..0000000000000000000000000000000000000000
--- a/third_party/twisted_8_1/twisted/manhole/ui/pywidgets.py
+++ /dev/null
@@ -1,250 +0,0 @@
-
-# System Imports
-import code, string, sys, traceback
-import gtk
-True = 1
-False = 0
-
-# Twisted Imports
-from twisted.spread.ui import gtkutil
-from twisted.python import util
-rcfile = util.sibpath(__file__, 'gtkrc')
-gtk.rc_parse(rcfile)
-
-
-def isCursorOnFirstLine(entry):
- firstnewline = string.find(entry.get_chars(0,-1), '\n')
- if entry.get_point() <= firstnewline or firstnewline == -1:
- return 1
-
-def isCursorOnLastLine(entry):
- if entry.get_point() >= string.rfind(string.rstrip(entry.get_chars(0,-1)), '\n'):
- return 1
-
-
-class InputText(gtk.GtkText):
- linemode = 0
- blockcount = 0
-
- def __init__(self, toplevel=None):
- gtk.GtkText.__init__(self)
- self['name'] = 'Input'
- self.set_editable(gtk.TRUE)
- self.connect("key_press_event", self.processKey)
- #self.set_word_wrap(gtk.TRUE)
-
- self.history = []
- self.histpos = 0
-
- if toplevel:
- self.toplevel = toplevel
-
- def historyUp(self):
- if self.histpos > 0:
- self.histpos = self.histpos - 1
- self.delete_text(0, -1)
- self.insert_defaults(self.history[self.histpos])
- self.set_position(0)
-
- def historyDown(self):
- if self.histpos < len(self.history) - 1:
- self.histpos = self.histpos + 1
- self.delete_text(0, -1)
- self.insert_defaults(self.history[self.histpos])
- elif self.histpos == len(self.history) - 1:
- self.histpos = self.histpos + 1
- self.delete_text(0, -1)
-
- def processKey(self, entry, event):
- # TODO: make key bindings easier to customize.
-
- stopSignal = False
- # ASSUMPTION: Assume Meta == mod4
- isMeta = event.state & gtk.GDK.MOD4_MASK
- if event.keyval == gtk.GDK.Return:
- isShift = event.state & gtk.GDK.SHIFT_MASK
- if isShift:
- self.linemode = True
- self.insert_defaults('\n')
- else:
- stopSignal = True
- text = self.get_chars(0,-1)
- if not text: return
- try:
- if text[0] == '/':
- # It's a local-command, don't evaluate it as
- # Python.
- c = True
- else:
- # This will tell us it's a complete expression.
- c = code.compile_command(text)
- except SyntaxError, e:
- # Ding!
- self.set_positionLineOffset(e.lineno, e.offset)
- print "offset", e.offset
- errmsg = {'traceback': [],
- 'exception': [str(e) + '\n']}
- self.toplevel.output.console([('exception', errmsg)])
- except OverflowError, e:
- e = traceback.format_exception_only(OverflowError, e)
- errmsg = {'traceback': [],
- 'exception': e}
- self.toplevel.output.console([('exception', errmsg)])
- else:
- if c is None:
- self.linemode = True
- stopSignal = False
- else:
- self.sendMessage(entry)
- self.clear()
-
- elif ((event.keyval == gtk.GDK.Up and isCursorOnFirstLine(self))
- or (isMeta and event.string == 'p')):
- self.historyUp()
- stopSignal = True
- elif ((event.keyval == gtk.GDK.Down and isCursorOnLastLine(self))
- or (isMeta and event.string == 'n')):
- self.historyDown()
- stopSignal = True
-
- if stopSignal:
- self.emit_stop_by_name("key_press_event")
- return True
-
- def clear(self):
- self.delete_text(0, -1)
- self.linemode = False
-
- def set_positionLineOffset(self, line, offset):
- text = self.get_chars(0, -1)
- pos = 0
- for l in xrange(line - 1):
- pos = string.index(text, '\n', pos) + 1
- pos = pos + offset - 1
- self.set_position(pos)
-
- def sendMessage(self, unused_data=None):
- text = self.get_chars(0,-1)
- if self.linemode:
- self.blockcount = self.blockcount + 1
- fmt = ">>> # begin %s\n%%s\n#end %s\n" % (
- self.blockcount, self.blockcount)
- else:
- fmt = ">>> %s\n"
- self.history.append(text)
- self.histpos = len(self.history)
- self.toplevel.output.console([['command',fmt % text]])
- self.toplevel.codeInput(text)
-
-
- def readHistoryFile(self, filename=None):
- if filename is None:
- filename = self.historyfile
-
- f = open(filename, 'r', 1)
- self.history.extend(f.readlines())
- f.close()
- self.histpos = len(self.history)
-
- def writeHistoryFile(self, filename=None):
- if filename is None:
- filename = self.historyfile
-
- f = open(filename, 'a', 1)
- f.writelines(self.history)
- f.close()
-
-
-class Interaction(gtk.GtkWindow):
- titleText = "Abstract Python Console"
-
- def __init__(self):
- gtk.GtkWindow.__init__(self, gtk.WINDOW_TOPLEVEL)
- self.set_title(self.titleText)
- self.set_default_size(300, 300)
- self.set_name("Manhole")
-
- vbox = gtk.GtkVBox()
- pane = gtk.GtkVPaned()
-
- self.output = OutputConsole(toplevel=self)
- pane.pack1(gtkutil.scrollify(self.output), gtk.TRUE, gtk.FALSE)
-
- self.input = InputText(toplevel=self)
- pane.pack2(gtkutil.scrollify(self.input), gtk.FALSE, gtk.TRUE)
- vbox.pack_start(pane, 1,1,0)
-
- self.add(vbox)
- self.input.grab_focus()
-
- def codeInput(self, text):
- raise NotImplementedError("Bleh.")
-
-
-class LocalInteraction(Interaction):
- titleText = "Local Python Console"
- def __init__(self):
- Interaction.__init__(self)
- self.globalNS = {}
- self.localNS = {}
- self.filename = "<gtk console>"
-
- def codeInput(self, text):
- from twisted.manhole.service import runInConsole
- val = runInConsole(text, self.output.console,
- self.globalNS, self.localNS, self.filename)
- if val is not None:
- self.localNS["_"] = val
- self.output.console([("result", repr(val) + "\n")])
-
-class OutputConsole(gtk.GtkText):
- maxBufSz = 10000
-
- def __init__(self, toplevel=None):
- gtk.GtkText.__init__(self)
- self['name'] = "Console"
- gtkutil.defocusify(self)
- #self.set_word_wrap(gtk.TRUE)
-
- if toplevel:
- self.toplevel = toplevel
-
- def console(self, message):
- self.set_point(self.get_length())
- self.freeze()
- previous_kind = None
- style = self.get_style()
- style_cache = {}
- try:
- for element in message:
- if element[0] == 'exception':
- s = traceback.format_list(element[1]['traceback'])
- s.extend(element[1]['exception'])
- s = string.join(s, '')
- else:
- s = element[1]
-
- if element[0] != previous_kind:
- style = style_cache.get(element[0], None)
- if style is None:
- gtk.rc_parse_string(
- 'widget \"Manhole.*.Console\" '
- 'style \"Console_%s\"\n'
- % (element[0]))
- self.set_rc_style()
- style_cache[element[0]] = style = self.get_style()
- # XXX: You'd think we'd use style.bg instead of 'None'
- # here, but that doesn't seem to match the color of
- # the backdrop.
- self.insert(style.font, style.fg[gtk.STATE_NORMAL],
- None, s)
- previous_kind = element[0]
- l = self.get_length()
- diff = self.maxBufSz - l
- if diff < 0:
- diff = - diff
- self.delete_text(0,diff)
- finally:
- self.thaw()
- a = self.get_vadjustment()
- a.set_value(a.upper - a.page_size)
« no previous file with comments | « third_party/twisted_8_1/twisted/manhole/ui/gtkrc ('k') | third_party/twisted_8_1/twisted/manhole/ui/spelunk_gnome.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698