KDE-Apps.org Applications for the KDE-Desktop 
 GTK-Apps.org Applications using the GTK Toolkit 
 GnomeFiles.org Applications for GNOME 
 MeeGo-Central.org Applications for MeeGo 
 CLI-Apps.org Command Line Applications 
 Qt-Apps.org Free Qt Applications 
 Qt-Prop.org Proprietary Qt Applications 
 Maemo-Apps.org Applications for the Maemo Plattform 
 Java-Apps.org Free Java Applications 
 eyeOS-Apps.org Free eyeOS Applications 
 Wine-Apps.org Wine Applications 
 Server-Apps.org Server Applications 
 apps.ownCloud.com ownCloud Applications 
 KDE-Look.org Artwork for the KDE-Desktop 
 GNOME-Look.org Artwork for the GNOME-Desktop 
 Xfce-Look.org Artwork for the Xfce-Desktop 
 Box-Look.org Artwork for your Windowmanager 
 E17-Stuff.org Artwork for Enlightenment 
 Beryl-Themes.org Artwork for the Beryl Windowmanager 
 Compiz-Themes.org Artwork for the Compiz Windowmanager 
 EDE-Look.org Themes for your EDE Desktop 
 Debian-Art.org Stuff for Debian 
 Gentoo-Art.org Artwork for Gentoo Linux 
 SUSE-Art.org Artwork for openSUSE 
 Ubuntu-Art.org Artwork for Ubuntu 
 Kubuntu-Art.org Artwork for Kubuntu 
 LinuxMint-Art.org Artwork for Linux Mint 
 Arch-Stuff.org Art And Stuff for Arch Linux 
 Frugalware-Art.org Themes for Frugalware 
 Fedora-Art.org Artwork for Fedora Linux 
 Mandriva-Art.org Artwork for Mandriva Linux 
 KDE-Files.org Files for KDE Applications 
 OpenTemplate.org Documents for OpenOffice.org
 GIMPStuff.org Files for GIMP
 InkscapeStuff.org Files for Inkscape
 ScribusStuff.org Files for Scribus
 BlenderStuff.org Textures and Objects for Blender
 VLC-Addons.org Themes and Extensions for VLC
 KDE-Help.org Support for your KDE Desktop 
 GNOME-Help.org Support for your GNOME Desktop 
 Xfce-Help.org Support for your Xfce Desktop 
openDesktop.orgopenDesktop.org:   Applications   Artwork   Linux Distributions   Documents    Linux42.org    OpenSkillz.com   


- Content .- Fans  .- Knowledge Base  . 

Conan - Connection analyzer for Qt


Qt Development Tool

Score 54%
Imtech ICT TS
Conan - Connection analyzer for Qt

Conan - Connection analyzer for Qt

Conan - Connection analyzer for Qt

Homepage:  Link
Minimum required   Qt 4.x
Downloads:  739
Submitted:  Jul 12 2009
Updated:  Mar 31 2011


Conan 1.0.2 - Connection analyzer for Qt 4.6.0 - Qt 4.7.2

Conan is a C++ library that provides run-time introspection of object
hierarchies, object inheritance, signal/slot connections, and signal

Conan contains a single widget (conan::ConanWidget) that provides the
following functionality:
-object hierarchies can be added, discovered, browsed and exported to XML
-signals/slots, including active connections, can be examined
-any signal/slot connection can be disconnected
-duplicate connections can be found
-signal emissions can be monitored and logged
See /doc/html/index.html for detailed information.

Conan has been used to identify multiple duplicate connections in the
source code of Qt!

Contact - edekoning@gmail.com
Website - http://sourceforge.net/projects/conanforqt
License - GPL - source code -> see ./GPL.txt
CCL - icons -> see ./icons/CCL.txt

One note about the GPL license. You can use Conan in your proprietary
program for analysis purposes. Just make sure that you do not distribute
Conan as part of your proprietary product. I generally use Conan only in
my debug builds, which are for internal use only. See
http://www.gnu.org/licenses/gpl-faq.html for commonly-asked questions
about the GPL.


Conan 1.0.2 release

Feature additions:
-Extended the ConanWidget API to allow for better integration of Conan into other libraries
--Get/remove all root objects
--Set resize mode for all columns
--All log messages created by signal spies are emitted by the SignalSpyLog signal

-Added support for Qt 4.7.2

Known issues:
-The list of signals for the current selected object only shows 'out' connections where the
current object is the 'sender'. Suppose the following connection exists:
objectA::signalA() --> objectB::signalB(). This connection will be shown when objectA is
selected, but not when objectB is selected.
-Since Qt 4.6.0, it is required to lock a specific mutex before accessing the connection data
of an object. Unfortunately, this mutex is only accessible from within qobject.cpp. This
means that conan::ConanWidget is not thread safe. To be fair, this is not such a big deal
during normal use. Connections are usually made during or after Object construction, and for
the large part this is done on the gui thread (where Conan lives).

