Forráskód Böngészése

Add setChecked method to ctkButtonGroup

Laurenn Lam 10 éve
szülő
commit
cfa9c604ad
2 módosított fájl, 23 hozzáadás és 0 törlés
  1. 19 0
      Libs/Widgets/ctkButtonGroup.cpp
  2. 4 0
      Libs/Widgets/ctkButtonGroup.h

+ 19 - 0
Libs/Widgets/ctkButtonGroup.cpp

@@ -47,6 +47,25 @@ ctkButtonGroup::ctkButtonGroup(QObject* _parent)
 }
 }
 
 
 //------------------------------------------------------------------------------
 //------------------------------------------------------------------------------
+void ctkButtonGroup::setChecked(QAbstractButton* button, bool checked)
+{
+  if (!button)
+    {
+    return;
+    }
+  bool wasExclusive = this->exclusive();
+  if (!checked)
+    {
+    this->setExclusive(false);
+    }
+  button->setChecked(checked);
+  if (!checked)
+    {
+    this->setExclusive(wasExclusive);
+    }
+}
+
+//------------------------------------------------------------------------------
 ctkButtonGroup::~ctkButtonGroup()
 ctkButtonGroup::~ctkButtonGroup()
 {
 {
 }
 }

+ 4 - 0
Libs/Widgets/ctkButtonGroup.h

@@ -53,6 +53,10 @@ public:
   explicit ctkButtonGroup(QObject *_parent = 0);
   explicit ctkButtonGroup(QObject *_parent = 0);
   virtual ~ctkButtonGroup();
   virtual ~ctkButtonGroup();
 
 
+public Q_SLOTS:
+  /// Check or uncheck the button.
+  void setChecked(QAbstractButton* button, bool checked = true);
+
 protected Q_SLOTS:
 protected Q_SLOTS:
   void onButtonClicked(int button);
   void onButtonClicked(int button);
   void onButtonPressed(int button);
   void onButtonPressed(int button);