Commit Graph

150 Commits

Author SHA1 Message Date
Daniel Teske
19e0215494 UnconfiguredPanel: Ensure that "Return" on initial show accepts
Task-number: QTCREATORBUG-12827
Change-Id: Ie68228433b8c76f48361ed642f932ded0d7f2b72
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-08-31 13:58:20 +02:00
hjk
15fcdabc1d ProjectExplorer: Further clean up of IProjectPanelFactory
Rename to ProjectPanelFactory, hide list of factories from .h,
rename include guards.

Change-Id: I2e0befcaf847e5c3a0b493b58e7bcf3e9263f4f9
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2014-07-28 15:27:08 +02:00
Daniel Teske
e83847d7f0 IProjectPanelFactores: Use own registration method instead of object pool
Change-Id: I8bfe793e5b5f2ebbb953c986249e4d30261b5e24
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-28 12:38:11 +02:00
Daniel Teske
3d4caa3908 ProjectExplorer: Fix Project::displayName changes
The only project manager that actually sometimes changes the displayname
is the cmake project manager. And that one failed to emit the right
signal. And since the signal was never emitted a few places handled the
signal wrongly.

Change-Id: I4aa75dc3032efe49263143dbadb7585a378b9be9
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-22 16:51:47 +02:00
Daniel Teske
895207be18 ProjectWindow: Remove unnecessary code
Since projects without targets are special, this code apparently tracked
if hasTarget() changed due to a kitUpdate. But we are already connected
to targetRemoved() and checks whether a project has no target anymore.

Thus this code is redundant and can be removed.

Change-Id: I245887075509ed4c0ecda383de0227ccbc58b9af
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-22 16:51:43 +02:00
Daniel Teske
66757653ff ProjectExplorer: Remove ITargetPanelFactory
The indirection via a factory is no longer useful, since the
targetsettingspanel is hardcoded for a build and run panel.

Change-Id: I75543f777a4a7df4cadf12667652424056829689
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-22 16:51:33 +02:00
Daniel Teske
1e12e53e0d ProjectWindow: Remove special handling for TargetSettingsPanelWidget
Instead hide it in a standard IProjectPanelFactory

Change-Id: I7e49b7be00e26c5f33e32d692079e2b82cbfe087
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-22 16:51:30 +02:00
Daniel Teske
137a2d63bb Move Code from ProjectWindow to IProjectProperties
Change-Id: Ib2ad82c8bbbb62dd72b3a2497a7e213206613654
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-22 16:51:24 +02:00
Daniel Teske
2f32457d04 Move PanelsWidget and PropertiesPanel to their own files
Change-Id: I6d5442fb42727fd3fa0a841800cbf55c5ec494f0
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-22 16:51:19 +02:00
Daniel Teske
96d9f05fad ProjectExplorer: Remove IPanelFactory
This was the common base class of IProjectPanelFactory and
ITargetPanelFactory. Nothing was using the IPanelFactory interface, and
there's actually no common interface between those classes.

Of the old interface IPanelFactory:
id() => only used in ITargetPanelFactory
displayName() => only used in IProjectPanelFactory
priority() => only used in IProjectPanelFactory

This removes lots of boiler plate code for the unused functions.

Change-Id: I8488a4e5134fd451907f02c45b7847673e4dc714
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-22 16:40:52 +02:00
Daniel Teske
b1f2c6e352 ProjectWindow: Move handling of subTargetIndex to TargetSettingsPanel
The TargetSettingsPanelWidget wants to keep whether the Build or Run tab
is shown synchronized between projects. Moving the code to
TargetSettingsPanelWidget removes some of the special handling
ProjectWindow does.

Change-Id: Ic4e85b6458a1271ea2de4d8c5786e95d3a78fbbd
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-22 16:20:55 +02:00
Daniel Teske
44fee41e62 ProjectWindow: Add missing check on requiresTargetPanel
Change-Id: I83de8167ca0075d013efa074a9d8b6438f1873c0
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-21 11:30:24 +02:00
Daniel Teske
29ca1a5b67 Project: Rename supportsNoProjectTargetPanel to requiresTargetPanel
Just a better name.

Change-Id: I6f3ab3fe6e8f565105a770b8bf8fd198ed6c799f
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-21 11:30:15 +02:00
Daniel Teske
611d0016dd ProjectWindow: Remove dead code
The ProjectWindow page gets all objects of type IProjectPanelFactory
from the object pool. Since ITargetPanelFactory is not derived from
IProjectPanelFactory, the removed qobject_cast can never work.

Change-Id: I52186e33e1992dc3556fcb2900719e9a8158da39
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-07-21 11:30:10 +02:00
jkobus
ee36b04963 Fix a crash on session switch
Done by Daniel

Task-number: QTCREATORBUG-12613
Change-Id: I716c1b73cd7e0c934b8b2e3090af1de4d987a191
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2014-07-03 17:12:07 +02:00
Nikita Baryshnikov
12103e0f67 Reinvent deprecated qSort as Utils::sort
Change-Id: I4f6011cc2b6127037249aabc2426a88ad7108ebf
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-06-19 14:00:32 +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
Lorenz Haas
ac70c168da Optimize usage of QPalette
setPalette() does not replace the old one but rather adds the
difference. Thus a previous copy of the palette is unnecessary.

Change-Id: I5c06da456b76144efc4a984ccda13c7d2243a7bc
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-02-21 08:53:28 +01:00
Daniel Teske
e8cc4e2186 ProjectMode: Set only maximum width instead of fixed width
Seems to be a improvement in resizing behavior.

Task-number: QTCREATORBUG-11286
Change-Id: Iac19a76265c98861e4da9d23c3e5fb3a36f0386e
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-29 16:33:04 +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
Tobias Hunger
5caf64e276 ProjectWindow: Do not listen for Kit updates during shutdown
The SessionManager is disconnected at that point already, so we were
never told that projects were destructed already and were happily
calling into those.

This fixes the crash described in QTCREATORBUG-10354.

Task-number: QTCREATORBUG-10354
Change-Id: Ib8ce07d6db38dbff9154b127f5fb620a9961c742
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-10-16 14:53:43 +02:00
hjk
aadb6f16af SessionManager: Apply 'static' pattern
Change-Id: I370f72fcf7a24216ee189979ce6b5c8bfc5f4140
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-09-05 12:28:12 +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
Friedemann Kleint
92207c96b7 Clean headers in ProjectExplorer.
Change-Id: If61a8a91d2a39c5c97974a5bfcef91892b68d3f1
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-03-26 12:37:29 +01:00
Daniel Teske
2fddc1ed0a ProjectWindow: Fix hardcoded color for panel title
Task-number: QTCREATORBUG-8930

Change-Id: I5db64abb91ab6657de811a4238692424026783f8
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-03-12 13:50:29 +01:00
Tobias Hunger
94d813faab Fix projectwindow layout
We no longer have the spacer in the layout, so we do not need to
subtract that one.

Change-Id: If14e6765c4e1dda2245b0686c006db69f5b5ced0
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-03-07 12:22:58 +01:00
Tobias Hunger
c1b86386cd ProjectMode: Stop DetailsWidgets from becoming too big
Change-Id: Icf0a882dbccff61b449af64cb001a4583675df42
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-02-25 15:28:44 +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
hjk
386ca7c8dd Adjust license headers
Change-Id: Ice592c6de9951ee3b2c4cb52ed0bb3b6770e0825
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2012-10-05 17:12:56 +02:00
Tobias Hunger
e77bb8af04 Handle non-qmake projects without kits
Make it possible to add kits again after all kits were removed
from a non qmake project.

Task-number: QTCREATORBUG-7814
Change-Id: I38967cd4c106b95288b7020fe325d8cfe2688a7c
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-09-07 14:20:48 +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
Eike Ziller
7c7477eedc Show target page (in project mode) even if project only has one target.
The distinction doesn't really make sense anymore.
This is also a prerequisite for
1. adding a "manage" button for managing targets to the target page, and
2. using the "add" button to import builds even for "configured"
projects

