コード例 #1
0
    def __init__(self, *args, **kwargs):
        """
        Initialize default settings.
        """

        super(SyntaxHighlighter, self).__init__(*args, **kwargs)
        self.tri_single = (QtCore.QRegExp("'''"), 1, self.STYLES['string2'])
        self.tri_double = (QtCore.QRegExp('"""'), 2, self.STYLES['string2'])

        rules = []
        rules += [(r'\b%s\b' % w, 0, self.STYLES['keyword'])
                  for w in SyntaxHighlighter.KEYWORDS]
        rules += [(r'%s' % o, 0, self.STYLES['operator'])
                  for o in SyntaxHighlighter.OPERATORS]
        rules += [(r'%s' % b, 0, self.STYLES['brace'])
                  for b in SyntaxHighlighter.BRACES]

        rules += [
            (r'\bself\b', 0, self.STYLES['self']),
            (r'"[^"\\]*(\\.[^"\\]*)*"', 0, self.STYLES['string']),
            (r"'[^'\\]*(\\.[^'\\]*)*'", 0, self.STYLES['string']),
            (r'\bdef\b\s*(\w+)', 1, self.STYLES['defclass']),
            (r'\bclass\b\s*(\w+)', 1, self.STYLES['defclass']),
            (r'#[^\n]*', 0, self.STYLES['comment']),
            (r'\b[+-]?[0-9]+[lL]?\b', 0, self.STYLES['numbers']),
            (r'\b[+-]?0[xX][0-9A-Fa-f]+[lL]?\b', 0, self.STYLES['numbers']),
            (r'\b[+-]?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?\b', 0,
             self.STYLES['numbers']),
        ]

        self.rules = [(QtCore.QRegExp(pat), index, fmt)
                      for (pat, index, fmt) in rules]
コード例 #2
0
    def create_ui(self):

        self.customize_ui()

        self.controls_actions()

        # limiting available search characters
        self.setValidator(Qt4Gui.QRegExpValidator(QtCore.QRegExp('\w+'), self))
        self.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.setFrame(False)