X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_WidgetRadiobox.cpp;h=c091a8433a5dc4222c2bb37b1244aa50bd7ce674;hb=06e7f5859095193fc7f498bd89a7d28009794f53;hp=11f4a0642c9680df17838ab145d15c31e18bc0a1;hpb=9215b9babfa8147ea1705b8e8480f4dd19ac4b43;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_WidgetRadiobox.cpp b/src/ModuleBase/ModuleBase_WidgetRadiobox.cpp index 11f4a0642..c091a8433 100644 --- a/src/ModuleBase/ModuleBase_WidgetRadiobox.cpp +++ b/src/ModuleBase/ModuleBase_WidgetRadiobox.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2014-2017 CEA/DEN, EDF R&D +// Copyright (C) 2014-2023 CEA, EDF // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -12,21 +12,21 @@ // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.salome-platform.org/ or -// email : webmaster.salome@opencascade.com +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // #include #include +#include + #include #include #include #include - ModuleBase_WidgetRadiobox::ModuleBase_WidgetRadiobox(QWidget* theParent, const Config_WidgetAPI* theData) : ModuleBase_PagedContainer(theParent, theData) @@ -36,6 +36,8 @@ ModuleBase_WidgetRadiobox::ModuleBase_WidgetRadiobox(QWidget* theParent, myGroup = new QButtonGroup(this); myGroup->setExclusive(true); + myVerticalAlignment = theData->getProperty("align_subs").find("vert") == 0; + connect(myGroup, SIGNAL(buttonToggled(int, bool)), SLOT(onPageChanged())); } @@ -46,26 +48,34 @@ ModuleBase_WidgetRadiobox::~ModuleBase_WidgetRadiobox() int ModuleBase_WidgetRadiobox::addPage(ModuleBase_PageBase* thePage, const QString& theName, const QString& theCaseId, - const QPixmap& theIcon) + const QPixmap& theIcon, + const QString& theTooltip) { - ModuleBase_PagedContainer::addPage(thePage, theName, theCaseId, theIcon); + ModuleBase_PagedContainer::addPage(thePage, theName, theCaseId, theIcon, theTooltip); QWidget* aWgt = new QWidget(this); QVBoxLayout* aLay = new QVBoxLayout(aWgt); aLay->setContentsMargins(0, 0, 0, 0); QRadioButton* aButton; - if (theIcon.isNull()) + if (theIcon.isNull()) { aButton = new QRadioButton(theName, aWgt); - else + aButton->setToolTip(translate(theTooltip.toStdString())); + } + else { aButton = new QRadioButton(aWgt); - aButton->setToolTip(theName); + aButton->setToolTip(translate(theName.toStdString())); + } aLay->addStretch(); aLay->addWidget(aButton); aLay->addStretch(); //QFrame* aFrame = dynamic_cast(thePage); QWidget* aPage = thePage->pageWidget(); - myLayout->addRow(aWgt, aPage); + if (myVerticalAlignment) { + myLayout->addRow(aWgt); + myLayout->addRow(aPage); + } else + myLayout->addRow(aWgt, aPage); myGroup->addButton(aButton, myGroup->buttons().count()); bool isDefault = theCaseId.toStdString() == getDefaultValue();