[Qt-creator] Qt Creator Community
Victor Sardina
Victor.Sardina at noaa.gov
Wed Jul 28 09:42:57 CEST 2010
Kevin:
No problem, I will send you the binary Mac file to your email address
shortly, together with the specs file as well. You can work out the
installation path inside the "Qt Creator.app" bundle by looking at the
project file I sent in a previous email: not really complicated. The
installation path ends up as: "Qt Creator.app/Contents/PlugIns/Kofee".
Greetings,
Victor
On 7/27/10 5:34 PM, Kevin Tanguy wrote:
> On Tue, 27 Jul 2010 16:51:54 -1000, Victor Sardina
> <Victor.Sardina at noaa.gov> wrote:
>> Kevin:
>>
>> Thank you for the hint above the usage of the plugin: it works as
>> intended, but only on the header files, and if you place the cursor on a
>> function or object declaration.
>>
>
> Yes, I know it's a huge limitation. It actually works on local
> variables in source files but that's pretty much useless.
>
>> As a rule I place the documentation of the code not in the header file,
>> but inside the implementation file. I don't know if there exist some
>> sort of convention about it based on some better supported rationale. I
>> simply place comments in the implementation files, among other reasons,
>> to keep the header files as clean and lean as possible, as anyone using
>> a class can get an idea of the general layout of the class that way.
>> This of course turns into a matter of personal preference.
>>
>
> Lots of people do so and I understand the reason(s) but I don't for
> other reasons, so I indeed started with making it working with header
> files (and that's where the code of Nicolas from his cpphelper plugin
> was really helpful, hence the credit I gave him).
> I wanted to implement it for source files as well as you can see in the
> options page but the tick box really isn't used.
> I liked that idea as well:
> http://lists.trolltech.com/pipermail/qt-creator/2010-February/006060.html
>
>> You might call the code "ugly", but it works, does what you intended it
>> to do, and can get much better with some work. Nobody writes a stellar
>> application as a first crack at it, unless they have done something
>> similar in the past, which makes it a de facto non-first-crack anyway...
>>
>
> Indeed, and with the beautiful documentation we'll get, there will be
> no more excuses ;)
> Didn't check for a while the progress on this side but I will.
>
>> The doxygen plugin actually works as you explained: as long as you place
>> the cursor on a function declaration et al. inside the header file. I
>> obviously needed some rest and some mojitos to clear my mind...;-)
>>
>> I haven't tried the latest changes you made to the code base. Did you
>> update the svn repo as yet?
>>
>
> Didn't commit anything yet and didn't make any change to the code
> anyway.
> But will have to for the 2.1 branch as it doesn't compile against
> current git.
>
>> I think that having a menu option to generate all the doxygen tags at
>> once turns quite useful. Of course, for that you have to write the
>> function to actually parse the whole header/source file first.
>>
>
> The main problem I see would be to detect and leave unchanged or update
> existing documentation blocks, not a really simple task.
>
> I guess we can call that a (partially) solved issue.
> A Mac binary would be sweet as a direct download if you can send it to
> me :)
>
> Cheers,
> Kevin
>
>> I haven't actually perused the sources as yet, but I started to get
>> curious... :-)
>>
>> Greetings,
>> Victor
>>
>>
>>
>> On 7/27/10 9:57 AM, Kevin Tanguy wrote:
>>> On Mon, 26 Jul 2010 20:37:43 -1000, Victor Sardina
>>> <Victor.Sardina at noaa.gov> wrote:
>>>> Hi Kevin:
>>>>
>>>> My apologies for not replying a little bit sooner.
>>>>
>>>> You have a point: I did missed your email inside the specs file: they
>>>> call that either "tunel vision", or "need of a break"...:-(
>>>>
>>>
>>> No problem², we should all rest on a beach drinking a mojito instead of
>>> working anyway.
>>>
>>>> To get the plugin to compile and show in QtCreator I did the following:
>>>>
>>>> 1) Modified the project (.pro) file to reflect the location of both, the
>>>> QtCreator sources and the compiled application itself, as you explain at
>>>> the Trac website. As the name of the compiled application contains a
>>>> space, you have to escape it inside the .pro file, namely "Qt\\
>>>> Creator.app/Contents/..." (see the modified project file enclosed below).
>>>>
>>>> 2) Modified the destination directory (DESTDIR) as well to define where
>>>> to place the compiled plugin inside the application bundle
>>>>
>>>> 3) Replaced all instances of "1.3.84" by "2.0.80" inside the
>>>> Doxygen.pluginspec file. Before doing this QtCreator fails to load the
>>>> plugin and lists all dependencies on 1.3.84 versions as missing (obvious).
>>>>
>>>> As this turns rather convoluted to explain, I take the liberty of
>>>> encloning the modified project file at the end of this email. Of course,
>>>> somebody else's settings should reflect the location of their source
>>>> files and the like, but this provides at least a template of the needed
>>>> changes to at least reach the "loaded plugin" stage on a Mac. With the
>>>> settings below the plugin files get correctly copied into the "Qt
>>>> Creator.app" application bundle without a glitch.
>>>>
>>>
>>> Thanks for that, will fix the pro file to handle macx and x11
>>> differently instead of just a generic unix handling.
>>>
>>>> I have a custom installation of Qt-4.7.0 (git branch 4.7) at
>>>> /usr/local/Trolltech/Qt-4.7.0, and QtCreator compiled from the git
>>>> repository sources (branch 2.0) as of two or three days ago.
>>>>
>>>
>>> Just did the same, Qt git branch 4.7 from today and QtCreator git
>>> branch 2.0 from today (2.0.81) and here it works as expected with rev22
>>> :-/
>>> (One of these times you hope something doesn't work for you as well...
>>> awkward feeling)
>>> So I don't see the problem as of now, it puzzles me.
>>>
>>>> I did try to run the plugin on the header files themselves, but to no
>>>> avail: it doesn't appear to have any effect whatsoever. I guess I still
>>>> missed something, but that probably reaches my incompetence level...
>>>>
>>>
>>> Is the cursor on a class/method/function/var/enum definition when you
>>> run the "create documentation" action?
>>> I wanted to add a method to document everything in a file but didn't do
>>> it yet.
>>>
>>>> I hope this helps to get the plugin working for as many people as
>>>> possible in the future. I know it has a tag of "low priority", but I
>>>> assure you that having to generate all the doxygen tags et al by hand
>>>> turns into a royal pain in your backside after a while. I also believe
>>>> that you have done a pretty good job already. I think you should give a
>>>> little more credit yourself: I surely appreciate it.
>>>>
>>>
>>> No, really, the code is ugly, but thanks anyway.
>>>
>>>> Your plugin, together with the astyle plugin turn into two of the things
>>>> I would really like to get working across the board, meaning on Mac,
>>>> Linux, and Mac (I end up having to work with all of them NIXes sooner or
>>>> later). Now that I have a working Mac again (an upgrade to Snow Leopard
>>>> a while back left in pretty bad shape (no backup of the backup)), I
>>>> would like to try to get these tools working.
>>>>
>>>
>>> I'll try to find and idea tonight about that and/or send you a modified
>>> source file to help debugging that.
>>>
>>> Sorry not to be of much help yet.
>>>
>>> Kevin
>>>
>>>> Thank you for your reply,
>>>> Victor
>>>>
>>>> #==Beginning of project file modified for Mac=========================
>>>> TEMPLATE = lib
>>>> TARGET = Doxygen
>>>> DEFINES += DOXYGEN_LIBRARY
>>>> PROVIDER = Kofee
>>>>
>>>> # Define QTC_SOURCE_DIR to the location of Qt Creator sources (i.e:
>>>> ~/dev/qtcreator/qt-creator-src/)
>>>> unix:QTC_SOURCE_DIR = /Users/vs/Downloads/Qt/qt-creator/
>>>> win32:QTC_SOURCE_DIR = C:/Qt/qt-creator-20100421/
>>>> IDE_SOURCE_TREE = $$QTC_SOURCE_DIR
>>>>
>>>> # Define QTC_BUILD_DIR to the location of Qt Creator build dir for the
>>>> plugin (i.e ~/dev/qtcreator-doxygen/)
>>>> unix:QTC_BUILD_DIR = /Users/vs/Downloads/Qt/qtcreatorbuild/
>>>> win32:QTC_BUILD_DIR = C:/Qt/qtcreator-doxygen/
>>>> IDE_BUILD_TREE = $$QTC_BUILD_DIR
>>>>
>>>> # Define DESTDIR to the local location of the installation of Qt creator
>>>> (if local user)
>>>> # or the system location if building as root
>>>> DESTDIR = /Users/vs/Downloads/Qt/qtcreatorbuild/bin/Qt\\
>>>> Creator.app/Contents/PlugIns/$$(PROVIDER)
>>>> unix:LIBS += -L/Users/vs/Downloads/Qt/qtcreatorbuild/src/libs \
>>>> -L/Users/vs/Downloads/Qt/qtcreatorbuild/bin/Qt\\
>>>> Creator.app/Contents/PlugIns/Nokia/ \
>>>> -L/usr/local/Trolltech/Qt-4.7.0/lib
>>>> win32:LIBS += -LC:/Qt/qt-20100421/lib/ \
>>>> -LC:/Qt/qtcreator-build-20100421/lib/qtcreator/plugins/Nokia/ \
>>>> -LC:/Qt/qtcreator-build-20100421/lib/qtcreator/
>>>> include( $$IDE_SOURCE_TREE/src/qtcreatorplugin.pri )
>>>> include( $$IDE_SOURCE_TREE/src/plugins/coreplugin/coreplugin.pri )
>>>> include( $$IDE_SOURCE_TREE/src/plugins/texteditor/texteditor.pri )
>>>> include( $$IDE_SOURCE_TREE/src/plugins/cppeditor/cppeditor.pri )
>>>> HEADERS += doxygenplugin.h \
>>>> doxygen_global.h \
>>>> doxygenconstants.h \
>>>> doxygen.h \
>>>> doxygensettings.h \
>>>> doxygensettingswidget.h \
>>>> doxygensettingsstruct.h
>>>> SOURCES += doxygenplugin.cpp \
>>>> doxygen.cpp \
>>>> doxygensettings.cpp \
>>>> doxygensettingswidget.cpp \
>>>> doxygensettingsstruct.cpp
>>>> FORMS += doxygensettingswidget.ui
>>>> OTHER_FILES += Doxygen.pluginspec
>>>> INCLUDEPATH += $$QTC_SOURCE_DIR/src \
>>>> $$QTC_SOURCE_DIR/src/plugins \
>>>> $$QTC_SOURCE_DIR/src/libs \
>>>> $$QTC_SOURCE_DIR/src/libs/cplusplus \
>>>> $$QTC_SOURCE_DIR/src/libs/extensionsystem \
>>>> $$QTC_SOURCE_DIR/src/libs/utils \
>>>> $$QTC_SOURCE_DIR/src/shared \
>>>> $$QTC_SOURCE_DIR/src/shared/cplusplus
>>>>
>>>> message(QTC_SOURCE_DIR = $$QTC_SOURCE_DIR)
>>>> message(IDE_SOURCE_TREE = $$IDE_SOURCE_TREE)
>>>> message(QTC_BUILD_DIR = $$QTC_BUILD_DIR)
>>>> message(IDE_BUILD_TREE = $$IDE_BUILD_TREE)
>>>> message(DESTDIR = $$DESTDIR)
>>>> message(Good luck with make... :-D)
>>>> #==End of project file============================================
>>>>
>>>> On 7/26/10 6:05 PM, Kevin Tanguy wrote:
>>>>> On Mon, 26 Jul 2010 17:18:53 -1000, Victor Sardina
>>>>> <Victor.Sardina at noaa.gov> wrote:
>>>>>> Nicolas:
>>>>>>
>>>>>> I have some feedback on the Doxygen plugin, but couldn't find any way to
>>>>>> contact Kofee. The project website at Trac doesn't list any obvious way
>>>>>> to send him feed back. I send this using your email as starter simply
>>>>>> because you mention Kofee in it, and also because Kofee mentions you as
>>>>>> the "instigator" in the projects website :-).
>>>>>>
>>>>>
>>>>> Hi Victor,
>>>>>
>>>>> Now you know how to contact me by email (or fill a bug).
>>>>>
>>>>>> I tried the Doxygen plugin on a Mac, after going around a couple of
>>>>>> wrinkles with some setttings. For example, the plugin specs file lists
>>>>>> dependencies on the 1.3 versions of several modules, when it should list
>>>>>> "2.0.80". QtCreator finally recognized the plugin and gave it the green
>>>>>> light (literally), and I can even use the Doxygen tab in the
>>>>>> Preferences. I can even launch Doxygen from the added menu option after
>>>>>> setting the path to the doxygen executable.
>>>>>>
>>>>>
>>>>> You are the first person I'm aware of who compiled it for Mac, I'd like
>>>>> to know what you've done to make it happen as I can't test it myself and
>>>>> have very few time to bother people with that (btw my email is in the
>>>>> pluginspec file). A diff or a simple listing of the modifications you've
>>>>> done would be great.
>>>>>
>>>>>> Unfortunately, I cannot generated the Doxygen backbone tags using the
>>>>>> plugin, and maybe making the plugin actually work requires some extra
>>>>>> modifications other than replacement of 1.3 by 2.0.80 in the specs file?
>>>>>>
>>>>>
>>>>> Are you trying to generate the tags in a header or a source file?
>>>>> (hint: it's not supposed to work in a source file at the moment)
>>>>> I'll try tomorrow to compile it with a recent Qt and creator from git
>>>>> and see how it goes here. I should find where the problem lies quickly.
>>>>>
>>>>>> In other words, all works but the main thing that the plugin should do.
>>>>>>
>>>>>
>>>>> Unfortunately it's quite a quick hack that I've done in a hurry and
>>>>> shared in the hope it would be useful to others and could be enhanced
>>>>> this way but real life really doesn't make it easy to maintain it as
>>>>> qtcreator development itself is on steroids.
>>>>>
>>>>> Cheers
>>>>>
>>>>> Kevin
>>>>>
>>>>>> Victor
>>>>>>
>>>>>> On 3/7/10 7:59 AM, Nicolas Arnaud-Cormos wrote:
>>>>>>> On Friday 05 March 2010 12:10:41 Peter Kümmel wrote:
>>>>>>>> As Qt Creater beeing 'only' a plugin-collection,
>>>>>>>> is there a overview where all Nokia and 3rd-party
>>>>>>>> plugins are listet and described?
>>>>>>>
>>>>>>> Not that I know. I know only 3 3rd party plugins:
>>>>>>> I know at least 3 3rd party plugins:
>>>>>>> * CppSupport, plugin for C++ Class View, from visual fc:
>>>>>>> http://code.google.com/p/visualfc/downloads/list
>>>>>>> * Doxygen, add doxygen tags, from kofee:
>>>>>>> http://dev.kofee.org/QtCreator-Doxygen/
>>>>>>> * CppHelper (add create definition action) and Macro (create/save/execute
>>>>>>> macros), from me:
>>>>>>> http://gitorious.org/creator-plugins
>>>>>>>
>>>>>>> That would be nice to have them somewhere.
>>>>>>>
>>>>>>>
>>>>>>>> Also, is there a wiki which could be used as entry point
>>>>>>>> for starting developing plugins, with documentations,
>>>>>>>> example plugins, links to other howtos, and so on?
>>>>>>>
>>>>>>> Not that I know, you already have some documentation in the code you can
>>>>>>> generate (doxygen, maybe qdoc3).
>>>>>>> There's an excellent document written by Prashanth:
>>>>>>> http://prashanthudupa.livejournal.com/44069.html
>>>>>>> It gives you all you the information you need to start your own plugin. Also I
>>>>>>> had some troubles to create a plugin that build outside the qt creator src
>>>>>>> directory, you can get mine and copy whatever you need.
>>>>>>>
>>>>>>>
>>>>>>>> When the intension of Qt Creator is to also create a
>>>>>>>> community around the creater like there is around Eclipse
>>>>>>>> then Nokia should spend some resources to evangelize
>>>>>>>> and support such a community.
>>>>>>>
>>>>>>> I would love too, but don't forget that Qt Creator is young (a little more
>>>>>>> than one year now). For the moment, they are trying to make it awesome for Qt
>>>>>>> development, and working hard on the Qt Quick integration and also
>>>>>>> maemo/symbian/whatever new plateform needed by Nokia.
>>>>>>> At least that's what I'm understanding from an outside pov.
>>>>>>>
>>>>>>> But maybe it's at the community to create something, and not the other way
>>>>>>> around. I don't usually go visit Qt Centre, but they already have a wiki and a
>>>>>>> sub-forum for Qt tools (including Qt Creator).
>>>>>>> At Qtfr.org, we already have a sub-forum specific to Qt Creator.
>>>>>>>
>>>>>>> As a plugin developer, I would also love to see a "plugin builder" tools for
>>>>>>> Qt SDK. It's hard to create binaries for our plugins for a specific SDK (I
>>>>>>> don't have mac, I don't use any SDK, and on Windows you need VS2008 I think).
>>>>>>>
>>>>>>> Hope they'll have some time after Qt 4.7 to work on the community building ;)
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Nicolas
>>>>>>>
>>>>>>>> (No, the gitorious wiki is not enough.)
>>>>>>>>
>>>>>>>> Peter
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Qt-creator mailing list
>>>>>>>> Qt-creator at trolltech.com
>>>>>>>> http://lists.trolltech.com/mailman/listinfo/qt-creator
>>>>>>>>
>>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Qt-creator mailing list
>>>>> Qt-creator at trolltech.com
>>>>> http://lists.trolltech.com/mailman/listinfo/qt-creator
>>>
>>> _______________________________________________
>>> Qt-creator mailing list
>>> Qt-creator at trolltech.com
>>> http://lists.trolltech.com/mailman/listinfo/qt-creator
>
> _______________________________________________
> Qt-creator mailing list
> Qt-creator at trolltech.com
> http://lists.trolltech.com/mailman/listinfo/qt-creator
-------------- next part --------------
A non-text attachment was scrubbed...
Name: victor_sardina.vcf
Type: text/x-vcard
Size: 577 bytes
Desc: not available
Url : http://lists.qt-project.org/pipermail/qt-creator-old/attachments/20100727/b842128a/attachment.vcf
More information about the Qt-creator-old
mailing list