X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_WidgetLabel.cpp;h=e111aa8838c745fa9f2855b8ad20657a03bbbe1c;hb=857f94a96eb62e69746221f2b919335140b117c6;hp=d5ffd015b3b01b931aa31c3a9b31cd23468d638e;hpb=7bf19255421b34594c7b0a76d0ce28166d0ce895;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_WidgetLabel.cpp b/src/ModuleBase/ModuleBase_WidgetLabel.cpp index d5ffd015b..e111aa883 100644 --- a/src/ModuleBase/ModuleBase_WidgetLabel.cpp +++ b/src/ModuleBase/ModuleBase_WidgetLabel.cpp @@ -1,25 +1,49 @@ -// Copyright (C) 2014-20xx CEA/DEN, EDF R&D +// Copyright (C) 2014-2016 CEA/DEN, EDF R&D // File: ModuleBase_WidgetLabel.cpp // Created: 03 Dec 2014 // Author: Vitaly SMETANNIKOV +// Modified by Clarisse Genrault (CEA) : 17 Nov 2016 + #include "ModuleBase_WidgetLabel.h" #include +#include +#include +#include + +#include #include +#include ModuleBase_WidgetLabel::ModuleBase_WidgetLabel(QWidget* theParent, - const Config_WidgetAPI* theData, - const std::string& theParentId) - : ModuleBase_ModelWidget(theParent, theData, theParentId) + const Config_WidgetAPI* theData) +: ModuleBase_ModelWidget(theParent, theData) { QString aText = QString::fromStdString(theData->getProperty("title")); + QString aLabelIcon = QString::fromStdString(theData->getProperty("icon")); myLabel = new QLabel(aText, theParent); + if (!aLabelIcon.isEmpty()) { + myLabel->setPixmap(ModuleBase_IconFactory::loadPixmap(aLabelIcon)); + myLabel->setAlignment(Qt::AlignHCenter | Qt::AlignTop); + } else { + myLabel->setAlignment(Qt::AlignLeft | Qt::AlignTop); + } myLabel->setWordWrap(true); myLabel->setIndent(5); + myLabel->setContentsMargins(0,0,0,4); + + QVBoxLayout* aLayout = new QVBoxLayout(this); + ModuleBase_Tools::zeroMargins(aLayout); + aLayout->addWidget(myLabel); + setLayout(aLayout); + + std::string aStyleSheet = theData->getProperty(ATTR_STYLE_SHEET).c_str(); + if (!aStyleSheet.empty()) + myLabel->setStyleSheet(QString("QLabel {%1}").arg(aStyleSheet.c_str())); } ModuleBase_WidgetLabel::~ModuleBase_WidgetLabel() @@ -31,7 +55,23 @@ QList ModuleBase_WidgetLabel::getControls() const return QList(); } -QWidget* ModuleBase_WidgetLabel::getControl() const +bool ModuleBase_WidgetLabel::restoreValueCustom() +{ + DataPtr aData = myFeature->data(); + AttributeStringPtr aStrAttr = aData->string(attributeID()); + if (aStrAttr.get()) { + std::string aMsg; + if (aStrAttr.get()) { + aMsg = aStrAttr->value(); + } + ModuleBase_Tools::translate(myFeature->getKind(), aMsg); + myLabel->setText(aMsg.c_str()); + } + return true; +} + +bool ModuleBase_WidgetLabel::focusTo() { - return myLabel; + restoreValue(); + return false; }