示例#1
0
    def _setLine(self, line):
        term.moveBack(self._position)
        term.write(' ' * len(self._line))
        term.moveBack(len(self._line))
#        term.eraseLine()
        term.write(''.join(line))
        self._line = line
        self._position = len(line)
示例#2
0
    def _paste(self, text):
        tail = self._line[self._position:]
        for c in text:
            self._line.insert(self._position, c)
            self._position += 1

        term.write(text)
        term.write(''.join(tail))
        term.moveBack(len(tail))
示例#3
0
    def _onBackspace(self):
        if self._position > 0:
            self._position -= 1
            del self._line[self._position]
            term.moveBack(1)

            self._line.append(' ')
            self._showTail()
            del self._line[-1]
示例#4
0
    def _paste(self, text):
        tail = self._line[self._position:]
        for c in text:
            self._line.insert(self._position, c)
            self._position += 1

        term.write(text)
        term.write(''.join(tail))
        term.moveBack(len(tail))
示例#5
0
    def _onBackspace(self):
        if self._position > 0:
            self._position -= 1
            del self._line[self._position]
            term.moveBack(1)

            self._line.append(' ')
            self._showTail()
            del self._line[-1]
示例#6
0
 def _showTail(self, retainPosition=True):
     """
         reprint everything that should be after the cursor
     """
     strLine = self._getLineStr()
     toWrite = strLine[self._position:]
     term.write(toWrite)
     if retainPosition:
         term.moveBack(len(toWrite))
示例#7
0
文件: console_ui.py 项目: RON313/w3af
    def _showTail(self, retainPosition=True):
        """
            reprint everything that should be after the cursor
        """
#        term.savePosition()
        strLine = self._getLineStr()
        toWrite = strLine[self._position:]
        term.write(toWrite)
        if retainPosition:
            term.moveBack(len(toWrite))
示例#8
0
    def _paste(self, text): # 将用户输入的正常字符添加到_line中,并刷新term显示

#        term.savePosition()
        tail = self._line[self._position:] #初始 _line、_position均为 0
        for c in text: #用户每敲击一个字符,添加到_line中
            self._line.insert(self._position, c)
            self._position += 1

        term.write(text)
        term.write(''.join(tail))
#        term.restorePosition()
        term.moveBack(len(tail))
示例#9
0
    def _onBackspace(self):
        if self._position > 0:
            self._position -= 1
            del self._line[self._position]
            term.moveBack(1)
#            lenToErase = len(self._line[:self._position])+1
#            term.write (' ' * lenToErase)
#            term.moveBack (lenToErase)

#            term.eraseLine()
            self._line.append(' ')
            self._showTail()
            del self._line[-1]
示例#10
0
 def _moveDelta(self, steps):
     if steps:
         if steps > 0:
             self._moveForward(steps)
         else:
             term.moveBack(-steps)
示例#11
0
 def _onLeft(self):
     if self._position > 0:
         self._position -= 1
         term.moveBack()
     else:
         term.bell()
示例#12
0
 def _toLineStart(self):
     term.moveBack(self._position)
     self._position = 0