On Dec 6, 8:52 am, "Edward K. Ream" <[EMAIL PROTECTED]> wrote:
Success! Rev 1294 contains code that completely interfaces the jeditColorizer class with a subclass of QSyntaxHighlighter. All code is in qtGui.py. The code appears to do the minimum possible processing. Coloring is fast and flicker free. This is a big step forward. Here is the checking log: QQQ The QSyntaxHighlighter is now fully hooked up with the jEdit pattern matchers. Some major hacks: - The getPrevState and setCurrentState methods of the jeditColorizer class maintain state that is much richer than a simple integer state. - The setTag method clips a request for colorizing to the line being colored. This is needed because QSyntaxHighlighter.setFormat expects offset to be relative to the single line being colored! QQQ I am proud of this work. Some clever and tricky code is involved, but the jEdit pattern matchers are completely unchanged. Moreover, the QSyntaxHighlighter class replaces all of the old threading and "driver" code. This is a huge simplification. The essential Aha is that we can use the QSyntaxHighlighter state methods to maintain much richer state than a simple integer. Using this more complex state, the code can deduce the global offset of the text being colored. As stated above, another essential workaround is "clipping" coloring requests to the line actually being colored. Much more testing is needed, but the present code looks pretty solid. Please report any problems immediately. Edward P.S. Rev 1294 contains some traces. They will be removed soon. EKR --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "leo-editor" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/leo-editor?hl=en -~----------~----~----~----~------~----~------~--~---
