Commit Graph

219 Commits

Author SHA1 Message Date
con
b0040dc858 Merge remote branch 'origin/2.0'
Conflicts:
	src/plugins/projectexplorer/taskwindow.cpp
	src/shared/proparser/profileevaluator.cpp
2010-06-10 15:00:16 +02:00
Oswald Buddenhagen
6a6e0091c8 consolidate the subdir name data path
every path should be separator-fixed

Reviewed-by: dt
2010-06-09 11:46:10 +02:00
Oswald Buddenhagen
fc421df12d micro-optimizations 2010-06-09 11:46:10 +02:00
Jarek Kobus
9d77b7c105 When adding a form file to a project add also its qrc files
Extract qrc paths from ui file by simple xml parsing.

Reviewed-by: dt <qtc-committer@nokia.com>
Reviewed-by: Friedemann Kleint <qtc-committer@nokia.com>
Task-number: QTCREATORBUG-42
2010-06-08 12:19:00 +02:00
con
7f733b1545 Merge remote branch 'origin/2.0'
Conflicts:
	README
	doc/qt-html-templates.qdocconf
	doc/qtcreator.qdoc
	doc/qtcreator.qdocconf
	src/app/Info.plist
	src/plugins/bineditor/BinEditor.pluginspec
	src/plugins/bookmarks/Bookmarks.pluginspec
	src/plugins/cmakeprojectmanager/CMakeProjectManager.pluginspec
	src/plugins/coreplugin/Core.pluginspec
	src/plugins/coreplugin/coreconstants.h
	src/plugins/cpaster/CodePaster.pluginspec
	src/plugins/cppeditor/CppEditor.pluginspec
	src/plugins/cpptools/CppTools.pluginspec
	src/plugins/cvs/CVS.pluginspec
	src/plugins/debugger/Debugger.pluginspec
	src/plugins/designer/Designer.pluginspec
	src/plugins/fakevim/FakeVim.pluginspec
	src/plugins/find/Find.pluginspec
	src/plugins/genericprojectmanager/GenericProjectManager.pluginspec
	src/plugins/git/ScmGit.pluginspec
	src/plugins/helloworld/HelloWorld.pluginspec
	src/plugins/help/Help.pluginspec
	src/plugins/locator/Locator.pluginspec
	src/plugins/mercurial/Mercurial.pluginspec
	src/plugins/perforce/Perforce.pluginspec
	src/plugins/projectexplorer/ProjectExplorer.pluginspec
	src/plugins/qmldesigner/QmlDesigner.pluginspec
	src/plugins/qmlinspector/QmlInspector.pluginspec
	src/plugins/qmljseditor/QmlJSEditor.pluginspec
	src/plugins/qmlprojectmanager/QmlProjectManager.pluginspec
	src/plugins/qt4projectmanager/Qt4ProjectManager.pluginspec
	src/plugins/regexp/RegExp.pluginspec
	src/plugins/resourceeditor/ResourceEditor.pluginspec
	src/plugins/snippets/Snippets.pluginspec
	src/plugins/subversion/Subversion.pluginspec
	src/plugins/texteditor/TextEditor.pluginspec
	src/plugins/vcsbase/VCSBase.pluginspec
	src/plugins/welcome/Welcome.pluginspec
2010-06-08 10:39:45 +02:00
Oswald Buddenhagen
8a07e6a3e1 add "static" 2010-06-04 17:56:47 +02:00
dt
58a5da63a8 Load .pro files with infinite loops
Task-Nr: QTCREATORBUG-1443
2010-05-20 16:16:01 +02:00
con
7f4cbe2383 Merge remote branch 'origin/2.0'
Conflicts:
	src/plugins/debugger/moduleshandler.cpp
	src/plugins/qmldesigner/components/propertyeditor/propertyeditorcontextobject.cpp
	src/plugins/qt4projectmanager/qt-maemo/maemopackagecontents.cpp
	src/plugins/qt4projectmanager/qt-maemo/maemosshthread.cpp
2010-05-20 09:28:00 +02:00
dt
02e1b8694b Check if the file is already used in the .pro file.
And refuse to add it twice. The check is pretty simplistic in that it
doesn't take scopes or which variable it's exactly in into account.
But in those cases you need to edit the .pro file manually anyway.

Task-Nr: QTCREATORBUG-932
Task-Nr: QTCREATORBUG-891
Task-Nr: QTCREATORBUG-653
2010-05-18 16:31:22 +02:00
dt
8e11d1d18a Fix comment to be more readeable 2010-05-18 16:31:05 +02:00
dt
435ff5dfe3 For adding files use the "primary" variable for each file type.
That is e.g. SOURCES instead of whatever variable is used first in the
project file.

