A new version 0.23 is available on qdevelop server:
Corrections:
- Prevents the opening of the same file in several tab.
The code completion works now with the classes created in the project.
When the IDE auto-completes some code, it also add the "()" after the cursor, and place the cursor in the best position
possible.
- Fix a problem with packaged versions of QDevelop. With these versions, the code completion did not work.
Adds:
- Add Portuguese translation thanks to Giuliano Santana
- Add Vietnamese translation. Thanks to Chuong Nguyen
- In subclassing, the code is now added in editor if the file is opened in tab (before, the code was added always in files on disk, even with the file opened).
QDevelop, an complete Integrated Development Environment for Qt 4: http://qdevelop.org
It is a great project
I have tried before to make something like that, but you did more than what I would expect
it is working smoothly, everything is fine except the code completion
it works but not as I expected
for example in this code
Qt Code:
{ setupUi(this); this->(Ctrl+Space) }To copy to clipboard, switch view to plain text mode
I am expecting here to get list of all functions, properties of the QMainWindow class
but what i get is only one lonely function "frmMain()"
i have exuberant-ctags (version 5.6) installed
class browser works fine
Last edited by jacek; 19th August 2007 at 20:08. Reason: changed [qtclass] to [code]
Problem fixed
I have added "-R" to the command line arguments
QString command = ctagsCmdPath + " -R -f \"" + tagsFilePath +
"\" --append --language-force=c++ --fields=afiKmsSzn --c++-kinds=cdefgmnpstuvx -L \""
+ tagsIncludesPath + '\"';
in the file InitCompletion
Your modification seems not the good solution because without "-R" I have the completion for the QMainWindow.
QDevelop, an complete Integrated Development Environment for Qt 4: http://qdevelop.org
I'm using QDevelop 2.1 with QT 4.2.2 in Suse and RHEL. Wonderful product.
I have a couple of questions:
1. How do I make the debugger see src files that are in a src subdirectory of the project? When I run the debugger it always says "cannot find main.cpp".
2. How can I alter the settings for a library to create an archive lib (.a) instead of a shared object (.so)?
Thanks!
Karl
Hi KaptainKarl,
In debugging, QDevelop opens automatically the project sources files. So I think it's a problem with your Qt library installed. Certainly you don't have Qt built in debug mode.1. How do I make the debugger see src files that are in a src subdirectory of the project? When I run the debugger it always says "cannot find main.cpp".
Go to "Project | Properties" then enable "Advanced Mode". You have a checkbox "staticlib". Certainly work for your request (but I don't test it).2. How can I alter the settings for a library to create an archive lib (.a) instead of a shared object (.so)?
A newest version that 0.21 is available on http://qdevelop.org
QDevelop, an complete Integrated Development Environment for Qt 4: http://qdevelop.org
KaptainKarl (13th July 2007)
it will fail if you are debugging sub-projects.
QDevelop, an complete Integrated Development Environment for Qt 4: http://qdevelop.org
ufo-vl (20th July 2007)
I will try to reproduce my problem and send it to you in the next few days.
jlbrd,
Good program, thanks :-).
Hello,
I just upgraded to QT 4.3 and while I was at it, I upgraded QDevelop to 0.23. I tried to build an application that worked under QT 4.2.2 and QDevelop 0.21.
The application includes a LIBS variable that is set to the following:
"-L../lib -lSMART"
When I try to build it in QDevelop, I get an undefined reference from the library I'm pointing to with the variable.
When I try to build from the command line, I get the following:
#> ~/QTProjects/SMART/SMRTsum> gmake
g++ -Wl,-rpath,/usr/local/Trolltech/QT4.3_STATIC/lib -o SMRTsum main.o -L/usr/local/Trolltech/QT4.3_STATIC/lib -L../lib\ -lSMART -lQtSql -L/usr/lib/mysql -lmysqlclient_r -lz -lcrypt -lnsl -lc -lnss_files -lnss_dns -lresolv -lodbc -pthread -L/opt/gnome/lib -pthread -L/usr/X11R6/lib -lpng -lSM -lICE -pthread -pthread -lXi -lXrender -lXrandr -lXfixes -lXcursor -lXinerama -lfreetype -lfontconfig -lXext -lX11 -lQtCore -lm -pthread -lgthread-2.0 -lglib-2.0 -lrt -ldl -lpthread
main.o: In function `main':
main.cpp.text+0x14fe): undefined reference to `getStateID(unsigned long)'
collect2: ld returned 1 exit status
gmake: *** [SMRTsum] Error 1
As you can see, there is a mysterious "\" after the "-L../lib".
If I edit the Makefile manually and take this "\" out, the compile works.
Is this a bug in QDevelop or am I entering the value of the LIBS Variable incorrectly?
Thanks,
Karl
I have found bug in QDevelop 0.23
Excuse me, I do not have opportunity to get an account on google for reporting in http://code.google.com/p/qdevelop/issues/list.
Step for reproduce:
1. Сreate empty project
2. Right click on project file (*.pro)
3. Select "add new file"
4. Select source file.
5. Input file name
6. In shown dialog press Yes or No
Expected result: file(s) was created
Actual result: could not create file dialog was shown.
Dup for this issue: "Create new class" from context menu.
OS: Win XP Pro SP2
Qt ver: 4.3
QDevelop ver: 0.23
Problem: QDevelop not create directory "src, ..." for new files. As result: attempt to create a file in a nonexistent directory
Sorry for my bad english
Thanks.
Last edited by ufo-vl; 24th July 2007 at 06:25.
Hello,
This is in reference to my previous post.
I altered the variable settings for LIBS so that the "-L../lib" and "-lSMART" were entered as seperate values. This fixed the problem I was seeing.
Karl
A new version 0.24 is available on qdevelop server:
Corrections and improvements:
- Source/header navigation after files are renamed is working once more (fixes issue 137)
- Updated translations for Chinese, Vietnamese, Italian, Portuguese, Spanish, Turkish and German
- The build log window is now a sub-class of QTextEdit. It is possible to copy and paste by right-click the texts in
this window (fixes issue 136 and 141)
- Make moving up/down in files explorer equivalent to clicking items, and Return equivalent to clicking Open (fixes issue 154)
- Updated the shape of the tabs on the output dock window (revisions 182, 183)
- Improove handleing of pro files (revision 185,187)
- Fixed various crashes related for the code completion (revision 184,188)
- The list of include directories is parsed by the code completion each time it is necessary (fixes issue 145)
- Commet/Uncomment line fixes (fixes issues 101, 113 and 131).
- Fixed function/method names color bug (fixes issues 77 and 96)
- Line numbers are consistant with text editor, improved undo/redo behavior, enhanced find in document behavior,
Removed Undo and Redo from editor context menu and moved Goto Implementation and Goto Declaration to the top.
- Fixed templates for win32-msvc2005 target.
- Find in files funtions has been improoved (revision 147).
- Completion improvement: If a function has many overloaded versions, the code completion choose the version with the biggest
number of parameters, overcome some problems with ctags and Qt macros (revision 151)
- When adding files to a project if the directories do not exixt, create them (revision 154)
- New text format used in the source, which allows to translate more easily.
- Indentation should be working once more (fixes issue 18)
- When creating a new dialog, the template will use by default QDialogButtonBox (fixes issue 83)
- Order of widgets in tools control is revised, also use QDialogButtonBox instead of normal buttons (fixes issue 89)
- Improved save and restore of MainWindow position, size and state (fixes issue 103).
- Break IDE closing with Cancel button if project changes are not saved (fixes issue 107)
Adds:
- Add "Goto Declaration" and "Goto Implementation" entries in the popup menu showed by right-click in an editor. After the right-click on a word, the program find the member object or function and his class then, if possible allows to go to the implementation and the declaration files.
- Since Qt 4.3.0, Designer can be controlled as Assistant by socket. That allows to open all UI files with one instance of Designer.
- Added an entry to the main menu to open class methods combo box for fast lookup without using mouse.
- Hide mouse cursor while typing code (fixes issue 24)
QDevelop, an complete Integrated Development Environment for Qt 4: http://qdevelop.org
The last version present on the svn improves much the code completion. All tags used in the code completion are now saved in databases. When the first character of the class is a 'Q' (certainly a Qt class), the tags are saved in qdevelop.db created in the home directory ("/Application Data/qdevelop.db" in home directory under Windows), and is common to all projects. The tags of other classes are saved in qdevelop-settings.db in the project directory and is specific to a project.
The table "tags" in these databases is created empty and populated by the tags of a class only when the completion is called for this class. So, the first call of the completion for a class is not faster than before. But after, the external ctags program is not called and the tags are read in the databases and the speed is very increased. The difference is really important under Windows, where the call of ctags.exe is slower. Between two launch of qdevelop program, the databases are reused and a class previously parsed is read in database.
A new menu "Define new Qt version" is present to delete qdevelop.db. It's useful for a new Qt version with new classes or modified classes.
The feedbacks for this are welcome.
QDevelop, an complete Integrated Development Environment for Qt 4: http://qdevelop.org
Yes, you have right, first letter 'Q' + second a capital is a good solution.
QDevelop, an complete Integrated Development Environment for Qt 4: http://qdevelop.org
ecluco amazed me so much about the features he told me he was working on that, after monthes of disdain, I finally decided to give it a try. I did checked out the HEAD revision of google code repository (which compiled just fine using cmake) and here come my comments :
There's still a lot to be said but I'll stop there because I'm already a wee bit bored...
- QDevelop takes an awful lot of time to load projects (about 10 seconds to load its own project file and about the same to load Edyuk's one)
- QDevelop fails to load include files though it does take the include() directive into account (stupid IMHO but better than discarding it anyway...)
- On my system, etags come pre-installed and ctags is symlinked to it. As QDevelop doesn't check for this and doesn't do proper checks to now whether the QProcess started it ends up eating 80% CPU time while hanging at 20% of "project analysis"
- QDevelop fails (does not bother?) generating class tree for subdirs projects
- QDevelop takes an awful lot of time to generate class trees (several dozen seconds is really long...)
- QDevelop does not remember the window state of its main window, which is really boring because the bottom dock is useless most of the time and takes way too much space by default
- The completion can be extremely slow (I typed "this->" in InitCompletion::addIncludes() and I really believed that it went into an endless loop since it hanged more than 10 SECONDS to display me a couple of entries...
- Sometimes it doesn't even work (while taking the same amount of time) : e.g. I typed the same thing in Parse::getTypeOfToken()
- The typing algorithm randomly fails. e.g., still in getTypeOfToken() the ident argument will complete straight after the curly bracket but not after the second if body (while it works between the two "if" ...)
- There's neither parenthesis matching nor code folding
- Neither structs nor typedefs are completed (tried Bookmark, TagList and Scope)
- Undo/Redo is wicked (my guess is that grouping is not used properly, especially in indenting...)
- Completion filtering doesn't work well (try "QString s; s.spli")
- Keys not handled by completion widget are left to the editor widget BUT the completion widget remains where it is : BAD. What if I press CTRL + Z? Or Tab (BTW tab should select the entry, just like Enter)
- There's a "search in files" tab, which sounds great but it doesn't do anything...
- Looks like completion data is reinitialized at every context switch (i.e. each time I switch to another file, even without closing any...). Do you really think everyone is happy to wait for a dozen seconds each time he changes a single line of code in a file that triggers completion?
- I get a lot of warnings on command line, especially these two :
trying to init completion on a null class nameQSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.- There's no widget dedicated to QRC file editing...
- There's no designer integration
- There are kind of contradictory messages : When compilation fails the log ends with "Done generating without errors" (translation from french...)
- The "compile file" command is not smart enough to take advantage of an existing makefile when the file belongs to an opened project...
- There are esoteric action names (most embarrassing is "Define new Qt version" since it deletes completion db without a single warning...)
p.s. : I'm pretty sure these will be ignored, as all the other comments I made to jlbrd on both this forum and its french counterpart, but I thought it would be unfair not to reveal the flaw I had spotted since elcuco does the same with Edyuk from time to time...
Current Qt projects : QCodeEdit, RotiDeCode
Bookmarks