コード例 #1
0
ファイル: qhexedit.py プロジェクト: jose1711/brickv
 def keyPressEvent(self, event) :
     if (event.modifiers() & Qt.ControlModifier) :
         key = event.key()
         if key == Qt.Key_A:
             self.selectAll()
             self.repaint()
         elif key == Qt.Key_Home:
             self.scrollTo(0)
         elif key == Qt.Key_End:
             self.scrollTo(self.dataSize() - self.bytesPerRow())
         elif key == Qt.Key_Down:
             while True:
                 offset = self.verticalScrollBar().value() * self.bytesPerRow()
                 if (self.origin != 0) :
                     if (offset > 0) :
                         offset += self.origin
                         offset -= self.bytesPerRow()
                 if(offset + 1 < self.dataSize()) :
                     self.scrollTo(offset + 1)
                 #return so we don't pass on the key event
                 return
         elif key == Qt.Key_Up:
             while True:
                 offset = self.verticalScrollBar().value() * self.bytesPerRow()
                 if(self.origin != 0):
                     if(offset > 0) :
                         offset += self.origin
                         offset -= self.bytesPerRow()
                 if(offset > 0) :
                     self.scrollTo(offset - 1)
                 #return so we don't pass on the key event
                 return
     QAbstractScrollArea.keyPressEvent(self,event)
     return
コード例 #2
0
ファイル: qhexedit.py プロジェクト: Loremipsum1988/brickv
 def keyPressEvent(self, event) :
     if (event.modifiers() & Qt.ControlModifier) :
         key = event.key()
         if key == Qt.Key_A:
             self.selectAll()
             self.repaint()
         elif key == Qt.Key_Home:
             self.scrollTo(0)
         elif key == Qt.Key_End:
             self.scrollTo(self.dataSize() - self.bytesPerRow())
         elif key == Qt.Key_Down:
             while True:
                 offset = self.verticalScrollBar().value() * self.bytesPerRow()
                 if (self.origin != 0) :
                     if (offset > 0) :
                         offset += self.origin
                         offset -= self.bytesPerRow()
                 if(offset + 1 < self.dataSize()) :
                     self.scrollTo(offset + 1)
                 #return so we don't pass on the key event
                 return
         elif key == Qt.Key_Up:
             while True:
                 offset = self.verticalScrollBar().value() * self.bytesPerRow()
                 if(self.origin != 0):
                     if(offset > 0) :
                         offset += self.origin
                         offset -= self.bytesPerRow()
                 if(offset > 0) :
                     self.scrollTo(offset - 1)
                 #return so we don't pass on the key event
                 return
     QAbstractScrollArea.keyPressEvent(self,event)
     return
コード例 #3
0
ファイル: qhexedit.py プロジェクト: jose1711/brickv
 def setFont(self, f):
     # recalculate all of our metrics/offsets
     fm = QFontMetrics(f)
     self.font_width  = fm.width('X')
     self.font_height = fm.height()
     self.updateScrollbars()
     # TODO: assert that we are using a fixed font & find out if we care?
     QAbstractScrollArea.setFont(self,f)
     return
コード例 #4
0
ファイル: qhexedit.py プロジェクト: Loremipsum1988/brickv
 def setFont(self, f):
     # recalculate all of our metrics/offsets
     fm = QFontMetrics(f)
     self.font_width  = fm.width('X')
     self.font_height = fm.height()
     self.updateScrollbars()
     # TODO: assert that we are using a fixed font & find out if we care?
     QAbstractScrollArea.setFont(self,f)
     return
コード例 #5
0
ファイル: qhexedit.py プロジェクト: jose1711/brickv
 def __init__(self, font, parent = None):
     QAbstractScrollArea.__init__(self, parent)
     self.data = ""
     self.row_width = 16
     self.word_width = 1
     self.address_color = Qt.blue
     self.show_hex = True
     self.show_ascii = True
     self.show_address = True
     self.origin =0
     self.address_offset = 0
     self.selection_start = -1
     self.selection_end = -1
     self.highlighting = self.highlightingNone
     self.even_word = Qt.blue
     self.non_printable_text = Qt.red
     self.unprintable_char = '.'
     self.show_line1 = True
     self.show_line2 = True
     self.show_line3 = False
     self.show_address_separator = True
     self.setFont(font)
     self.setShowAddressSeparator(True)
     return
コード例 #6
0
ファイル: qhexedit.py プロジェクト: Loremipsum1988/brickv
 def __init__(self, font, parent = None):
     QAbstractScrollArea.__init__(self, parent)
     self.data = ""
     self.row_width = 16        
     self.word_width = 1
     self.address_color = Qt.blue
     self.show_hex = True
     self.show_ascii = True
     self.show_address = True
     self.origin =0
     self.address_offset = 0
     self.selection_start = -1
     self.selection_end = -1
     self.highlighting = self.highlightingNone
     self.even_word = Qt.blue
     self.non_printable_text = Qt.red
     self.unprintable_char = '.'
     self.show_line1 = True
     self.show_line2 = True
     self.show_line3 = False
     self.show_address_separator = True
     self.setFont(font)
     self.setShowAddressSeparator(True)
     return