2010-12-07 2 views
7

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

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

Мы думаем о froglogic squish, но мы не совсем уверены, если хлюпок может помочь нам в этом подробном тестировании.

Спасибо заранее, Lars

ответ

1

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

Кроме того, я могу порекомендовать вам Visual Assist X инструмента для надстройки MSVStudio 20ого и 2010 от http://www.wholetomato.com/, который имеет много решений для рефакторинга. Например .: переименование инструмент:


alt text


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

+1

Спасибо за совет, но конан только не то, что нам нужно. IT отображает только подключение существующих виджета/класса. Также возникают проблемы с модельными диалогами. – Lars 2010-12-08 08:53:05

0

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

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

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

Успехов

p.s .: Вы упомянули

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

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

+1

Извините за опечатку, но у меня проблема с диалогами _modal_. Если модальный диалог находится в фокусе, я не могу ничего сделать в виджетах конана. – Lars 2011-01-18 13:02:36