Change-Id: Ib8287dc7d11efa84c54933a591ef15a76042318f
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2012-08-07 15:29:36 +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
Daniel Teske
440f0c2b0a Remove warning
Somehow didn't correctly amend the last commit

Change-Id: I004f70e810df9b8501e81d7e847933472fc35ebf
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-07-16 15:14:25 +02:00
Daniel Teske
fba821f5c1 Project mode: Fix crash on removing the last profile
Change-Id: I0624e52a9fd176847a42a1a3379ceabc0f03661c
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-07-16 13:09:23 +02:00
Tobias Hunger
420fd035ab Remove some useless lines
Change-Id: Ib64fa3f0ba1b020077440d14390872bedfae76e2
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-06-21 12:08:39 +02:00
Tobias Hunger
88d2efcbeb Whitespace Changes
Change-Id: I5cafe8a659090d7e6f7afeeac0c103f98085bda3
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-06-21 12:08:21 +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
Daniel Teske
ffd97ce518 Remove connections to removed functions
Change-Id: I9b67ceb19ebcbcdd918a621dc64fbf814339ff06
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-05-03 17:00:50 +02:00
Daniel Teske
aef919b31c ProjectExplorer: Remove todos
Change-Id: I22af9f79feb1b4a1638a3c30b094cce3a06300b6
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-05-03 16:26:38 +02:00
Tobias Hunger
df5dab6382 Use Core::Id in project-related objects
Use Core::Id for all the project related objects in favor of plain
QStrings.

Change-Id: I790ab40cb29899efdb49c413a77609486f52e683
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-04-25 11:49:19 +02:00
Konstantin Tokarev
06010713e2 Update Project's displayName in GUI if it changes after initial load.
Change-Id: I94386102609772897c93a26ce97acb21d155bdf6
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-04-17 09:22:01 +02:00
Daniel Teske
6f45ec97f8 Automatically configure examples opened from the welcome page.
Each example can now provide a list of platforms by the examples manifest
.xml file. This list can control the target configuration of the example
when it is opened in the welcomepage.

Change-Id: I893230fd2850b7a1272db71a7f589044d52041d1
Reviewed-by: hjk <qthjk@ovi.com>
2012-03-09 15:28:28 +01:00
Robert Loehning
b41171c847 Normalized connect()s
Change-Id: Id353ab140a46e06ffc3abf667ab3b234e749e17c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-03-06 12:46:52 +01:00
Daniel Teske
5e635593e4 Rename ITargetFactory::supportedTargetIdsChanged
The supported targets don't change, it is which targets can be created

Change-Id: I0a454281c061457d23f3a9c2ec1d2a6bd6484474
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2012-02-24 12:50:06 +01:00
Daniel Teske
72d466200a ITargetFactory: Make supportedTargetIds() and canCreate() orthogonal
ITargetFactory::supportedTargetIds should return all targets that this
factory can support, regardless of e.g. installed qt versions.

Whereas canCreate() should check the availability of e.g. a qt version.
This makes supportedTargetIds() have the same meaning as
ITargetFactory::supportsTargetId().

Change-Id: I744abb89e441026d6f3f8de21944d780e9b9fa32
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2012-02-21 17:39:30 +01:00
Eike Ziller
d66acb51d0 Rename IFile->IDocument and FileManager->DocumentManager
And adapt the other API respectively.

Change-Id: I1e04e555409be09242db6890f9e013396f83aeed
Reviewed-by: Bill King <bill.king@nokia.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-02-20 13:32:49 +01:00
Daniel Teske
d3f692ca06 Unconfigured Settings Page: Make a few more widgets unfocuseable
To ensure that the focus ends up in the right place.

Task-number: QTCREATORBUG-6908

Change-Id: Ieac8c7322620217af34f143946b827dbff16169b
Reviewed-by: hjk <qthjk@ovi.com>
2012-02-16 16:40:21 +01:00