From 2a240b8fab4f06bb0305c722c039f8e293cc0653 Mon Sep 17 00:00:00 2001 From: hjk Date: Wed, 22 Oct 2014 10:00:07 +0200 Subject: [PATCH] Make DeviceKitInformation available to macro expander Change-Id: I49344683f2a5d80d6191e996161d70cd9fe5e2dd Reviewed-by: Tobias Hunger --- .../projectexplorer/kitinformation.cpp | 27 +++++++++++++++++++ src/plugins/projectexplorer/kitinformation.h | 2 ++ 2 files changed, 29 insertions(+) diff --git a/src/plugins/projectexplorer/kitinformation.cpp b/src/plugins/projectexplorer/kitinformation.cpp index c8a52ef159f..0547866d0be 100644 --- a/src/plugins/projectexplorer/kitinformation.cpp +++ b/src/plugins/projectexplorer/kitinformation.cpp @@ -40,7 +40,10 @@ #include #include +#include + #include +#include #include #include @@ -418,6 +421,30 @@ KitInformation::ItemList DeviceKitInformation::toUserOutput(const Kit *k) const return ItemList() << qMakePair(tr("Device"), dev.isNull() ? tr("Unconfigured") : dev->displayName()); } +void DeviceKitInformation::addToMacroExpander(Kit *kit, Utils::MacroExpander *expander) const +{ + expander->registerVariable("Device:HostAddress", tr("Host address"), + [kit]() -> QString { + const IDevice::ConstPtr device = DeviceKitInformation::device(kit); + return device ? device->sshParameters().host : QString(); + }); + expander->registerVariable("Device:SshPort", tr("SSH port"), + [kit]() -> QString { + const IDevice::ConstPtr device = DeviceKitInformation::device(kit); + return device ? QString::number(device->sshParameters().port) : QString(); + }); + expander->registerVariable("Device:UserName", tr("User name"), + [kit]() -> QString { + const IDevice::ConstPtr device = DeviceKitInformation::device(kit); + return device ? device->sshParameters().userName : QString(); + }); + expander->registerVariable("Device:KeyFile", tr("Private key file"), + [kit]() -> QString { + const IDevice::ConstPtr device = DeviceKitInformation::device(kit); + return device ? device->sshParameters().privateKeyFile : QString(); + }); +} + Core::Id DeviceKitInformation::id() { return "PE.Profile.Device"; diff --git a/src/plugins/projectexplorer/kitinformation.h b/src/plugins/projectexplorer/kitinformation.h index 243155fb197..cdaa7463dd7 100644 --- a/src/plugins/projectexplorer/kitinformation.h +++ b/src/plugins/projectexplorer/kitinformation.h @@ -158,6 +158,8 @@ public: ItemList toUserOutput(const Kit *k) const; + virtual void addToMacroExpander(ProjectExplorer::Kit *kit, Utils::MacroExpander *expander) const; + static Core::Id id(); static IDevice::ConstPtr device(const Kit *k); static Core::Id deviceId(const Kit *k);