Source(Conan sources)
MS Windows(Conan demo application)
Send to a friend
Other  Apps  from gnik
Report inappropriate content


 what it allows to do?

 by tankaa on: Jul 16 2009
Score 50%

Screenshot and short description aren't too informative.
Could you please clarify some points?
If it is a library, how to use it? And screenshot of what is it then?
Thank you.

Reply to this


 Re: what it allows to do?

 by gnik on: Jul 16 2009
Score 50%
Imtech ICT TS

Its a C++ library that contains a single QWidget, the ConanWidget. The screenshot shows how this widget looks. How the ConanWidget can be used in your own Qt application and how to operate the ConanWidget are described in detail in the included readme and html documentation.
Conan provides visual studio 2008 / qt creator / qmake project files.

The ConanWidget provides the following functionality:
- Allows you to browse through the parent-child relationships of QObject hierarchies. These hierarchies can be discovered automatically or added programatically. You can also search the hierarchies by class name, object name, or object address.
- It shows inheritance information (how its derived from QObject) for the selected QObject, f.e. selecting a QSortFilterProxyModel would show the following list: QSortFilterProxyModel -> QAbstractProxyModel -> QAbstractItemModel -> QObject
- It shows all signal and all slots for the selected object. For each signal/slot it lists:
--- Access specifier (public, protected, private)
--- Method signature
--- Name of the class that declares the signal/slot
--- Lists all connections for each signal/slot:
------ Receiver signal/slot signature
------ Receiver class name and object name
------ Receiver object address
------ Connection type (auto, direct, queued, blocking queued)
- It can hide signals/slots without connections
- It can hide inherited signals/slots
- Duplicate connections can be found and highlighted. A duplicate connection occurs when the same signal has been connected multiple times to the same slot.
- For any selected signal a spy can be defined. Think of this as a dynamic QSignalSpy. Each time a signal that is being spied is emitted, information about the emission is logged using qDebug. What is logged and how it is logged can be configured, but the following is supported: timestamp, object name, class name, object address, signal signature, emit count (since being spied), string representation of signal arguments (only if they can be converted to a string through QVariant)

The project website http://sourceforge.net/projects/conanforqt/ also contains a win32 Conan demo application that demonstrates the capabilities of Conan.

I hope this clarifies things.

Reply to this


 Compile error

 by maxvanceffer on: Aug 17 2009
Score 50%

I have win32 and qt creater 1.2.0
and i have several errors when compiling it. Where i can send them ?

Reply to this


 Re: Compile error

 by gnik on: Aug 18 2009
Score 50%
Imtech ICT TS

In the README.txt you'll find contact information. Start the email subject with conan. Make sure you add the following information:
-OS (service packs)
-Qt version (version number)
-Did you use the version delivered with qt creator or did you download and build qt yourself?
-Detailed build output
-Steps taken to build Conan

Reply to this


 don't work with Qt 4.6

 by Adequat on: Nov 7 2009
Score 50%

Apparently, because of some internal changes to 4.6...

Reply to this


 Re: don't work with Qt 4.6

 by gnik on: Nov 20 2009
Score 50%
Imtech ICT TS

Yes I'm aware of the problem. Parts of the private Qt-api that Conan uses (mainly qobject.cpp) have changed. Although I'm rather busy at the moment with work and various training courses, my goal is to have an updated version released in the first half of December.
This version will support Qt 4.6 (duh), have various export to XML options and will be able to show class info data (see Q_CLASSINFO).

Reply to this


 Re: don't work with Qt 4.6

 by gnik on: Jun 17 2010
Score 50%
Imtech ICT TS

I finally found the time to release an update with Qt 4.6.* support. I know its not exactly december anymore, but better late then never.

Reply to this


 qt 4.8

 by qtkusi on: Oct 10 2012
Score 50%

I'd like to use your tool with Qt 4.8. I removed the version check, but it doesn't seem to work with Qt 4.8. Do you find any time to provide a version for Qt 4.8 ? Thanks!

Reply to this

Add commentBack

 Who we are
More about us
Frequently Asked Questions
Updates on identi.ca
Updates on Twitter
Content RSS   
Events RSS   

Add App
Public API
About Qt-Apps.org
Legal Notice
Spreadshirt Shop
CafePress Shop
Sponsor us
Report Abuse

Copyright 2006-2016 Qt-Apps.org Team  
All rights reserved. Qt-Apps.org is not liable for any content or goods on this site.
All contributors are responsible for the lawfulness of their uploads.
Qt is a trademarks of Nokia