1. 12 Dec, 2017 40 commits
  2. 08 Dec, 2017 40 commits
    • hjk's avatar
      ProjectExplorer/all: Re-organize BuildSteps/{Deploy,Build}Config setup · 53a15107
      hjk authored
      This follow the rough pattern of recent *RunConfigurationFactory changes
      for build and deploy configurations.
      
      - Collapse the two lines of constructors similar to what
        890c1906 did for RunConfigurations
        * Deploy* was purely mechanical
        * Build* ctors are split in connects() in the ctor body
          to create "empty shell for clone" etc
          and build step additions in initialize() functions which
          are only used in the create() case.
        -- Allows to collapse the shared 'ctor()' functions, too.
      
      - Move FooBuildConfigurationFactory::create() implementations
        to FooBuildConfiguration() constructor. That was a strange
        and unneeded ping-pong between factories and objects, and
        furthermore allows one level less of indirection (and for a
        later, left out here, some reduction of the
        FooBuildConfiguration interfaces that were only used to
        accommodate the *Factory::create() functions.
      
      - Most {Build,Deploy}Configuration{,Factory} classes had a canHandle(),
        but there wasn't one in the base classses. Have one there.
      
      - Most canHandle() functions were checking simple restrictions on
        e.g. project or target types, specify those by setters in the
        constructors instead and check them in the base canHandle()
      
      - clone() is generally replaced by a creation of a "shell object"
        and a fromMap(source->toMap()), implemented in the base, there
        are two cases left for Android and Qbs that needed(?) some extra
        polish
      
      - generally use canHandle() in base implementation, instead
        of doing that in all Derived::canFoo()
      
      - as a result, canCreate/create/canClone/clone reimplementations
        are not needed anymore, keep the base implementation for
        now (could be inlined into their only users later), but
        de-virtualize them.
      
      - Combine Ios{Preset,DSym}BuildStepFactory. There was only one
        'dsym' build step they could create.
      
      - Split the 'mangled' id into the ProjectConfiguration subtype
        specific constant identifier, and a QString extraId() bit.
        Only maintain the mangled id in saved settings.
      
      - Make ProjectConfiguration::m_id a constant member, adapt
        all constructors of derived classe.
      
      Not done in this patch:
      
      - Finish possible cosmetic changes on top
      
      - Add a way to specify restrictions to supported Qt versions
        (used in Android/Ios), as the base implementation does not
        depend on the qtsupport plugin
      
      - Combine the QList<X> availableFoo() + createFoo(X) function
        pairs to somthing like a direct
         QList<struct { X; std::function<X()>; }> fooCreators()
        to avoid e.g. the baseId.withSuffix() <-> id.suffixAfter(base)
        pingpong
      
      - Remove the *Factories from the global object pool
      
      - Do something about priority(). Falling back to plain
        qmake in android+qmake setup is not helpful.
      
      Change-Id: I2be7d88d554c5aa8b7db8edf5b93278e1ae0112a
      Reviewed-by: Tobias Hunger's avatarTobias Hunger <tobias.hunger@qt.io>
      53a15107
    • Tobias Hunger's avatar
      Session: Remove projectContainsFile · 9d3c5c6f
      Tobias Hunger authored
      Use Project::isKnownFile instead.
      
      Change-Id: If69e413e4603fe6d7dc359ecd55d6233d9a3a642
      Reviewed-by: Eike Ziller's avatarEike Ziller <eike.ziller@qt.io>
      9d3c5c6f
    • Tobias Hunger's avatar
      Session: Get rid of cache of all project file names · 43f57d3f
      Tobias Hunger authored
      Make the project responsible to provide information on which files
      belong to it instead.
      
      Change-Id: I80accf9104af33eaffc6b8f3e6024e9725697d37
      Reviewed-by: Eike Ziller's avatarEike Ziller <eike.ziller@qt.io>
      43f57d3f
    • Tobias Hunger's avatar
      ProjectExplorer: Make subscriptions more robust · 7df3bff0
      Tobias Hunger authored
      Make sure not to continue to connect after the receiver was destructed
      and make sure to disconnect from everything when that happens.
      
      Task-number: QTCREATORBUG-19391
      Change-Id: I4d09a7dca2a5260c3d4744607dccbde5964a0623
      Reviewed-by: Eike Ziller's avatarEike Ziller <eike.ziller@qt.io>
      7df3bff0
    • Tobias Hunger's avatar
      Project: Make Project::file take a std::function to match files · f542e24e
      Tobias Hunger authored
      Make Project::files take a standard function to match files with instead
      of an enum (and a std::function).
      
      Change-Id: I6a24e40dba0e972ff96c0a57e775d2377e2545e0
      Reviewed-by: default avatarhjk <hjk@qt.io>
      Reviewed-by: Eike Ziller's avatarEike Ziller <eike.ziller@qt.io>
      f542e24e
    • Tobias Hunger's avatar
      Project: Make Project::files return a FileNameList · 18f38ff1
      Tobias Hunger authored
      Change-Id: I75ceb22ac65b8288d824f229d44089cba6fc8ea3
      Reviewed-by: Eike Ziller's avatarEike Ziller <eike.ziller@qt.io>
      18f38ff1
    • Ulf Hermann's avatar
      KitManager: Check availableCreationIds before asking for displayName · e6fb9f08
      Ulf Hermann authored
      device factories will generally QTC_ASSERT when asked for IDs they don't
      support. When asked for IDs they do support they should provide a
      non-empty display name, though.
      
      Change-Id: I1439fa7bec1791979dfdf28a6ee70e2e77ec8381
      Reviewed-by: default avatarhjk <hjk@qt.io>
      Reviewed-by: Tobias Hunger's avatarTobias Hunger <tobias.hunger@qt.io>
      e6fb9f08
  3. 06 Dec, 2017 40 commits
  4. 05 Dec, 2017 40 commits
  5. 30 Nov, 2017 40 commits
    • Eike Ziller's avatar
      Add "Rename" to file system view · 0c9c747d
      Eike Ziller authored
      Renames the file on disk, notifies editors, and tries to change the file
      in all open projects that had it (and support renaming).
      
      Task-number: QTCREATORBUG-19209
      Change-Id: I165e9468c7235f9f503a3820bda3eb00f3c086d0
      Reviewed-by: Tobias Hunger's avatarTobias Hunger <tobias.hunger@qt.io>
      0c9c747d
    • Tobias Hunger's avatar
      SettingsAccessor: Add setters to VersionUpgrader · ee834b7e
      Tobias Hunger authored
      Add setters to VersionUpgrader and use them. This shortens the
      implementation classes a bit.
      
      Change-Id: I5ffe6f085752bf39bbcb08c286844cc1088eeea5
      Reviewed-by: Marco Bubke's avatarMarco Bubke <marco.bubke@qt.io>
      ee834b7e
    • hjk's avatar
      Introduce a ChannelProvider run worker · 19d93d29
      hjk authored
      ... to provide a set of urls indicating usable connection
      points for 'server-using' tools (typically one, like gdbserver
      and the Qml tooling, but two for mixed debugging).
      
      Urls can describe local or tcp servers that are directly
      accessible to the host tools, if needed port forwarding
      could be set up when needed.
      
      Use it as new base for GdbServerPortsGatherer for starters.
      
      Note: Since none of the customization points for actual port
      forwarding are currently provided by device implementations
      only non-forwarding cases are working right now. Incidentally
      this does not affect existing setups, as the only case where
      it would be needed (Android/adb) have a complete custom
      implementation. The medium-term plan there is of course to use
      this new setup here and have the AndroidDevice implementation
      only provide the forwarding, not the whole debugging (etc...)
      
      Change-Id: I42c9783348cd430b1c435bbca56329c678ac485c
      Reviewed-by: Ulf Hermann's avatarUlf Hermann <ulf.hermann@qt.io>
      19d93d29
  6. 28 Nov, 2017 40 commits
  7. 27 Nov, 2017 40 commits
  8. 24 Nov, 2017 40 commits
  9. 22 Nov, 2017 40 commits
  10. 20 Nov, 2017 40 commits
  11. 17 Nov, 2017 40 commits
  12. 16 Nov, 2017 40 commits