summaryrefslogtreecommitdiff
path: root/utils/lui/breakwin.py
diff options
context:
space:
mode:
Diffstat (limited to 'utils/lui/breakwin.py')
-rw-r--r--utils/lui/breakwin.py94
1 files changed, 0 insertions, 94 deletions
diff --git a/utils/lui/breakwin.py b/utils/lui/breakwin.py
deleted file mode 100644
index 7ecb78fd1032..000000000000
--- a/utils/lui/breakwin.py
+++ /dev/null
@@ -1,94 +0,0 @@
-##===-- breakwin.py ------------------------------------------*- Python -*-===##
-##
-# The LLVM Compiler Infrastructure
-##
-# This file is distributed under the University of Illinois Open Source
-# License. See LICENSE.TXT for details.
-##
-##===----------------------------------------------------------------------===##
-
-import cui
-import curses
-import lldb
-import lldbutil
-import re
-
-
-class BreakWin(cui.ListWin):
-
- def __init__(self, driver, x, y, w, h):
- super(BreakWin, self).__init__(x, y, w, h)
- self.driver = driver
- self.update()
- self.showDetails = {}
-
- def handleEvent(self, event):
- if isinstance(event, lldb.SBEvent):
- if lldb.SBBreakpoint.EventIsBreakpointEvent(event):
- self.update()
- if isinstance(event, int):
- if event == ord('d'):
- self.deleteSelected()
- if event == curses.ascii.NL or event == curses.ascii.SP:
- self.toggleSelected()
- elif event == curses.ascii.TAB:
- if self.getSelected() != -1:
- target = self.driver.getTarget()
- if not target.IsValid():
- return
- i = target.GetBreakpointAtIndex(self.getSelected()).id
- self.showDetails[i] = not self.showDetails[i]
- self.update()
- super(BreakWin, self).handleEvent(event)
-
- def toggleSelected(self):
- if self.getSelected() == -1:
- return
- target = self.driver.getTarget()
- if not target.IsValid():
- return
- bp = target.GetBreakpointAtIndex(self.getSelected())
- bp.SetEnabled(not bp.IsEnabled())
-
- def deleteSelected(self):
- if self.getSelected() == -1:
- return
- target = self.driver.getTarget()
- if not target.IsValid():
- return
- bp = target.GetBreakpointAtIndex(self.getSelected())
- target.BreakpointDelete(bp.id)
-
- def update(self):
- target = self.driver.getTarget()
- if not target.IsValid():
- self.win.erase()
- self.win.noutrefresh()
- return
- selected = self.getSelected()
- self.clearItems()
- for i in range(0, target.GetNumBreakpoints()):
- bp = target.GetBreakpointAtIndex(i)
- if bp.IsInternal():
- continue
- text = lldbutil.get_description(bp)
- # FIXME: Use an API for this, not parsing the description.
- match = re.search('SBBreakpoint: id = ([^,]+), (.*)', text)
- try:
- id = match.group(1)
- desc = match.group(2).strip()
- if bp.IsEnabled():
- text = '%s: %s' % (id, desc)
- else:
- text = '%s: (disabled) %s' % (id, desc)
- except ValueError as e:
- # bp unparsable
- pass
-
- if self.showDetails.setdefault(bp.id, False):
- for location in bp:
- desc = lldbutil.get_description(
- location, lldb.eDescriptionLevelFull)
- text += '\n ' + desc
- self.addItem(text)
- self.setSelected(selected)