Столкнулся с проблемой. нужно сделать анализ кода и определить, находиться ли курсор между { }.
Если находиться, то выполнить определенное действия. Конечно можно смотреть в цикле до и после курсора,
но мне кажется, что это не оптимально и будет тормозить Gui. Класс который отвечает за текстовый редактор наследуется от QPlainTextEdit.
Моё мнение, что если предполагается что-то навороченое, то лучше сразу задуматься о переносе всего анализа в отдельный поток, а то будет как в MSVisualStudio2010 (с другими кроме 6.0 не сталкивался), где при определённой сложности кода, начинает тормозить даже простое перемещение курсора, не говоря уже о редактировании. создаётся впечатление, что весь анализ работает в том же потоке что и GUI (если не так, то я вообще не знаю что это такое).
Чтобы в фоновом потоке не начинать анализ всего текста при каждой модификации, можно перепосылать все события относящиеся к редактированию текста из основного потока в этот фоновый.