diff --git a/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.cpp b/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.cpp index 7fe2f3655552aa10c1de414f4f0f03e18d75fda6..3e5637e3e2d17bb20bf7995a32e8726ff8bb373b 100644 --- a/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.cpp +++ b/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.cpp @@ -76,6 +76,10 @@ void DetailedApplicationView::init() void attributeChanged(QtProperty * property, const QString & attribute, const QVariant & val); + + ui->linkedApplicationLabel->setVisible(false); + ui->makeLocalButton->setVisible(false); + ui->addParameterButton->setVisible(false); //QObject::connect(variantManager.get(), SIGNAL()) } @@ -183,7 +187,7 @@ void DetailedApplicationView::showApplicationInstance(ApplicationInstancePtr app init(); } - if (appInstance->getStatus().compare("Running") == 0) + if (appInstance->getStatus() == "Running") { ui->stateLabel->setStyleSheet("QLabel { color : green; }"); //stateLabelPallet.setColor(QPalette::WindowText, Qt::blue); @@ -201,6 +205,12 @@ void DetailedApplicationView::showApplicationInstance(ApplicationInstancePtr app ui->stateLabel->setStyleSheet("QLabel { color : black; }"); } + bool readOnly = appInstance->isReadOnly(); + ui->linkedApplicationLabel->setVisible(readOnly); + ui->makeLocalButton->setVisible(readOnly); + ui->addParameterButton->setVisible(!readOnly); + + ui->dataLabel->setText(QString::fromStdString(appInstance->getName())); ui->stateLabel->setText(QString::fromStdString(appInstance->getStatus())); statusUpdateRelevant = true; @@ -937,3 +947,14 @@ void DetailedApplicationView::on_reloadButton_clicked() } } } + +void DetailedApplicationView::on_makeLocalButton_clicked() +{ + if (!lastAppInstance) + { + return; + } + lastAppInstance->makeLocal(); + showApplicationInstance(lastAppInstance, nullptr); +} + diff --git a/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.h b/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.h index 244f54284a81b6ac206a190d10bc529bd82fb1d7..e88c0e0917ac61928bee6c5452b1dc60c7f1ba8b 100644 --- a/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.h +++ b/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.h @@ -95,6 +95,7 @@ signals: void addParameterButtonClicked(); void addIceEnvButtonClicked(); void toolButtonClicked(); + void makeLocalButtonClicked(); void saveScenario(ScenarioManager::Data_Structure::ApplicationInstancePtr application); void applicationEnabledChange(bool enabled); @@ -127,6 +128,8 @@ private slots: void on_fileUpdate(); + void on_makeLocalButton_clicked(); + private: void init(); void show_or_hide_property(QtProperty*, bool); diff --git a/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.ui b/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.ui index 772b8dbedb2ff99d9049c5a2384b4bb8b1a019f2..56c02ab71fd6a136f3652e6054a00d6962b040ce 100644 --- a/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.ui +++ b/source/ArmarXGui/gui-plugins/ScenarioManager/gui/detailedapplicationview.ui @@ -6,8 +6,8 @@ <rect> <x>0</x> <y>0</y> - <width>458</width> - <height>300</height> + <width>564</width> + <height>380</height> </rect> </property> <property name="windowTitle"> @@ -108,6 +108,12 @@ <layout class="QHBoxLayout" name="horizontalLayout_7"> <item> <widget class="QPushButton" name="reloadButton"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> <property name="toolTip"> <string>Refresh (Reloads the Properties)</string> </property> @@ -120,8 +126,86 @@ </property> </widget> </item> + <item> + <widget class="QLabel" name="linkedApplicationLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="palette"> + <palette> + <active> + <colorrole role="WindowText"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>164</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> + </active> + <inactive> + <colorrole role="WindowText"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>164</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> + </inactive> + <disabled> + <colorrole role="WindowText"> + <brush brushstyle="SolidPattern"> + <color alpha="255"> + <red>190</red> + <green>190</green> + <blue>190</blue> + </color> + </brush> + </colorrole> + </disabled> + </palette> + </property> + <property name="text"> + <string>Linked Application - read only</string> + </property> + <property name="alignment"> + <set>Qt::AlignCenter</set> + </property> + <property name="wordWrap"> + <bool>false</bool> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="makeLocalButton"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="toolTip"> + <string>Unlink the application with the current configuration</string> + </property> + <property name="text"> + <string>Make local</string> + </property> + </widget> + </item> <item> <widget class="QToolButton" name="addParameterButton"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> <property name="font"> <font> <pointsize>9</pointsize>