Проверка всего соединения Qt сигнала / слота - PullRequest
7 голосов
/ 07 декабря 2010

мы сделали много рефакторинга пространства имен. Одна из больших проблем для нас сейчас состоит в том, что мы можем только проверить во время выполнения, если у нас неправильные соединения сигнал / слот.

Существует ли какой-либо внешний инструмент, анализатор кода или метод, с помощью которого мы можем проверить все соединения сигнала / слота одновременно?

Мы думаем о лягушачьем воспалении, но не совсем уверены, поможет ли нам в этом подробном тестировании помяг.

Заранее спасибо, Lars

Ответы [ 2 ]

1 голос
/ 07 декабря 2010

Есть вещь, которая может быть вам полезна: Конан 1.0.0: .Работает только на qt 4.6 и 4.7.См. topic @ qtCentre

Также я могу порекомендовать вам Visual Assist X addIn инструмент для MSVStudio 200x и 2010 от http://www.wholetomato.com/,, который имеет МНОГИЕ решения для рефакторинга,Например: инструмент переименования:


alt text


Если вы установите флажок «Комментарии и строки», он также будет переименовывать этот символ везде в вашем коде, в целом решении.Так что, если у вас были правильные соединения и просто рефакторинг пространств имен и классов, этот инструмент может вам помочь.Я надеюсь на это.

0 голосов
/ 18 января 2011

Конан (sourceforge.net/projects/conanforqt/) не поможет вам решить вашу проблему, поскольку он может только проверять и контролировать существующие соединения во время выполнения.

Насколько я знаю, инструмента нетэто может проверить во время компиляции, если все определения соединения допустимы.Обратите внимание, что это, вероятно, даже неосуществимо, поскольку соединения могут быть построены динамически из локальных переменных, входных аргументов и т. Д.

Единственный вариант, который я вижу, - это найти все места, где установлены соединения.Для каждого соединения проверьте наличие каких-либо очевидных проблем: правильных констант, типов аргументов, а не имен и т. Д. Установите точку останова и начните отладку.Любое неверное соединение будет записано на выход консоли / std: err с помощью Qt.

Удачи

ps: вы упомянули

Также есть проблемы с диалогами модели

Это относится к Конану?Если да, можете ли вы предоставить мне подробную информацию, чтобы я мог обновить Конана?

...