Page 2 of 3 FirstFirst 123 LastLast
Results 21 to 40 of 56

Thread: Handcoder's IDE for Qt

  1. #21
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Interface to Doxygen

    Many programmers have discovered the value of documenting C++ source code using Doxygen-style tags. In fact, I believe that the creator of Doxygen was trying to replicate the Qt documentation system (but somebody can correct me on this). Anyway, I don't use Doxytagging as much as I should for the following reasons 1. I'm lazy 2. It takes some effort to manage the Doxyfile (ensuring that it includes all of my project files, but not any extras) 3. it takes some effort to generate the docs and view them and keep track of them.

    To remedy this, I have added an option in HiQt which allows user to
    (a) One-click generation of Doxygen documentation on the currently active project
    (b) Viewing that documentation within the IDE (like the Qt reference doc browser)
    (c) Press F1 on a keyword to go to the Qt docs, Press F2 on a (project) keyword to go to the project docs
    (d) Browse the docs, and then navigate back to the corresponding source code

    (Remember, Handcoder's IDE never writes anything to your project directory...)

    Now I will use Doxygen tags a lot more -- because I can see the benefits instantly... and I hope you will try it too -- (especially if you use windows because it will work out of the box with 4.3.0, Linux should work too I am guessing)

    http://www.qt-apps.org/content/show....?content=62825


  2. #22
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Code completion is now much faster (and better) than QDevelop and (for practical purposes) comparable to Edyuk.

    There is also an interface to QObjectBrowser... so you can view a tree of all of your objects/signals/slots/properties during run time! (Use the "build with runtime utilities" command")

    Also, as I mentioned earlier, there is built-in Qt docs plus project-specific docs using Doxygen.

    Think about it... there must be something good about the IDE I am using if I can add these features so quickly... If you like it, post positive feedback, because that will tell others to try it if on the fence.

    Also, if you like the approach, consider joining the dev team. Hoping to generate interest so the project can take on a life apart from me... then we all benefit.

    http://www.qt-apps.org/content/show....?content=62825

  3. #23
    Join Date
    Jan 2006
    Location
    Kerala
    Posts
    371
    Thanks
    76
    Thanked 37 Times in 32 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    First of all,
    Kudos to you for the great work.
    I was able to install the application flawlessly :-)
    Compiling and debugging is great

    The explorer, pro file handling is really harmless !!

    Bugs:
    But the code completion has some bugs.

    You type in QLa(Ctrl + Space )
    You will not file QLabel ??

    or

    Type QMou( Ctrl + Space ) you will get the QMouseEvent highlighted.

    Delete the "ou" of the QMou and type ai for the QMainWindow
    Again ?? you won't find QMainWindow in the completion list
    We can't solve problems by using the same kind of thinking we used when we created them

  4. #24
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Quote Originally Posted by sunil.thaha View Post
    First of all,
    Kudos to you for the great work.
    I was able to install the application flawlessly :-)
    Compiling and debugging is great

    The explorer, pro file handling is really harmless !!
    Thanks for those words... it'll keep getting better. Have you discovered that you can double click on a keyword to get a list of tags for that word... then double click a list item to navigate... I find this very useful, and soon there will be a "back" button.

    Quote Originally Posted by sunil.thaha View Post
    Bugs:
    But the code completion has some bugs.

    You type in QLa(Ctrl + Space )
    You will not file QLabel ??

    or

    Type QMou( Ctrl + Space ) you will get the QMouseEvent highlighted.

    Delete the "ou" of the QMou and type ai for the QMainWindow
    Again ?? you won't find QMainWindow in the completion list

    Check to see that you have #include <QLabel> and <QMainWindow> at the top of your file (wait a few seconds until the change is detected). If you already had those things (or if that doesn't fix it), let me know what system you are on and I'll try to reproduce. This completion works fine for me on Windows...

    Incidentally, there are other issues with code completion that I am aware of and will be addressing, (such as local variable declarations with comma-separated variables).

    Cheers

  5. #25
    Join Date
    Jan 2006
    Location
    Kerala
    Posts
    371
    Thanks
    76
    Thanked 37 Times in 32 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    Have you discovered that you can double click on a keyword to get a list of tags for that word... then double click a list item to navigate... I find this very useful, and soon there will be a "back" button.
    Keyword : You mean if, else, do, while ... ?

    Well I tried double clicking on everyword i could find but did not find anything happening . Can you make it clearer :-)

    Check to see that you have #include <QLabel> and <QMainWindow> at the top of your file (wait a few seconds until the change is detected). If you already had those things (or if that doesn't fix it), let me know what system you are on and I'll try to reproduce. This completion works fine for me on Windows...
    That worked !! Maybe, I hadn't given enough time.
    But ... Even without including the header files, wouldn't you like to have the completion working? Anyway a work around for that is to include QtGui and later comment it out
    We can't solve problems by using the same kind of thinking we used when we created them

  6. #26
    Join Date
    Jan 2006
    Posts
    368
    Thanks
    14
    Thanked 18 Times in 17 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    I downloaded and compiled 0.1.14, and found some problems.

    * I see no icons. Only the close button.
    * The doxygen documentation gets borked, since it uses an external css. Which QTextBrowser does not load. There are work arounds, I hope you find them.
    * I am not sure why, but the doxygen documentation I see on the Project Reference tab is not the same I get when I run the doxygen command.
    * Some sub projects are not loaded.

    I used qmdilib for my test, it's available on qt-apps.org.

    Looks sweet, great ideas. Implementation is kinda flawky, but this will get fixed in a version or two.

  7. #27
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Quote Originally Posted by sunil.thaha View Post
    Keyword : You mean if, else, do, while ... ?

    Well I tried double clicking on everyword i could find but did not find anything happening . Can you make it clearer :-)
    Sorry about that, I didn't mean "keyword" I meant "tagword"... try double clicking on a word that is the name of one of your project's classes or functions... this should bring up the navigation window with a list showing where that tagword was declared and/or defined. The tag words should actually be highlighted bold in your code.

    Quote Originally Posted by sunil.thaha View Post
    That worked !! Maybe, I hadn't given enough time.
    But ... Even without including the header files, wouldn't you like to have the completion working? Anyway a work around for that is to include QtGui and later comment it out
    Now that you mention it, globals, such as "QMainWindow", should appear always, regardless of #includes, -- can you double check that -- perhaps you just need to wait until tags are done being updated - see status bar. It's the non-globals, e.g. QMainWindow::addToolBar() that depend on the #includes.

    I can certainly add an option to complete everything regardless of whether or not it's visible from the current file... that would actually be easier than current functionality. However, I like using it the way it is because it reminds you to add the #includes when the code completion is not working... also it's better in the sense that code-completion will always work the same for the given file, independent of which other files have been opened.

  8. #28
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Quote Originally Posted by elcuco View Post
    I downloaded and compiled 0.1.14, and found some problems.

    * I see no icons. Only the close button.
    I had this problem also on Linux. To fix this go to src and run rcc on HiQt.qrc to re-generate qrc_HiQt.cpp -- not sure why it's not getting auto-generated during make. I'll look into it.

    Quote Originally Posted by elcuco View Post
    * The doxygen documentation gets borked, since it uses an external css. Which QTextBrowser does not load. There are work arounds, I hope you find them.
    I'll look into it.

    Quote Originally Posted by elcuco View Post
    * I am not sure why, but the doxygen documentation I see on the Project Reference tab is not the same I get when I run the doxygen command.
    I use the Doxyfile in the src/templates/Doxyfile, which you can configure to your needs. I suppose I should give the user the option to select an alternate Doxyfile. Just be aware that HiQt will modify certain key Doxy-parameters, such as INPUT.

    Quote Originally Posted by elcuco View Post
    * Some sub projects are not loaded.
    I used qmdilib for my test, it's available on qt-apps.org.
    I'll take a look.

    Quote Originally Posted by elcuco View Post
    Looks sweet, great ideas. Implementation is kinda flawky, but this will get fixed in a version or two.
    Thanks, and hang in there. Your feedback is invaluable

  9. #29
    Join Date
    Jan 2006
    Posts
    368
    Thanks
    14
    Thanked 18 Times in 17 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    A few other questiosn/suggestions:
    * Another tip for doxygen: If in the root directory of the project, there is a "Doxyfile", use that instead of your template.
    * The dependency viewer - make it a dock window. This way I can put it on the GUI and still look at the source. (great idea BTW)
    * The help dock is way to wide. It takes up too much space, cannot br shrinked, and it steals space from the code editor.
    * The code editor has way to much "bold". Just a rant, feel free to ignore it.
    * I don't understand what does the "build with runtime tools" does.
    * I would like to have an option to modify the tab width (you set it to 2, and I like it 8 or 4)
    * Incremental search is a must. Poping dialogs just distracts me from the text. Move on, it's 2007, not 1997.
    * dot was not found on my system by default. Just writing "dot" was enough for me to get it working.
    * I would like to have the option to export the dependency graphs as images (to send people email with text like this "look, you project sucks bug time, look at this").

  10. #30
    Join Date
    Jan 2006
    Location
    Kerala
    Posts
    371
    Thanks
    76
    Thanked 37 Times in 32 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    I can certainly add an option to complete everything regardless of whether or not it's visible from the current file... that would actually be easier than current functionality. However, I like using it the way it is because it reminds you to add the #includes when the code completion is not working... also it's better in the sense that code-completion will always work the same for the given file, independent of which other files have been opened.
    Well I use the classes and compile the project, When i get errors I include the headers.
    If I use HiQt I will see if the methods get auto-completed if not, I have to include them...
    That is fine. I don't know how others use it. :-)


    Feature Requests:

    1. Code folding and unfolding
    2. Line numbers & Goto Line number
    3. When the default intend mode is using space; lets say 4 spaces, then when I am at 4th column; pressing backspace needs to delete the 4 spaces and get me back to the first column. this is exactly what Kdevelop does and is quite intuitive

    Exactly like what kdevelop does.
    We can't solve problems by using the same kind of thinking we used when we created them

  11. #31
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Thanks, great suggestions.... Regarding "build with runtime tools", that allows you to see a tree of objects/widgets in your project via QObjectBrowser. I forgot to check for this, but to use it, you must set as your active project a project of type "template=app".

    Quote Originally Posted by elcuco View Post
    * dot was not found on my system by default. Just writing "dot" was enough for me to get it working.
    Do you mean that "dot" WAS found on your system, or not?


    Quote Originally Posted by elcuco View Post
    A few other questiosn/suggestions:
    * Another tip for doxygen: If in the root directory of the project, there is a "Doxyfile", use that instead of your template.
    * The dependency viewer - make it a dock window. This way I can put it on the GUI and still look at the source. (great idea BTW)
    * The help dock is way to wide. It takes up too much space, cannot br shrinked, and it steals space from the code editor.
    * The code editor has way to much "bold". Just a rant, feel free to ignore it.
    * I don't understand what does the "build with runtime tools" does.
    * I would like to have an option to modify the tab width (you set it to 2, and I like it 8 or 4)
    * Incremental search is a must. Poping dialogs just distracts me from the text. Move on, it's 2007, not 1997.
    * dot was not found on my system by default. Just writing "dot" was enough for me to get it working.
    * I would like to have the option to export the dependency graphs as images (to send people email with text like this "look, you project sucks bug time, look at this").

  12. #32
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    You can track the progress on the suggestions for HiQt here:

    http://www.math.upenn.edu/~jfm/todo.html
    (temporary site)

    Send more feedback/requests, and I'll add to the list.

  13. #33
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Pleased to announce:
    HiQt Version 0.1.15.c

    Lots of new features and improvements.
    One in particular is improved code navigation... a very useful "back" button, you'll have to see it in action.

  14. #34
    Join Date
    Mar 2007
    Posts
    58
    Thanked 2 Times in 2 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    I know that HiQt requires Qt 4.3 to run, but can it be used to develop applications that use a lower version of Qt?

    I have installed Qt 4.2.3, but I copied the Qt 4.3 dlls to the HiQt bin directory, so HiQt runs. Now I set the paths to Qt 4.2.3 directories (qmake, designer...) but the class browser doesn't work, even the path to ctags is correct.

    I see this warning in console:
    Unable to open documentation file: "C:\Qt\4.3.0\doc/html/qt.dcf"
    Error reading documentation file: "C:\Qt\4.3.0\doc/html/qt.dcf"
    QTextBrowser: Cannot open 'index.html' for reading
    QTextBrowser: No document for index.html
    I don't see any option to set the documentation path.

  15. #35
    Join Date
    Jan 2006
    Posts
    368
    Thanks
    14
    Thanked 18 Times in 17 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    That is because the GUI uses the path of the library to determinate the location of the docs. Funny, I never tought of your problem.

  16. #36
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Quote Originally Posted by Pepe View Post
    I know that HiQt requires Qt 4.3 to run, but can it be used to develop applications that use a lower version of Qt?

    I have installed Qt 4.2.3, but I copied the Qt 4.3 dlls to the HiQt bin directory, so HiQt runs. Now I set the paths to Qt 4.2.3 directories (qmake, designer...) but the class browser doesn't work, even the path to ctags is correct.

    I see this warning in console:


    I don't see any option to set the documentation path.
    Thanks Pepe I'll fix that problem.

  17. #37
    Join Date
    Jan 2006
    Posts
    368
    Thanks
    14
    Thanked 18 Times in 17 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    Another configuration path, with default to the path of the Qt librarry running...?

  18. #38
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Edit: see next post*

    Pepe, I reproduced your problem on my system, and I will fix it as elcuco suggests. However I am confused when you say "the class browser doesn't work"... it seems to work fine on my system even when using 4.2.1. Could you explain... do the classes just not appear? ... and are you using HiQt 0.1.15.c?


    Quote Originally Posted by Pepe View Post
    I know that HiQt requires Qt 4.3 to run, but can it be used to develop applications that use a lower version of Qt?

    I have installed Qt 4.2.3, but I copied the Qt 4.3 dlls to the HiQt bin directory, so HiQt runs. Now I set the paths to Qt 4.2.3 directories (qmake, designer...) but the class browser doesn't work, even the path to ctags is correct.

    I see this warning in console:


    I don't see any option to set the documentation path.
    Last edited by magland; 4th August 2007 at 20:29.

  19. #39
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Pepe, disregard my last reply... I was able to reproduce the problem with Qt 4.2.x... no class/file browser... . This has to do with the "qmake-HiQt" component. The problem is that qmake-HiQt.exe is seeing your 4.3.0 .dlls as well...

    I'll have this fixed in the next release (2-3 days).

    Thanks for bringing it to my attention!

  20. #40
    Join Date
    Feb 2007
    Location
    Philadelphia, USA
    Posts
    255
    Thanks
    43
    Thanked 21 Times in 21 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11

    Default Re: Handcoder's IDE for Qt

    Okay Pepe, here's the workaround for now:

    Simply copy your mkspecs and doc directories from c:\Qt\4.2.3 to directories called c:\Qt\4.3.0\mkspecs and c:\Qt\4.3.0\doc. This should do the trick and work perfectly.

    Let me know...

    Quote Originally Posted by Pepe View Post
    I know that HiQt requires Qt 4.3 to run, but can it be used to develop applications that use a lower version of Qt?

    I have installed Qt 4.2.3, but I copied the Qt 4.3 dlls to the HiQt bin directory, so HiQt runs. Now I set the paths to Qt 4.2.3 directories (qmake, designer...) but the class browser doesn't work, even the path to ctags is correct.

    I see this warning in console:


    I don't see any option to set the documentation path.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide.