Commit Graph

49 Commits

Author SHA1 Message Date
Christian Kamm
427f775489 QmlJS: Allow setting import paths in Qt4Projects using QML_IMPORT_PATH.
Introduced new Creator-specific qmake variable QML_IMPORT_PATH that
lists the import paths required by the QmlJS engine.

Done-with: Alessandro Portale
2010-09-21 14:56:25 +02:00
Jarek Kobus
1cefde9e45 Implement adding new project into opened subdirs project
Reviewed-by: dt <qtc-committer@nokia.com>
2010-08-26 18:35:05 +02:00
dt
e5f8a31b9e Fix File/New in the deployment folders.
That is tell the user that those files need not be added to any project,
and show "<Implicitly Add>" for them on the last wizard page.
This fixes Add/New for the QML/OTHER_FILES folder structure, except for
the virtual folder itself.

Reviewed-By: Jarek Kobus <jaroslaw.kobus@nokia.com>
2010-08-25 11:53:43 +02:00
Jarek Kobus
573006f370 Add "Add library wizard" to the pro file editor
Reviewed-by: dt <qtc-committer@nokia.com>
Task-number: QTCREATORBUG-125
2010-08-16 18:25:38 +02:00
dt
b02add2490 Add QML folder in project tree, show files there
Use the full path for folders to sort in the project tree.

For virtual folders ensure that the path ensures the sorting we want.

Reviewed-By: kkoehne
2010-08-11 12:10:43 +02:00
ck
ad02e86e7a Qt4Projectmanager: Constify some member functions.
Reviewed-by: dt
2010-07-07 10:57:08 +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
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
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
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
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
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
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
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
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
dt
d8188399cf Remove ProjectExplorer::FileWatcher usage from Qt4ProjectManager
Use the filemanager instead
2010-01-20 14:47:52 +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
Oswald Buddenhagen
ef660880ad make ProFileOption persist during the scan of an entire project
there is no point in throwing away and re-recreating invariant data over
and over ...

shaves off ~15% of the load time of Qt 4.6.
2009-12-08 17:36:41 +01:00
Oswald Buddenhagen
3657acac5f move various functions from Qt4PriFileNode to Qt4ProFileNode
findProFileFor(), buildDir() and createProFileReader() make sense only
in relation with an actual pro file anyway, so move them there.
2009-12-08 17:36:41 +01:00
Friedemann Kleint
087e72499e Designer: Prepare re-implementation of "Goto Slot".
...making use of the new code model features. Move code to
separate file. Make it possible to obtain path to generated
header file from project manager.
2009-12-03 16:23:15 +01:00
Friedemann Kleint
5948e284bb Rename namespace Core::Utils into Utils
Also move Designer::Internal::FormWindowEditor ->
Designer::FormWindowEditor.
2009-10-05 11:06:05 +02:00
Oswald Buddenhagen
f7d665ba42 remove dead code 2009-09-29 12:18:42 +02:00
Alessandro Portale
5f5f6890bd InternalNode is a struct.
Let's not irritate MSVC
2009-08-22 00:59:35 +02:00
con
7ebea974d6 Show pro file's subdirectory structure in project tree in non-simple mode.
Also adding category folders for the different file types
(source files, header files, resource files, form files, other files).
2009-08-21 14:53:25 +02:00
hjk
93cbef8724 long live the king 2009-08-14 09:30:56 +02:00
dt
eb07777af6 Remove QBuild stuff that was never finished. 2009-07-27 12:50:42 +02:00
Jason McDonald
884b7af769 Update license headers and sales contact details.
Reviewed-by: Trust Me
2009-06-17 00:01:27 +10:00
dt
37a9e2bd58 Add a QtVersion::toolChain() method, replacing Qt4Project::toolChain()
Makes the code nicer, we use the ProFileReader to parse the mkspec.
2009-05-25 16:43:50 +02:00
dt
286325ceb6 Add includes to the codemodel specified via PKGCONFIG in .pro files
We run pkg-config --cflags-only-I $$PKGCONFIG in the background to find
those includes.

Task-Nr: 250195
2009-05-13 18:09:47 +02:00
dt
af199594a6 Adds dynamic ui completion. Wohoo :)
This means, creating a new project, we immediately have completion for
the ui file. Also adding stuff to the ui file now changes the codemodel
immediately.

Yet todo, are tests under windows and suppressing a warning if the form
contains a toplevel spacer.
2009-05-12 14:46:11 +02:00
dt
6c5e23f10e Fix $$OUT_PWD not beeing set for finding the target/destdir
Qt Creator wouldn't find the correct target if shadow building a project
that uses $$OUT_PWD, like for example itemviews-ng.
We didn't set the necessary variable on the ProFileReader *, simplified
the code to always use a ProFileReader created for the exact
profilenode.
2009-04-28 14:30:17 +02:00
dt
0afed96f29 Fix warning about unused variable 2009-04-03 17:45:18 +02:00
dt
0a2df32654 Pop up a dialog if the CMakeCache.txt changes.
Rerun cmake and reparse the file. Add new files to the tree, remove old
ones from th tree. Add/removing targets should also work.
2009-03-26 17:36:58 +01:00
Thorbjørn Lindeijer
9c8f4e30a7 Allow specifying the name of a new generic project
The name is used as the base for files like [project].creator,
[project].files, etc. and is displayed in the Projects mode and the
Projects tree.
2009-03-19 18:08:16 +01:00
hjk
8ca887aae2 Fixes: change file license headers to include LGPL 2009-02-25 09:15:00 +01:00
dt
c71edd7763 Fixes: Finding the ui*.h files so that we can parse those. 2009-02-06 13:26:21 +01:00
dt
0cf9ffc031 Fixes: Updating the completion for ui files
Details:  That is we update all generated headers (which are new or
modfied) in the C++ Engine. Big if, this only works if we find the
correct path for the ui header files. Which is known to sometimes not
work, I'll fix that next.
2009-01-14 17:13:17 +01:00
Daniel Molkentin
59affcfffc Bump year in licence header. 2009-01-13 19:22:14 +01:00
hjk
da3cb14483 chancge Nokia GPL exception version from 1.2 to 1.3 2008-12-16 17:20:00 +01:00
dt
ae3fda8b84 Fixes: Don't call Qt4ProFileNode::update on rebuild.
Task:     Found by Roberto.
2008-12-09 17:25:50 +01:00
dt
d6e726ec68 Fixes: Memory usage for loading projects.pro
Details:  Free the whole ProFile*, ProItem*, ProValue* and etc
structure after parsing, that frees around 200Mb for projects.pro.
2008-12-05 14:29:18 +01:00
dt
bd827512bb Fixes: Mem leak in the pro file parser.
Details:  ProFileCache be gone, as is ManagedProFile, not to be missed.
Drastically simplified how ownership works.
2008-12-02 18:14:06 +01:00
hjk
cf11b69643 more code cosmetics 2008-12-02 16:19:05 +01:00
hjk
ab83dcd87c off-by-one in headers 2008-12-02 14:20:25 +01:00
hjk
8a43d9b9f3 end-of-line whitespace correction of the new headers 2008-12-02 14:17:16 +01:00
con
05c35356ab Initial import 2008-12-02 12:01:29 +01:00