Page 1 of 3 123 LastLast
Results 1 to 20 of 56

Thread: Handcoder's IDE for Qt

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

    Default Handcoder's IDE for Qt

    Handcoder's IDE for Qt (HiQt)

    Are you like me in that you like to manage all the files in your project, but want the conveniences of an IDE? If so, please read on...
    Inspired by QDevelop and Visual Studio, and motivated by the need to create a stable Qt IDE for Windows, HiQt is already a fully functional development environment. It features:

    * Class and file browser with perfect project file parsing, because it actually uses qmake to extract the project data - open source is beautiful!
    * Code completion - fast, robust, and quite pleasant - completes local project code as well as Qt keywords (Qt source is efficiently parsed as needed), and can handle concatenations such as "QString::number(123).length()".
    * Interface to designer - preview your forms, or edit them in designer with just a single click of a button. HiQt will automatically detect changes to forms (or any project files) made outside of the IDE.
    * Syntax highlighting - very nice, with some extra very useful tag highlighting that you'll come to depend on
    * Navigation - (1) Easy switch between header/source files... (2) double click any word to get a list of where that function or type was defined/implemented... (3) navigation window listing all the tags in the current file or current class - double click tags for easy navigation
    * Help - launch assistant or use the online documentation browser - press F1 on a keyword to get help
    * Stable - Designed with avoiding crashes in mind. It's very stable on my machine, I'm eager to get feedback
    * Others - other nice friendly (non-intrusive) features that you will discover

    (there is no debugger at this point -- that's where I'll need help because I never use gdb.)
    (also the class browser does not yet distinguish between private/protected/public methods)

    The most important aspect of HiQt is that it DOES NOT MANAGE YOUR PROJECT -- it just shows you your project, and helps you in every non-intrusive way that it can. For example, if you want to add a file to your project, HiQt will absolutely not do it for you. But it's very easy (if you know what you are doing). Just (a) double click the project from the project manager (that will bring up the .pro text file) (b) manually add your file to the HEADERS, SOURCES, or whatever (c) upon saving the text file, HiQt will automatically detect the change, and update the file/class browsers accordingly. Now was that so hard?... a small inconvenience to pay for complete control over your project!

    HiQt also stands for Harmless IDE for Qt, because it will never write anything to your files. In fact, it won't even write any additional files to your project directory. Open your projects without fear!

    Well you get the idea. Attached is the source as well as Windows binary. Enjoy, and please send your feedback....

    For windows binary, run bin\HiQt.exe -- it was compiled using MinGW and Qt 4.3.0
    I think it works on Linux, but only tested a couple times.

    HiQt-source.zip
    HiQt-win-binary.zip
    Attached Images Attached Images

  2. #2
    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

    1) To make it work on Linux I had to modify the src/src.pro file.
    Qt Code:
    1. TEMPLATE = app
    2. CONFIG += uitools qt console release assistant
    3. QT+=xml # <- this line
    4. DESTDIR = ../bin
    5. TARGET = HiQt
    To copy to clipboard, switch view to plain text mode 

    2) Documentation is not working. See this patch:
    Qt Code:
    1. elcuco@pinky:~/src/qt4/HiQt/src$ diff -u HiQtDocBrowser.h{.orig,}
    2. --- HiQtDocBrowser.h.orig 2007-07-21 17:38:11.000000000 +0300
    3. +++ HiQtDocBrowser.h 2007-07-21 17:46:22.000000000 +0300
    4. @@ -3,6 +3,7 @@
    5.  
    6. #include "ui_HiQtDocBrowser.h"
    7. #include <QUrl>
    8. +#include <QLibraryInfo>
    9. #include <QMainWindow>
    10. #include <QToolBar>
    11. #include <QFileInfo>
    12. @@ -15,7 +16,9 @@
    13. HiQtDocBrowser(QWidget *parent=0) : QWidget(parent) {
    14. ui.setupUi(this);
    15.  
    16. - ui.browser->setSearchPaths(QStringList(QString(getenv("QTDIR"))+"/doc/html"));
    17. + l << QLibraryInfo::location(QLibraryInfo::DocumentationPath) + "/html";
    18. + ui.browser->setSearchPaths(l);
    19.  
    20. connect(ui.previous_button,SIGNAL(clicked()),ui.browser,SLOT(backward()));
    21. connect(ui.next_button,SIGNAL(clicked()),ui.browser,SLOT(forward()));
    22. @@ -26,7 +29,7 @@
    23. ui.browser->setSource(QUrl("index.html"));
    24. }
    25. void open_keyword(QString word) {
    26. - if (QFileInfo(QString(getenv("QTDIR"))+"/doc/html/"+word.toLower()+".html").exists())
    27. + if (QFileInfo( QLibraryInfo::location(QLibraryInfo::DocumentationPath) + "/" + word.toLower()+".html").exists())
    28. ui.browser->setSource(QUrl(word.toLower()+".html"));
    29. }
    30. public slots:
    To copy to clipboard, switch view to plain text mode 

    3) When I loaded a project based on subdirs, I get this message saying that my projects has no targets, and thus I cannot execute it.

    4) Look into Issue 155 of QDevelop, it affects your application as well. http://code.google.com/p/qdevelop/issues/detail?id=155

    A few suggestions:
    5) Get rid of all the margins in the GUI. Qt4 uses a HUGE margin for layout, it wastes a lot of space in your application (which is very concentrated anyway). Remove the frames from the editors as well. No need for 3-5 margins. Qt4's problem I know, but you have to deal with it.

    6) You use 2 tab bars. Bar usability Idea. Wastes a lot of space. Search for a better solution.

    7) Open UI's in an external designer. I don't care that they are XML. I don't want to see the XML.

    8) The source zip file - put a version on it. Also on the directory inside it.
    Attached Images Attached Images

  3. The following user says thank you to elcuco for this useful post:

    magland (21st July 2007)

  4. #3
    Join Date
    Jan 2006
    Location
    travelling
    Posts
    1,116
    Thanks
    8
    Thanked 127 Times in 121 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    **** qmake-HiQt ****
    Error opening file for reading
    **** qmake-HiQt ****
    Error opening file for reading
    **** qmake-HiQt ****
    Error opening file for reading
    That's a bit disappointing...

    Besides, for once (believe me that's quite rare ), I tend to agree with elcuco : the GUI needs a lot of work (not that it's hard or long to do...) : there are huge useless margins, some dialogs do not even use layouts while resizing is still enabled, ...

    edit : Just tried making completion work but got no luck... Path to ctags was set by default to /usr/bin/ctags (which indicated "found") but I didn't get anything so I changed it to just "ctags" (yeah Linux rocks : no path troubles... ). I did not get anything that looked like completion but some debug output might tell you why (I must admit I don't know anything about ctags CLI switches and I don't feel like learning anyway...):
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    ctags: unrecognized option `--fields=afiKmsSzn'
    Try `ctags --help' for a complete list of options.
    Last edited by fullmetalcoder; 22nd July 2007 at 18:29.
    Current Qt projects : QCodeEdit, RotiDeCode

  5. #4
    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

    I'm now working on the 8 points mentioned by elcuco (thanks for the feedback)... please be patient everyone for a few days and I'll put out a much cleaner version.

    + magland

    P.S. - the project is less than one month old, so judge it wisely - i.e. by it's trajectory!

  6. #5
    Join Date
    Jan 2006
    Location
    travelling
    Posts
    1,116
    Thanks
    8
    Thanked 127 Times in 121 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    Quote Originally Posted by magland View Post
    judge it wisely
    Talking about wisdom : I deem it's particularly unwise to create a new file using a modified version of qmake to then read it from your app. A much smarter way (though maybe a little more complicated at first) would be to embed qmake's sources and to create a new entry point to it (i.e. drop the main() since you can't have two main() in a single app and also because it's not a very convenient interface within an app... for instance replace argc and argv by a QStringList and instead of writing to a file return the data through a custom memory structure (possibly even from the already setup QMakeProject object...)

    As for the completion it appears that the problem with --fields comes from the bin shipped with my distro which appears to be etags actually and has a slightly different CLI... I'll try to install a proper version and check if it is really as fast as you claim
    Current Qt projects : QCodeEdit, RotiDeCode

  7. #6
    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 think that the best solution would be to understand the problems caused by etags. In QDevelop we already seen people running MacOS which had problems with the ctags binary available on their system. There must be a commont ground for all those applications.

    About speed? No speed. The crapiest parameters of all these "IDE"s we are seeing in the last year is the syntax highlighter. On all it just stinks, and it's slow as hell.

  8. #7
    Join Date
    Jan 2006
    Location
    travelling
    Posts
    1,116
    Thanks
    8
    Thanked 127 Times in 121 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    Quote Originally Posted by elcuco View Post
    I think that the best solution would be to understand the problems caused by etags. In QDevelop we already seen people running MacOS which had problems with the ctags binary available on their system. There must be a commont ground for all those applications.
    as far as I can see it just use a completely different CLI to filter tags type so you'd better handle both and use the version switch to figure out which syntax should be used. (Makes me feel a lot more satisfied of having build my own solution from scratch : I had hard times but it's now both quite efficient and fully mastered... )

    Quote Originally Posted by elcuco View Post
    About speed? No speed. The crapiest parameters of all these "IDE"s we are seeing in the last year is the syntax highlighter. On all it just stinks, and it's slow as hell.
    True enough. But you won't be able to get rid of it as long as you cling to QTextDocument... This class does a great job rendering rich text but it sucks when it comes to complying with the need of coders : speed, small memory usage, loading big files, highlighting ... That's why I'm working on a new version of QCodeEdit which already offers a working (I did not say "usable" yet!) alternative to QTextDocument and fulfils all the aforementioned requirement. You might also be interested in QScintilla port to Qt 4 but beware it has a really crappy API...
    Current Qt projects : QCodeEdit, RotiDeCode

  9. #8
    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 for your feedback fullmetalcoder, but perhaps you could discuss your IDE on a separate thread... My hope here is to get some feedback from potential users of HiQt - I'm guessing that you don't fit into that category.

    elcuco, I really appreciate your specific feedback points, and I'm about to release the next version addressing all those issues....

    Cheers,
    JM

  10. #9
    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


  11. The following user says thank you to elcuco for this useful post:

    magland (23rd July 2007)

  12. #10
    Join Date
    Jan 2006
    Location
    travelling
    Posts
    1,116
    Thanks
    8
    Thanked 127 Times in 121 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    Quote Originally Posted by magland View Post
    perhaps you could discuss your IDE on a separate thread...
    Sure! But see, it was not quite about my IDE but the editing layer which is an independent module anyone can use (or could if it were already mature )... Let's move along anyway...
    Current Qt projects : QCodeEdit, RotiDeCode

  13. #11
    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

    A new version of HiQt is now available:

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

    I've fixed/addressed the bugs/suggestions mentioned by elcuco - (except for the one about opening .ui files - I have reason for keeping it this way for now).

    In addition, you can now get help for all indexed Qt keywords (not just class names).
    Furthermore, I fixed a major bug in loading subprojects (I had overlooked that fact that the .pro file doesn't have to have the same name as it's directory).

    There seems to be a bug in QTextEdit that slows things down significantly - I'm going to bring that up in a different thread. Nevertheless, it's usable at this point -- so try it out and tell me what you like

  14. #12
    Join Date
    Jan 2006
    Location
    travelling
    Posts
    1,116
    Thanks
    8
    Thanked 127 Times in 121 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Handcoder's IDE for Qt

    Just a little note about completion : installing ctags and setting proper path solved it but it is way too slow as far as I'm concerned... In case you'd like to make it work with etags as well here comes the CLI info :
    Usage: ctags [options] [[regex-option ...] file-name] ...

    These are the options accepted by ctags.
    You may use unambiguous abbreviations for the long option names.
    A - as file name means read names from stdin (one per line).
    Absolute names are stored in the output file as they are.
    Relative ones are stored relative to the output file's directory.

    -a, --append
    Append tag entries to existing tags file.
    --packages-only
    For Ada files, only generate tags for packages.
    -B, --backward-search
    Write the search commands for the tag entries using '?', the
    backward-search command instead of '/', the forward-search command.
    --declarations
    In C and derived languages, create tags for function declarations,
    and create tags for extern variables if --globals is used.
    -d, --defines
    Create tag entries for C #define constants and enum constants, too.
    -l LANG, --language=LANG
    Force the following files to be considered as written in the
    named language up to the next --language=LANG option.
    --globals
    Create tag entries for global variables in some languages.
    --no-members
    Do not create tag entries for members of structures
    in some languages.
    -r REGEXP, --regex=REGEXP or --regex=@regexfile
    Make a tag for each line matching a regular expression pattern
    in the following files. {LANGUAGE}REGEXP uses REGEXP for LANGUAGE
    files only. REGEXFILE is a file containing one REGEXP per line.
    REGEXP takes the form /TAGREGEXP/TAGNAME/MODS, where TAGNAME/ is
    optional. The TAGREGEXP pattern is anchored (as if preceded by ^).
    If TAGNAME/ is present, the tags created are named.
    For example Tcl named tags can be created with:
    --regex="/proc[ \t]+\([^ \t]+\)/\1/.".
    MODS are optional one-letter modifiers: `i' means to ignore case,
    `m' means to allow multi-line matches, `s' implies `m' and
    causes dot to match any character, including newline.
    -R, --no-regex
    Don't create tags from regexps for the following files.
    -I, --ignore-indentation
    In C and C++ do not assume that a closing brace in the first
    column is the final brace of a function or structure definition.
    -o FILE, --output=FILE
    Write the tags to FILE.
    --parse-stdin=NAME
    Read from standard input and record tags as belonging to file NAME.
    -t, --typedefs
    Generate tag entries for C and Ada typedefs.
    -T, --typedefs-and-c++
    Generate tag entries for C typedefs, C struct/enum/union tags,
    and C++ member functions.
    -u, --update
    Update the tag entries for the given files, leaving tag
    entries for other files in place. Currently, this is
    implemented by deleting the existing entries for the given
    files and then rewriting the new entries at the end of the
    tags file. It is often faster to simply rebuild the entire
    tag file than to use this.
    -v, --vgrind
    Print on the standard output an index of items intended for
    human consumption, similar to the output of vgrind. The index
    is sorted, and gives the page number of each item.
    -x, --cxref
    Like --vgrind, but in the style of cxref, rather than vgrind.
    The output uses line numbers instead of page numbers, but
    beyond that the differences are cosmetic; try both to see
    which you like.
    -V, --version
    Print the version of the program.
    -h, --help
    Print this help message.
    Followed by one or more `--language' options prints detailed
    help about tag generation for the specified languages.

    These are the currently supported languages, along with the
    default file names and dot suffixes:
    ada .ads .adb .ada
    asm .a .asm .def .inc .ins .s .sa .S .src
    c .c .h
    c++ .C .c++ .cc .cpp .cxx .H .h++ .hh .hpp .hxx .M .pdb
    c* .cs .hs
    cobol .COB .cob
    erlang .erl .hrl
    forth .fth .tok
    fortran .F .f .f90 .for
    html .htm .html .shtml
    java .java
    lisp .cl .clisp .el .l .lisp .LSP .lsp .ml
    lua .lua .LUA
    makefile Makefile makefile GNUMakefile Makefile.in Makefile.am
    objc .lm .m
    pascal .p .pas
    perl .pl .pm
    php .php .php3 .php4
    postscript .ps .psw
    proc .pc
    prolog .prolog
    python .py
    scheme .oak .sch .scheme .SCM .scm .SM .sm .ss .t
    tex .bib .clo .cls .ltx .sty .TeX .tex
    texinfo .texi .texinfo .txi
    yacc .y .y++ .ym .yxx .yy
    auto
    none
    where `auto' means use default language for files based on file
    name suffix, and `none' means only do regexp processing on files.
    If no language is specified and no matching suffix is found,
    the first line of the file is read for a sharp-bang (#!) sequence
    followed by the name of an interpreter. If no such sequence is found,
    Fortran is tried first; if no tags are found, C is tried next.
    When parsing any C file, a "class" or "template" keyword
    switches to C++.
    Compressed files are supported using gzip and bzip2.

    For detailed help on a given language use, for example,
    etags --help --lang=ada.

    Report bugs to bug-gnu-emacs@gnu.org
    Current Qt projects : QCodeEdit, RotiDeCode

  15. #13
    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 for the info. I realize that it's somewhat slow for now... what's important to me is that it's robust and reliable (i.e. no bugs or crashes)... I'll make it faster in the future. Most people I think are willing to wait a second or so for completion to kick in if it really works... and I can assure that future versions will be lightning fast

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

    Quote Originally Posted by fullmetalcoder View Post
    Just a little note about completion : installing ctags and setting proper path solved it but it is way too slow as far as I'm concerned... In case you'd like to make it work with etags as well here comes the CLI info :

  16. #14
    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

    are you re-painting after 5 seconds, with the functions been bold? that's sweet!

    I fail to understand how the help browser works, but it's kinda handy when you zoom it down 2-3 times. I prefear having the text in a small font, and then get more info on the page - so i can have more space for the text editor itself. I would recommend you to work more on the help viewer - it's a killer feature for me.

    BTW,
    My sub-projetcs demos are not working on this new version as well.

  17. #15
    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
    are you re-painting after 5 seconds, with the functions been bold? that's sweet!
    Yes, it's very useful to quickly see if there was a misspelling or something... or if you forgot a #include, because it only bolds keywords that are visible from the current file.

    Quote Originally Posted by elcuco View Post
    I fail to understand how the help browser works,
    Could you explain... do you mean that it doesn't work properly when you press F1 over a keyword, or do you mean that you don't understand how it's coded...?

    Quote Originally Posted by elcuco View Post
    but it's kinda handy when you zoom it down 2-3 times. I prefear having the text in a small font, and then get more info on the page - so i can have more space for the text editor itself. I would recommend you to work more on the help viewer - it's a killer feature for me.
    Sure, perhaps I'll add a zoom feature (is that built in to QTextBrowser?)

    Quote Originally Posted by elcuco View Post
    BTW,
    My sub-projetcs demos are not working on this new version as well.
    Funny... I tried the project attached to QDevelop issue #155 and that seemed to load correctly... could you send me your test project?

    BTW I still have not resolved the "code completion losing input focus on Linux issue"... but I'm working on it.

    Many thanks,
    Jeremy

  18. #16
    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 don't care about the code. Only the functionality, I am a user of your application, not a developer.

    My text cursor is in a word "QString", when I press F1, the help browser is opened on index.html and not qstring.html.

    The zoom is built in, you will find it. My suggestion is: zoom out by 2-3 by default.

    Another rant, the buttons on the left are a good idea. However they are not intuetive enough. It's hard for me to understand what each one of them does. Nice idea tough, maybe reducing the count, and adding some text will help.
    Attached Images Attached Images

  19. #17
    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
    My text cursor is in a word "QString", when I press F1, the help browser is opened on index.html and not qstring.html.
    Oh yes... it's a case-sensitivity issue, just change "/html/Qt.dcf" to "/html/qt.dcf" in HiQtDocBrowser.h, and that should do it... or you can just wait for the next version.

    Quote Originally Posted by elcuco View Post
    Another rant, the buttons on the left are a good idea. However they are not intuetive enough. It's hard for me to understand what each one of them does. Nice idea tough, maybe reducing the count, and adding some text will help.
    Yes, I agree, and I'm working on it.

  20. #18
    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

    Here's a new version
    HiQt-0.1.6

    Feedback appreciated...

    New Features since 0.1.5:

    Documentation browser
    fixed Linux bug - so docs are now available
    keyword searches no longer need to be exact matches
    "copy" (Ctrl+C) text now works
    Zoom in and zoom out
    Name of current doc file is displayed in current doc bar

    Main Window
    improved tool button layout, menu options, and shortcuts
    Templates
    Able to create new project and main source file from template - handy for testing quick programs

    Editor
    Significantly sped up editor using a workaround to a Qt bug in QTextEdit (separate thread)
    Better (more continuous) syntax highlighting
    Multi-line indentation using [Tab] and un-indentation using [Shift+Tab]
    Improved auto-indenting

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

    Cool Re: Handcoder's IDE for Qt

    Here's a new tool in HiQt that you don't see in other IDE's...
    it's a menu option for generating the file and class dependency
    graphs for the currently active project. Within seconds, you
    can see the big picture for your project, and double click on
    a file node (or a class node) to go straight to the source.
    Below are graphs for the elegant qmake.pro.




    Graphs are generated using GraphViz --
    which I include with the Windows binary distribution.
    Usually output of Graphviz is .png or .ps, but in this case
    I show the nodes as QGraphicsItem's in a QGraphicsScene
    so there are a lot of possibilities...
    for now you can just double click the nodes to go the the source.

    A note to Linux users... I realize that HiQt
    is quite unpleasant on Linux -- i.e. there are several
    things that for whatever reason don't port nicely
    from Windows. The most severe problem is the
    loss of input focus during code completion -- another
    thing is the ctags/etags issue. I'll work on these things,
    but for now I have very limited access to a Linux box
    with 4.3.0 (I need latest version since there are unworkable
    bugs in 4.2).

    To Windows developers... I believe that the program
    is stable, and in my opinion your best bet if you want
    to manage your own .pro files. You need Qt 4.3.0 to use it.
    Please try it and tell me if it is not getting to be even more
    of a useful tool than microsoft studio.

    Also, latest version has much faster code completion than a few days ago.

  22. #20
    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

    I fixed the code completion issue on Linux, so it should be usable on Linux now. As mentioned by fullmetalcoder, you need to make sure you have the latest ctags installed.

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

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.