Reviewed-By: ossi
2010-05-18 16:31:05 +02:00
dt
fb3cc11494 Make .pro files writeable if needed.
Task-Nr: QTCREATORBUG-765
2010-05-18 13:48:57 +02:00
dt
9bc9fe73e1 File renaming
Reviewed-By: con
Reviewed-By: Friedemann Kleint

We now support renaming files. The version control system tries first to
rename, if that doesn't support or can't rename the file we do a normal
rename. (Note: git, hg, perforce > 2009.02 support renaming, cvs not.
(perforce untested)). We correctly notify all editors of the renamed
file and tell the project manager to rename the file in the project.

Note: Only the qt4projectmanager knows how to rename files.

Note: renaming folders, moving files to different folders, renaming
.pro/.pri files is not supported. Those things can be later added after
this has proven to work correctly in the simple case.

Also we don't do any actions based on the renaming like renaming
classes, changing include guards or #include lines.
2010-05-12 14:14:44 +02:00
con
7d88da6a32 Find created sis files, even if DESTDIR is set.
Symbian mkspec puts the package file into the build directory,
not the destination directory.
2010-05-07 10:42:39 +02:00
dt
61e5ce374c Make Q4ProjecConfigWidget more robust
Task-Nr: QTCREATORBUG-1108
Task-Nr: TOOLS-339
2010-04-14 14:38:10 +02:00
dt
c58469ce87 Fix ui completion for new projects
The UI_DIR and MOC_DIR weren't added to the includepath for new
projects, since at the time of parsing the directories don't exist yet.

We now always add UI_DIR and MOC_DIR to the include path, without caring
whether they exist.

Task-Nr:  QTCREATORBUG-1064
Reviewed-By: ossi
2010-04-13 16:38:11 +02:00
dt
663b166732 Take QMAKE_CXXFLAGS into account for additional INCLUDEPATHS
This also fixes pkg-config support for the code model.

Task-Nr: QTCREATORBUG-976
2010-03-29 17:11:41 +02:00
dt
a67e88993b Add LIBS-paths to PATH before running on windows.
On windows when linking to a library via -L/some/path, the library is
found in /some/path while linking. But running that app fails, since it
can't find the library. We now adjust PATH to include all paths from
LIBS and thus the library is found.
2010-03-29 15:17:19 +02:00
con
d6061a23e1 Refactor the externally modified file handling
Reviewed-by: dt
2010-03-22 16:01:55 +01:00
Friedemann Kleint
f66df7b9a6 Header cleanup in ProjectExplorer and Qt4ProjectManager 2010-03-17 17:45:33 +01:00
dt
6ecd9cc537 Add new on virtual folders adds to the wrong path.
The solution ain't great. Essentially we need to fix that path() needs
to be unique and a 1:1 mapping to the file system by introducing a
separate method for the first usage.

Task-Nr: QTCREATORBUG-828
Reviewed-By: con
2010-03-15 13:37:13 +01:00
dt
ced9266483 Silence the compiler 2010-03-12 15:00:15 +01:00
dt
c06fcc005b Fix crash for closing creator while evaluate is still in progress 2010-03-11 17:02:36 +01:00
dt
ab8fc52d0b Use exact and aysnc .pro file evaluate
This is a big change touching almost all of our .pro file parsing.
With this patch we only evaluate once exact for all needs and once
greedy for the filelist. That is the qt runconfigurations don't have own
evaluaters but reuse the project wide exact evaluation.

We reevaluate if the user changes the build directory, the qmake
buildconfiguration or the qmake arguments. That is if you open src.pro
(or projects.pro) of qt with a shadow build you still don't get all the
files, but after correcting the build directory, we reevaluate the .pro
files and find all files. So for a suitable definition of fixed, that
bug is now fixed.

We now get the exact defines of all .pro files instead of all defines for all
buildconfigurations. We still don't distinguish in which
.pro file a DEFINE is set. So the code model now knows about all the
defines set for the given configuration but not for which files it is
actually set. Also that includes all DEFINES set in .qmake.cache or the
mkspecs. This means all defines from .pro files should now work.

The intial loading is still synchronous. I haven't looked into it to
deeply, but it seems possible to make it also async.There are probably a
few issues which need to be solved fist.

Also due to the asynchronous nature of the code, the executable is
updated a few seconds after actually changing the build configuration
2010-03-10 17:02:24 +01:00
hjk
9595504bda Long live the king! 2010-03-05 11:28:13 +01:00
Thorbjørn Lindeijer
73a5bd479f Fixed indentation of InternalNode 2010-02-26 16:14:11 +01:00
Friedemann Kleint
13a608f86f uic-Codemodel-updating: Decouple form editor.
Pass around contents as string, saving repeated
invocation of FormWindowEditor::contents().
Remove dependency to FormWindowEditor.
Reviewed-by: dt <qtc-committer@nokia.com>
2010-02-26 14:55:39 +01:00
Robert Loehning
6639da4df5 Don't crash when pro-file is empty.
Reviewed-by: Oswald Buddenhagen
2010-02-24 16:26:08 +01:00
con
e0a12e9e2c Show native file paths in category sub-folder nodes.
Correctly show
* Headers
   * C:\foo
