Display QObject class in MSVC debugger



  • I installed the latest Visual Studio Addin: http://qt.nokia.com/downloads/visual-studio-add-in
    It automatically added some type on my autoexp.dat @QString=<d->data,su> size=<d->size,u>
    QByteArray=<d->data,s> size=<d->size,u>
    QPoint =x=<xp> y=<yp>
    QPointF =x=<xp> y=<yp>
    QRect =x1=<x1> y1=<y1> x2=<x2> y2=<y2>
    QRectF =x=<xp> y=<yp> w=<w> h=<h>
    QSize =width=<wd> height=<ht>
    QSizeF =width=<wd> height=<ht>
    QMap<> =size=<d->size>
    QVector<
    > =size=<d->size>
    QHash<> =size=<d->size>
    QVarLengthArray<
    > =size=<s> data=<ptr>@ However I found this page from the addin source code: http://qt.gitorious.org/qt-labs/vstools/trees/master/tools/Qt4EEAddin
    It add some types: @QUrl=$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QUrl@28)
    QEvent=$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QEvent@28)
    QList<*>=$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QList@28)
    QVariant=$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QVariant@28)
    QObject=$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QObject@28)
    QLibrary=$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QLibrary@28)
    QDir=$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QDir@28)
    QFileInfo=$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QFileInfo@28)
    QFont=$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QFont@28)
    QUrlInfo =$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QUrlInfo@28)
    QDomNode =$ADDIN(Qt4EEAddin.dll,_Qt4EEAddIn_QDomNode@28)@

    Unfortunately this does not work. I don't know where to find this Qt4EEAddin.dll, it is not in the addin installer.
    Is there any way to display QObject class (and info for other Qt types) within MSVC?

    Thanks a lot.

    PS: I also found a bunch of webpages mentioning this code that does not work either: @QObject = class=<staticMetaObject.d.stringdata,s>@



  • Nobody knows?


  • Moderators

    Which version of visual studio are you using?

    I have installed the latest version of vsaddin. However, I cannot confirm your entries
    [quote author="neFAST" date="1309897324"]... on my autoexp.dat @QString=<d->data,su> size=<d->size,u>
    QByteArray=<d->data,s> size=<d->size,u>
    QPoint =x=<xp> y=<yp>
    QPointF =x=<xp> y=<yp>
    QRect =x1=<x1> y1=<y1> x2=<x2> y2=<y2>
    QRectF =x=<xp> y=<yp> w=<w> h=<h>
    QSize =width=<wd> height=<ht>
    QSizeF =width=<wd> height=<ht>
    QMap<> =size=<d->size>
    QVector<
    > =size=<d->size>
    QHash<> =size=<d->size>
    QVarLengthArray<
    > =size=<s> data=<ptr>@
    [/quote]

    The formatting is completely different but also the contents of the entries are longer.
    I did not find Qt4EEAddin.dll on my system (win7 64 bit).

    However, I have the entry "QUrl" in my autoexp.dat. But as with the others, it looks different to what you are listing.



  • I use MSVC 2005. Can you post your autoexp.dat?
    Did you follow this link: http://qt.gitorious.org/qt-labs/vstools/trees/master/tools/Qt4EEAddin


  • Moderators

    That is a part of it:
    @
    [Visualizer]
    ;QT_DEBUG_START (Qt Visual Studio Add-in v1.1.9)
    ; Nokia Qt 4.x visualizers -----------------------------------------[ start ]--
    ;------------------------------------------------------------------------------
    ; Feel free to modify these visualizers to suit yours needs! But please let us
    ; know about the changes you make, so we continuously improve the visualizers.

    QString{
    preview ([$e.d->data,su])
    stringview ([$e.d->data,sub])
    children
    (
    #(
    d: $c.d,
    [size]: $c.d->size,
    [referenced]: $c.d->ref._q_value
    )
    )
    }

    QByteArray{
    preview ([$e.d->data,s])
    stringview ([$e.d->data,sb])
    children
    (
    #(
    d: $c.d,
    [size]: $c.d->size,
    [referenced]: $c.d->ref._q_value
    )
    )

    }

    QUrl{
    preview
    (
    #if ($e.d.stateFlags == 0) (
    $e.d
    ) #else (
    #( $e.d->scheme, $e.d->host, $e.d->path )
    )
    )
    children
    (
    #(
    scheme: $c.d->scheme,
    host: $c.d->host,
    path: $c.d->path,
    username: $c.d->userName,
    password: $c.d->password,
    encodedOriginal: $c.d->encodedOriginal,
    query: $c.d->query,
    fragment: $c.d->fragment
    )
    )
    }
    @

    I was not completely right about my post. Further up I can find also part of what you have posted. However, since QString is not there it did show me only the other section.

    @
    [AutoExpand]
    ;QT_DEBUG_START (Qt Visual Studio Add-in v1.1.9)

    QByteArray=<d->data,s> size=<d->size,u>
    QPoint =x=<xp> y=<yp>
    QPointF =x=<xp> y=<yp>
    QRect =x1=<x1> y1=<y1> x2=<x2> y2=<y2>
    QRectF =x=<xp> y=<yp> w=<w> h=<h>
    QSize =width=<wd> height=<ht>
    QSizeF =width=<wd> height=<ht>
    QHash<> =size=<d->size>
    QVarLengthArray<
    > =size=<s> data=<ptr>

    ;QT_DEBUG_END
    .
    .
    .
    @

    I have simply installed vsaddin as to be dowloaded from devnet. So I did not follow gitoruos link.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.