// Create new radio button QtWidgetObject* AtenTreeGuiDialog::addRadioButton(TreeGuiWidget* widget, TreeGuiWidget* groupWidget, QString name, QString label, int id) { // Cast QObject in groupWidget into QButtonGroup QtWidgetObject* wo = groupWidget->qtWidgetObject(); if (wo == NULL) { printf("Internal Error: Can't add button to radiogroup widget since supplied widget doesn't have an associated QtWidgetObject.\n"); return NULL; } QButtonGroup *group = static_cast<QButtonGroup*>(wo->qObject()); if (!group) { printf("Internal Error: Couldn't cast QObject into QButtonGroup.\n"); return NULL; } // Create new QtWidgetObject for page QRadioButton *radio = new QRadioButton(label, this); group->addButton(radio, id); QtWidgetObject* qtwo = widgetObjects_.add(); qtwo->set(widget, radio); radio->setEnabled(widget->enabled()); radio->setVisible(widget->visible()); radio->setChecked(widget->valueI() == 1); radio->setMinimumHeight(WIDGETHEIGHT); radio->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); // Connect signal to master slot QObject::connect(radio, SIGNAL(clicked(bool)), this, SLOT(radioButtonWidget_clicked(bool))); return qtwo; }