instead of
* Headers
   * C:/foo
2010-02-24 15:48:52 +01:00
con
8c6fc0c454 Don't begin global paths with '/' on windows.
Doing it creates huge delays, because it resolves to a network path.
Also rename FolderNode::setFolderName to FolderNode::setDisplayName,
because that's the name of the property.

Task-number: QTCREATORBUG-695
2010-02-24 15:06:48 +01:00
dt
75545a2bf0 Fix FileManager to correctly handle multiple IFile's for the same file
And port the Qt4ProjectManager to use that API for synchronization
between editors and the .pro file tree.

Reviewed-By: con
2010-02-17 16:51:02 +01:00
Friedemann Kleint
04462a4eb5 Qt4ProjectManager: Fixed static storage of Icons.
suppressing the "~QX11PixmapData(): QPixmap objects must be destroyed
..." warning.
2010-02-12 12:40:32 +01:00
Tobias Hunger
d1bdfcc363 Integrate target support
* Ease cross device development by introducing 'targets' which
   group build- and runsettings that are valid for this one target

 Most of the kudos for the code review go to dt. Con, thorbjorn,
 ckandler and others did also review parts of this patch.

Reviewed-by: dt
2010-02-09 16:57:37 +01:00
Friedemann Kleint
81f14bb270 Fix some code scanning issues.
QString: Use QChar/char where appropriate, do not use QString::null
2010-02-02 17:09:41 +01:00
Tobias Hunger
5173c2dc01 s/target/buildtarget/ in projectnodes
This is in preparation of the addition of "targets" in the sense
of "platforms to develop for" into the codebase.

Reviewed-by: dt
2010-02-02 12:59:29 +01:00
Friedemann Kleint
2fd8b2d7ff Fix some code scanning issues.
QString: Use QChar where appropriate.
2010-02-01 12:43:56 +01:00
Oswald Buddenhagen
75b42f18d8 Merge remote branch 'origin/1.3'
Trailing whitespace removal re-applied manually.
2010-01-29 22:50:23 +01:00
Oswald Buddenhagen
bf10b04f7f don't guess .pro file names for SUBDIRS targets
qmake doesn't, either
2010-01-25 16:53:56 +01:00
Oswald Buddenhagen
6c7b2d1c87 actually edit pro files instead of rewriting them from the "AST"
that way the file formatting is better preserved.
2010-01-25 16:53:56 +01:00
Oswald Buddenhagen
93b6820e8c paths in .pri files are still relative to the .pro file's directory 2010-01-25 16:53:56 +01:00
Oswald Buddenhagen
95a9b64c4a don't mess up report about failures when removing multiple files 2010-01-25 16:53:56 +01:00
Oswald Buddenhagen
69028643b2 remove evaluation of pro file before changing it
just parsing it (once ...) ought to be sufficient. we don't need to
validate the syntax beyond that anyway.
2010-01-25 16:53:56 +01:00
Oswald Buddenhagen
ea9c5efa15 save possible modifications to pro file *before* re-reading it ... 2010-01-25 16:53:56 +01:00
Oswald Buddenhagen
cc709e963e purge unused "modified" flag from ProFile 2010-01-25 16:53:55 +01:00
dt
d8188399cf Remove ProjectExplorer::FileWatcher usage from Qt4ProjectManager
Use the filemanager instead
2010-01-20 14:47:52 +01:00
Oswald Buddenhagen
5ab250fe57 purge ProEditorModel and ProCommandManager
they were remnants of the pro editor, which was removed long time ago.
they were still used for automatic editing of pro files, but were
totally overengineered for that purpose (removed 1300 LOC, added 40).
2010-01-12 16:08:37 +01:00
dt
60c8686ed8 Add the precompiled headers to the project info
QMake passes those headers directly to gcc, so the user doesn't need to
include themselves.
2010-01-12 13:19:15 +01:00
Tobias Hunger
a6ad773722 Make method naming more consistent.
* Use id() for methods returning a string used to represent
    some type of object.
  * Use displayName() for strings that are meant to be user
    visible.
  * Quieten some warnings while touching the files anyway.
  * Move Factories to their products in the plugins where that
    was not done before.

Reviewed-by: dt
2010-01-07 18:17:24 +01:00
dt
b661cb9992 Improve performance, keys() is slow.
Reviewed-By: Roberto Raggi <roberto.raggi@nokia.com>
2009-12-10 12:09:46 +01:00
Oswald Buddenhagen
f9d955eb6c cache parsed pri & prf files
no point in re-parsing them over and over during the scan of a bigger
project ...

shaves off another 20% of the loading time of Qt 4.6.
2009-12-08 17:36:41 +01:00