Commit Graph

43 Commits

Author SHA1 Message Date
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
Friedemann Kleint
7828bb811c DesignMode/Qt Designer clean-up Part V: Renaming
Re-introduce FormWindowEditor as IEditor used for
Designer. Use SharedTools::WidgetHost directly
for embedding into FormEditorStack, doing the
geometry-changed handling in there as well.
2010-03-10 10:21:52 +01:00
dt
431a276382 Ask for saving when using the context menu 2010-03-05 15:51:30 +01:00
dt
96c1a21a51 Remove unused code emptyProject 2010-03-05 15:51:30 +01:00
hjk
9595504bda Long live the king! 2010-03-05 11:28:13 +01:00
Friedemann Kleint
fc60d6c62d Designmode/Designer: Fix uic code model support.
...to use new editor.
Reviewed-by: Lasse Holmstedt <lasse.holmstedt@nokia.com>
2010-02-26 15:20:50 +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
821d49414c remove MessageManager::displayStatusMessage 2010-02-19 17:00:51 +01:00
Tobias Hunger
1ff0a7e03a Add target selection wizard to Qt4 projects 2010-02-17 17:13:23 +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
dt
fb3ae97df3 Add Build to the right click menu of sub projects for Qt4 Projects
They do what you expect them to do, that is build only a subtree.
The implementation is a little bit strange. We temporarly set the sub
node to be built on the BuildConfiguration, enqueue that
BuildConfiguration (which calls BuildStep::init()), and then reset that
temporary value.

A more general way would be to have the ability to extend
BuildConfiguration::buildProject() in a way that additional data can be
passed to the BuildSteps.

Task-Nr: QTCREATOR-5
Task-Nr: QTCREATORBUG-44
2010-01-13 18:02:22 +01:00
dt
377e6ff5dd Make runQMake simpler 2009-12-08 13:09:16 +01:00
Tobias Hunger
e386525613 Cleanup Qt4ProjectManager.
* Remove unnecessary headers.
 * Remove hardly used variables.
 * QTC_ASSERT before using a pointer which might be 0.

Reviewed-by: dt
2009-12-08 12:48:43 +01:00
dt
0d162be22f Make BuildSteps one instance per BuildConfiguration
Enables users to change which buildsteps get run per buildconfiguration.
Some further tweaks are probably necessary. This is a rather big
change, though it should work. :)
2009-11-19 16:36:48 +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
con
acbd4513e3 Changing string based api to BuildConfiguration based api.
Builds, but I'm pretty sure it doesn't *work* :)
2009-10-01 10:05:05 +02:00
Friedemann Kleint
978cf4bda8 Rename IRunConfigurationRunner -> IRunControlFactory...
and ApplicationRunConfiguration to LocalApplicationRunConfiguration,
preparing remote debugging. Change the interface canRun() to be const,
run() to create() (since it does not run anything), use references
to the QSharedPointer<Foo>. Introduce d-Pointer and remove
unneeded headers from ProjectExplorerPlugin and add missing includes
everywhere.
2009-09-25 11:35:44 +02:00
hjk
93cbef8724 long live the king 2009-08-14 09:30:56 +02:00
dt
cd27fdecd9 Parse the Makefile in the importing case a lot better
We add each command line argument to the Additional Arguments
2009-07-22 16:52:44 +02:00
dt
ecfb6eaf5a Remove the qmakeStep() function from qt4Project 2009-07-21 15:01:16 +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
c0d4770ce0 Even more compile fixes. 2009-05-12 15:05:57 +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
2b302332b8 Move QtVersionManager, QtVersion and QtOptionsPage back
After all I don't need all that stuff in the cmakeplugin, all i needed
is now bundled in debugginghelper.h/cpp
2009-04-28 12:45:04 +02:00
dt
b6c05a334c Refactoring: Move QtVersionManager instance() into the ProjectExplorer
And add a instance() method to it.
2009-04-22 16:51:38 +02:00
dt
8f22417244 Refactoring: Move QtVersionManager to ProjectExplorer.
The Debugger, cmake and Qt4 plugin all need it. More refactoring to it
coming.
2009-04-22 14:52:35 +02:00
Alessandro Portale
04fafbddfe Don't annoy Windows users with alien dir separators 2009-04-15 17:19:15 +02:00
con
444a0b0e1e Fixes: subdir.file not supported
Task:     247566
RevBy:    dt
2009-03-12 15:11:27 +01:00
hjk
12018c89d6 Fixes: simplify ProjectExplorerPlugin::instance() access 2009-03-04 09:38:01 +01:00
hjk
8ca887aae2 Fixes: change file license headers to include LGPL 2009-02-25 09:15:00 +01:00
Thorbjørn Lindeijer
6adecf3767 Avoid going through ICore when it's not necessary
Many singletons have their own instance() method, in which case there is
no need to use ICore::instance() to get access to them.
2009-01-21 15:55:33 +01:00
hjk
897c05f57c replace Core::ICore::instance()->pluginManager() by ExtensionSystem::PluginManager::instance() 2009-01-20 15:31:33 +01:00
hjk
113b81e9db replace ExtensionSystem::PluginManager::instance()->getObject<Core::ICore>() by Core::ICore::instance() 2009-01-20 11:52:04 +01:00
Thorbjørn Lindeijer
0728e78afb Reintroduced a way to edit project dependencies
Dependencies between projects can now be edited in the Projects mode.
You can simply check for each project the projects that it depends on,
and they will be built first. A message box pops up when you try to
create a circular dependency.

Could use some testing.
2009-01-16 16:44:25 +01:00
hjk
266ee2a468 remove ProjectExplorerInterface and ExtensionSystemInterfaces files 2009-01-14 15:08:46 +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
hjk
342caa2141 some more whitespace changes 2008-12-09 11:07:24 +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