Думаю, вам стоит взглянуть на это:
http://qt-project.org/doc/qt-4.8/tools-customcompleter .html
Я использовал этот пример, чтобы понять CodeCompletion, и я думаю, что это нормально :)
[edit] Qt имеет собственный класс для такая цель называется QCompleter: http://qt-project.org/doc/qt-4.8/qcompleter.html
Это большая, сложная функция. Я бы посмотрел, как это сделано в Qt Creator.