Skip to content
Snippets Groups Projects
Commit e42d780e authored by Fabian Tërnava's avatar Fabian Tërnava
Browse files

fix designated initializers. Readd missing method from MR

parent b0c7e02a
No related branches found
No related tags found
No related merge requests found
......@@ -22,9 +22,12 @@
#include "SkillManagerMonitorWidgetController.h"
#include <optional>
#include <regex>
#include <string>
#include <SimoxUtility/algorithm/string.h>
#include <RobotAPI/libraries/skills/core/Skill.h>
#include "aronTreeWidget/visitors/AronTreeWidgetConverter.h"
......@@ -35,9 +38,11 @@
#include "aronTreeWidget/modal/text/AronTreeWidgetTextInputModalController.h"
// debug
#include <QAction>
#include <QClipboard>
#include <QDoubleSpinBox>
#include <QGridLayout>
#include <QMenu>
#include <QTextBrowser>
#include <RobotAPI/libraries/aron/converter/json/NLohmannJSONConverter.h>
......@@ -54,6 +59,9 @@
//configSk
namespace armarx
{
const skills::SkillID SkillManagerMonitorWidgetController::SelectedSkill::UNK_SKILL_ID =
skills::SkillID{.providerId = ::std::nullopt, .skillName = skills::SkillID::UNKNOWN};
QPointer<QDialog>
SkillManagerMonitorWidgetController::getConfigDialog(QWidget* parent)
{
......@@ -88,6 +96,38 @@ namespace armarx
// Others
namespace armarx
{
void
SkillManagerMonitorWidgetController::prepareAndRunMenu(const QPoint& pos)
{
QMenu* menu = new QMenu();
// Stop skill
QAction* stopSkillAction = new QAction("Stop Skill", this);
skills::SkillStatus currentStatus =
skillStatusUpdates.at(selectedSkill.skillExecutionId).status;
stopSkillAction->setDisabled(currentStatus == skills::SkillStatus::Aborted ||
currentStatus == skills::SkillStatus::Failed ||
currentStatus == skills::SkillStatus::Succeeded);
QAction* rerunSkillAction = new QAction("Re-run with similar params", this);
menu->addAction(stopSkillAction);
menu->addAction(rerunSkillAction);
connect(stopSkillAction,
&QAction::triggered,
this,
&SkillManagerMonitorWidgetController::stopSkill);
connect(rerunSkillAction,
&QAction::triggered,
this,
&SkillManagerMonitorWidgetController::rerunSkillWithSimilarParams);
// Temporarily disable rerun-skill-Action
rerunSkillAction->setDisabled(true);
// open menu
menu->popup(widget.treeWidgetSkillExecutions->viewport()->mapToGlobal(pos));
}
SkillExecutionInfoTreeWidgetItem*
SkillExecutionInfoTreeWidgetItem::SearchRecursiveForMatch(
SkillExecutionInfoTreeWidgetItem* haystack,
......@@ -255,7 +295,7 @@ namespace armarx
for (auto it = update.begin(); it != update.end();)
{
if (boost::algorithm::to_lower_copy(skills::SkillID::FromIce(it->first).skillName)
if (simox::alg::to_lower(skills::SkillID::FromIce(it->first).skillName)
.find(this->currentSkillSearch.toLower().toStdString()))
{
update.erase(it++);
......@@ -540,10 +580,10 @@ namespace armarx
char hostname[HOST_NAME_MAX];
gethostname(hostname, HOST_NAME_MAX);
skills::SkillExecutionRequest req(selectedSkill.skillId,
"Skills.Manager GUI (hostname: " + std::string(hostname) +
")",
params);
skills::SkillExecutionRequest req{
.skillId = selectedSkill.skillId,
.executorName = "Skills.Manager GUI (hostname: " + std::string(hostname) + ")",
.parameters = params};
ARMARX_CHECK(selectedSkill.skillId.isFullySpecified()); // sanity check
ARMARX_IMPORTANT << "Executing skill from GUI: " << selectedSkill.skillId << ".";
......
......@@ -164,18 +164,22 @@ namespace armarx
// User Input
struct SelectedSkill
{
static const skills::SkillID UNK_SKILL_ID;
skills::SkillID skillId;
skills::SkillExecutionID skillExecutionId;
// make default constructable
SelectedSkill() :
skillId({}, skills::SkillID::UNKNOWN),
skillExecutionId({{}, skills::SkillID::UNKNOWN},
skills::SkillExecutionID::UNKNOWN,
armarx::core::time::DateTime::Invalid())
skillId(UNK_SKILL_ID),
skillExecutionId{.skillId = UNK_SKILL_ID,
.executorName = skills::SkillExecutionID::UNKNOWN,
.executionStartedTime = armarx::core::time::DateTime::Invalid()}
{
}
} selectedSkill;
}
selectedSkill;
void executeSkillWithParams(skills::SkillID skillId, aron::data::DictPtr params);
void matchSkillUpdateToSearch(std::map<skills::manager::dto::SkillID,
......
......@@ -190,9 +190,10 @@ namespace armarx::plugins
{
ARMARX_CHECK(executionRequest.skillId.isFullySpecified());
skills::SkillExecutionID executionId(executionRequest.skillId,
executionRequest.executorName,
armarx::core::time::DateTime::Now());
skills::SkillExecutionID executionId{.skillId = executionRequest.skillId,
.executorName = executionRequest.executorName,
.executionStartedTime =
armarx::core::time::DateTime::Now()};
skills::SkillStatusUpdate ret{
{executionId, executionRequest.parameters, executionRequest.callbackInterface}};
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment