Commit Graph

182 Commits

Author SHA1 Message Date
hjk
71c6d4d771 ProjectExplorer: Using function objects for kit matching
Change-Id: I377298385df345a6d30217bb018964a64897d42e
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-25 14:28:45 +02:00
Fawzi Mohamed
6763352340 qmljs: move defaultProjectInfoForProject to the qmljs library
This removes qmakeprojectmanager and qmlprojectmanager dependency on
qmljstools.
Qmlprojectmanager still imports qmltoolsconstants.h for a constant
but that gives no runtime dependency.

Change-Id: Ifd2e76500a3b27a21937603925f03a70049900e1
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-24 16:54:42 +02:00
Tobias Hunger
8d5e4b32a8 Project: Use Utils::FileName as return type for projectFilePath()
Change-Id: If304d5e95cd9ac714100abaae35d60e3e1050eb2
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2014-05-06 11:30:45 +02:00
Fawzi Mohamed
d24cb60d48 qml: moving most of ModelManager logic to ModelManageInterface
Currently ModelManager contains lot logic, but as it sits in QmlJSTools
it is not possible to use it in standalone tests.
Moving most of the logic to ModelManagerInterface (and cleanup)
to allow better testing, and refactoring.
This introduces a dependency of the qmljs lib on the cplusplus lib
Also a (small) part of the CppTool::ModelManagerInterface has been
moved to CPlusPlus::CppModelManagerBase to remove the dependency on
CppTools to gather the Qml types exposed from C++.

Change-Id: Icad7fe96dfd0f1a2b1058d82bd98c77c40aa5e9d
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2014-02-19 21:18:58 +01:00
Eike Ziller
236ea9efb9 Merge remote-tracking branch 'origin/3.0'
Conflicts:
	share/qtcreator/debugger/dumper.cpp
	share/qtcreator/debugger/dumper_p.h
	share/qtcreator/debugger/test/main.cpp
	src/plugins/debugger/gdb/classicgdbengine.cpp
	src/plugins/debugger/gdb/pythongdbengine.cpp
	src/plugins/debugger/lldblib/guest/lldbengineguest.cpp
	src/plugins/debugger/lldblib/guest/lldbengineguest.h
	src/plugins/debugger/lldblib/guest/main.cpp
	src/plugins/debugger/lldblib/ipcengineguest.cpp
	src/plugins/debugger/lldblib/ipcengineguest.h
	src/plugins/debugger/lldblib/ipcenginehost.cpp
	src/plugins/debugger/lldblib/ipcenginehost.h
	src/plugins/debugger/lldblib/lldbenginehost.cpp
	src/plugins/debugger/lldblib/lldboptionspage.cpp
	src/plugins/qbsprojectmanager/qbsstep.cpp
	src/plugins/qbsprojectmanager/qbsstep.h
	src/plugins/qmlprofiler/canvas/qdeclarativecanvas.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativecanvas_p.h
	src/plugins/qmlprofiler/canvas/qdeclarativecontext2d.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativecontext2d_p.h
	src/plugins/qmlprofiler/canvas/qmlprofilercanvas.cpp
	src/plugins/qnx/blackberrycheckdevmodestep.cpp
	src/plugins/qtsupport/debugginghelper.cpp

Change-Id: Ie9fd0a885fb6264a6a8a72daee071b75bcbd2e9d
2014-01-08 11:01:06 +01:00
Robert Loehning
746c5d8863 Incremented year in copyright info
Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-01-08 08:29:47 +01:00
Eike Ziller
4538ccb46c Merge remote-tracking branch 'origin/3.0'
Conflicts:
	share/qtcreator/debugger/gdbbridge.py

Change-Id: I32d8158c475f927b50ef06fde9ab8189ebdbcbbc
2013-11-15 10:26:57 +01:00
Orgad Shaneh
4442a92729 Braces cleanup
Change-Id: I8413252c90a1487d291f15d92837c30ab697b245
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-14 08:13:52 +01:00
Eike Ziller
49b7e95e7f Merge remote-tracking branch 'origin/3.0'
Conflicts:
	qtcreator.pri
	qtcreator.qbs

Change-Id: I91b9ceba836d01086e9ccdb4499436d17195b729
2013-11-06 14:02:08 +01:00
Kai Koehne
fbd3f73594 QmlProject: Update code model if kit configuration changes
Update code model if e.g. the Qt version in the active kit changes.

Task-number: QTCREATORBUG-10656
Change-Id: I4263833c23c2b00035d15faa9725adbb734f8366
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-11-06 13:17:15 +01:00
hjk
f463c4dade ProjectExplorer: Make Project::id value based
Change-Id: Ie210d2a068158c6caaac66aae58cbd886f61c18d
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-10-14 13:35:59 +02:00
hjk
f9aa1207d2 ProjectExplorer: Clean up KitsManager API
Change-Id: Ib0b11918fbae9577928b6209a913afb3eccc48b5
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-09-11 16:25:22 +02:00
hjk
527046acc2 MessageManager: General cleanup.
Apply 'static' pattern, rename 'printToOutputPane' to 'write'

Change-Id: I6f31f1a8c914661e2a2182c0b6256b41ead28de7
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-09-05 12:51:00 +02:00
Tobias Hunger
d18b61b85d Core::Id: Remove some explicit casts to Core::Id
Change-Id: Ibe505c8331f7d1280fdb8784a00321742f5d94cb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-03 11:57:23 +02:00
hjk
e520c38f41 Core: Remove deprecated accessors
Also adjust user code.

Change-Id: I60935942a7012e6a0d6091ffbc89d69289366e35
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-08-30 11:25:59 +02:00
Tobias Hunger
95859289b8 KitManager: Use static API as other singletons do
Change-Id: Ia49c6552a5aae72870687ef9c64f2642fbe24155
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-21 16:55:16 +02:00
Thomas Hartmann
e7f81afc4f QmlProjectManager: removing declarative dependency
We can parse the .qmlproject files without using the declarative module.

Change-Id: I78a910c9ec9477f5c6fbcdca23f62ab841ca4368
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-08-06 12:50:10 +02:00
Tobias Hunger
5422b2c4da Introduce Project::projectFilePath()
Use it instead of retrieving this information from the document.

Change-Id: I809fcb2daf59021cf503c371a5d40d75d7448796
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-08-01 11:42:41 +02:00
Eike Ziller
dd43d9908f Rename IDocument::fileName --> filePath
That is what it actually is, wrt how Qt API calls it.

Change-Id: Ied02055debf6aad75556b0d9d22e8ba2f72be555
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-07-09 13:51:42 +02:00
Oswald Buddenhagen
6fb94a7b10 Merge branch '2.7'
Conflicts:
	doc/src/qtquick/qtquick-components.qdoc
	doc/src/qtquick/qtquick-designer.qdoc
	qtcreator.pri
	qtcreator.qbs
	src/plugins/cppeditor/cppinsertdecldef.cpp
	src/plugins/qnx/qnxruncontrolfactory.cpp

Change-Id: I0a37a07c42719bc0d9ef5b3ac4641d01a63c0d88
2013-05-15 10:21:47 +02:00
Kai Koehne
32a0acb1cf QmlProject: Update code model when target changes
Change-Id: Ia8008748fb4d35507729c6ae684913e8bf72c985
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2013-05-07 08:46:42 +02:00
Friedemann Kleint
7377f4f515 Clean headers in QmlProjectManager.
Ran script to remove inludes on a trial-and-error basis and
manually corrected it.

Change-Id: I2d1d2ec5a3071de9d2a0a03bc69ec653becc7f85
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-04-09 09:12:23 +02:00
Tobias Hunger
75691393ec Project: Set QML/C++ languages where both are possible
Change-Id: I4bc5bd7a644c48dfa529f9f9f6052e401de76d40
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-04-05 14:56:59 +02:00
Christian Kandeler
f4a0cbf6c0 Fix gcc warnings about unused variables.
These appear when compiling in release mode.

Change-Id: I76ee3b1b8d728fd839d713ee4f914b6965851b99
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-03-25 13:52:45 +01:00
Daniel Teske
547a57e7eb QmlProject: Adjust to MessageManager api change
Change-Id: I4167939dea502b94efa61182c5a0aff56e9b3761
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-03-22 13:49:32 +01:00
Kai Koehne
607b1ec4a6 QmlProject: Select matching kit when loading .qmlproject file
Find Desktop kit that matches detected QtQuick import, and has
a viewer.

Task-number: QTCREATORBUG-8900
Change-Id: I3d32dbc7a304dbeb36647dd4de9864e665f5a59f
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-03-07 16:51:41 +01:00
Fawzi Mohamed
942326ae9b qmljs: add infrastructure handling qml dialects better
QmlBundles enables us to treat the different qml
dialects differently.

Add imports completion.

Change-log: [Qml/JS Support] Corrected handling of QtQuick2 only features.
Change-log: [Qml/JS Support] Added import completion in editor.
Task-number: QTCREATORBUG-8750
Task-number: QTCREATORBUG-8624
Task-number: QTCREATORBUG-8584
Task-number: QTCREATORBUG-8583
Task-number: QTCREATORBUG-8429

Change-Id: I1384b1b23136a85b4d077895ea86f92960da9e71
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-02-21 17:22:16 +01:00
Aurindam Jana
5cf11e2bbd Qml Debugging: Default option for Qt Quick application
Qt Quick applications should have Qml Debugging enabled
by default.

Task-number: QTCREATORBUG-8208
Change-Id: I794249567b15071098f0ac8ba5f2a8e5f2be4ffb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-02-20 21:03:23 +01:00
Oswald Buddenhagen
1fda2111d4 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	src/plugins/autotoolsprojectmanager/AutotoolsProjectManager.pluginspec.in
	src/plugins/debugger/qtmessageloghandler.cpp
	src/plugins/debugger/qtmessagelogwindow.cpp
	src/plugins/madde/maemodeployconfigurationwidget.cpp
	src/plugins/qmldesigner/components/integration/designdocumentcontroller.cpp
	src/plugins/qmldesigner/designercore/include/widgetqueryview.h
	src/plugins/qmldesigner/designercore/metainfo/metainfoparser.cpp
	src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.cpp
	src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.h
	src/plugins/qmlprojectmanager/qmlprojectapplicationwizard.cpp
	src/plugins/qnx/bardescriptormagicmatcher.h
	src/plugins/qt4projectmanager/profilekeywords.cpp
	src/plugins/remotelinux/deployablefilesperprofile.cpp
	src/plugins/remotelinux/deployablefilesperprofile.h
	src/plugins/remotelinux/deploymentinfo.cpp
	src/plugins/remotelinux/deploymentsettingsassistant.cpp
	src/plugins/remotelinux/profilesupdatedialog.cpp
	tests/auto/icheckbuild/ichecklib.cpp
	tests/auto/icheckbuild/parsemanager.cpp
	tests/auto/icheckbuild/parsemanager.h

Change-Id: Ie465a578446a089e1c502d1cb1096e84ca058104
2013-01-31 16:25:33 +01:00
Robert Loehning
298531e370 Incremented year in copyright info
Change-Id: Ic6a9ff0359625021ebc061d22db6811814534205
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-01-29 16:27:03 +01:00
Kai Koehne
a1ef043bfb QmlProject: Detect import type from mainFile
Detect the default import (QtQuick 1.x vs QtQuick 2.x) from main
file, and use it to restrict kits + select the right runtime.

Task-number: QTCREATORBUG-8358
Change-Id: Ib8cfd3eb989953f607fee6043c43e588f798c774
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-01-21 15:20:37 +01:00
Thomas Hartmann
b09f0c61cf QmlProject: fixing QML import path for .qmlproject
The code is similar to what we do in Qt4Node.

Change-Id: I4f206f8acdb38d7813160a7ecabc1ffd5daedcfb
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2013-01-14 17:43:49 +01:00
Orgad Shaneh
29a93998df Remove braces for single lines of conditions
#!/usr/bin/env ruby

Dir.glob('**/*.cpp') { |file|
  # skip ast (excluding paste, astpath, and canv'ast'imer)
  next if file =~ /ast[^eip]|keywords\.|qualifiers|preprocessor|names.cpp/i
  s = File.read(file)
  next if s.include?('qlalr')
  orig = s.dup
  s.gsub!(/\n *if [^\n]*{\n[^\n]*\n\s+}(\s+else if [^\n]* {\n[^\n]*\n\s+})*(\s+else {\n[^\n]*\n\s+})?\n/m) { |m|
    res = $&
    if res =~ /^\s*(\/\/|[A-Z_]{3,})/ # C++ comment or macro (Q_UNUSED, SDEBUG), do not touch braces
      res
    else
      res.gsub!('} else', 'else')
      res.gsub!(/\n +} *\n/m, "\n")
      res.gsub(/ *{$/, '')
    end
  }
  s.gsub!(/ *$/, '')
  File.open(file, 'wb').write(s) if s != orig
}

Change-Id: I3b30ee60df0986f66c02132c65fc38a3fbb6bbdc
Reviewed-by: hjk <qthjk@ovi.com>
2013-01-08 10:48:18 +01:00
Eike Ziller
a8a33b9a3b Merge remote-tracking branch 'origin/2.6'
Conflicts:
	src/plugins/qt4projectmanager/qt4buildconfiguration.cpp
	src/plugins/qtsupport/baseqtversion.cpp

Change-Id: I288eeb1137e1b08d6c0d69f394cbb0fe1a937b68
2012-12-14 08:20:49 +01:00
Fawzi Mohamed
e41d5c9a09 qmljs: add qt5 qmlpath to code model paths
Change-Id: Ie0fd6f74818def859ab5bcb6fa104c4eec1b67fb
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-12-12 11:40:51 +01:00
Eike Ziller
f43e6ca7ad Merge remote-tracking branch 'origin/2.6' 2012-12-05 10:39:22 +01:00
Kai Koehne
f0d5ad714e QmlProject: Don't add Qt import on command line
Actually this can lead to crashes if passing the QtQuick1 import
path to qmlscene.

The removed code was introduced in 404186a919. However,
the Qt import path for the code model is also added in
QmlProject::refresh().

Task-number: QTCREATORBUG-8365
Change-Id: I8581ce3d67c83c0f27d7b8aefedf9765935bedbc
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2012-12-03 16:36:09 +01:00
Daniel Teske
e08b38ffd6 Move Project::subConfigWidgets to BuildConfiguration
Change-Id: Idf58ebbb02e9cd0ab4ff7e74fbed17250e274693
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2012-11-16 14:40:00 +01:00
Daniel Teske
6e72163b40 QmlProject: Enable runconfiguratons after restore
Task-number: QTCREATORBUG-7980

Change-Id: I180bfc999421a13f25f41487d7498f652432b1c5
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-10-17 13:11:31 +02:00
Daniel Teske
558a4e4c97 QmlProjectRunConfiguration: update enabled state on adding to a project
Task-number: QTCREATORBUG-7980

Change-Id: I63fa4809772ce2f7169baf3270fe753b22ea4a04
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-10-16 14:00:34 +02:00
hjk
386ca7c8dd Adjust license headers
Change-Id: Ice592c6de9951ee3b2c4cb52ed0bb3b6770e0825
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2012-10-05 17:12:56 +02:00
Daniel Teske
a8d0b04f49 Show incompatible kits in Add Kit
And implement a tooltip for them

Task-number: QTCREATORBUG-7870
Change-Id: I4975dd24ca2b619ebcbd0393f97311590ed4930f
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-21 15:57:44 +02:00
Orgad Shaneh
4ef2fbd4ce Profile -> Kit variable renaming
Change-Id: I6cc06684134030bd527d9dcce21ad17938a56927
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2012-09-11 17:08:52 +02:00
Tobias Hunger
8ba422d07c s/profile/kit/
* Rename profiles to kits.
* Update some strings:
   * projects mode has a Kits tab, not a Targets tab.
   * " Settings" was dropped from the sub-tabs of the Kits tab
   * menu entry "Build/Open Build/Run Target Selector" was renamed
     to "Build/Open Build and Run Kits Selector".
   * Use "Kit" instead of "Target" in miniprojecttargetselector.
     (The class was not renamed as it does indeed select targets,
      not kits)

Change-Id: I0727e086e2dfa0e8aaaf89fdc6f2e3596c7a4314
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-09-04 15:24:25 +02:00
Tobias Hunger
cac2819838 Fix crashes when no default profile is set
* Handle 0 when calling createTarget to avoid the crashes in the first place
* Do not try to create/add targets for 0 profiles to avoid creator writing
  a warning to the console
* Fix possible crashes in debugger when no default profile is set.

Task-number: QTCREATORBUG-7695
Change-Id: I9afc8e29c8b859ad078dad794ef5017168daac78
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-08-13 14:22:46 +02:00
hjk
6a7cf405bd rename QtDebug to QDebug
More uniform.

Change-Id: I1c6057981f4c2b3170a4e69f0674fe4caf1143a2
Reviewed-by: Robert Loehning <robert.loehning@nokia.com>
2012-08-06 14:55:08 +02:00
Eike Ziller
e0e8cf3ada Contact -> qt-project.org
Change-Id: I7134d7de30bcf9f9dcfad42520dd45ee083a852d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-19 13:23:21 +02:00
Oswald Buddenhagen
5e596e89d0 introduce qmakeProperty(), use instead of versionInfo() where applicable
the idea is to encapsulate accesses to specific variables.

Change-Id: Icafd2c85de6178db1a492a5dd36dde7f1925ea21
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-07-09 21:15:30 +02:00
Tobias Hunger
2431456216 Profile introduction
Introduce Profiles to store sets of values that describe a system/device.

These profiles are held by a target, getting rid of much of the information
stored in the Build-/Run-/DeployConfigurations, greatly simplifying those.

This is a squash of the wip/profile branch which has been on gerrit for a
while, rebased to current master.

Change-Id: I25956c8dd4d1962b2134bfaa8a8076ae3909460f
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-06-21 12:08:12 +02:00
Eike Ziller
e3c354d8f2 Make PluginManager mostly static.
Change-Id: Ib938aa4999c7c418a82304c5cca2e8748ef9d228
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-19 16:11:40 +02:00