QWidget* PythonTool::settingsWidget() { if (!m_script) return 0; // nothing we can do -- we don't have any real scripts PythonThread pt; if(!m_settingsWidget) { m_settingsWidget = new QWidget(); m_settingsWidget->setLayout( new QVBoxLayout() ); if (PyObject_HasAttrString(m_instance.ptr(), "settingsWidget")) { try { prepareToCatchError(); QWidget *widget = extract<QWidget*>(m_instance.attr("settingsWidget")()); if (widget) m_settingsWidget->layout()->addWidget(widget); } catch (error_already_set const &) { catchError(); } } connect(m_settingsWidget, SIGNAL(destroyed()), this, SLOT(settingsWidgetDestroyed())); } return m_settingsWidget; }
QWidget *ResidueColor::settingsWidget() { if (!m_settingsWidget) { m_settingsWidget = new ResidueColorSettingsWidget(); connect(m_settingsWidget->colorStyleComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(setColorScheme(int))); connect(m_settingsWidget, SIGNAL(destroyed()), this, SLOT(settingsWidgetDestroyed())); }
QWidget *OverlayEngine::settingsWidget() { if(!m_settingsWidget) { m_settingsWidget = new OverlaySettingsWidget(); connect(m_settingsWidget, SIGNAL(destroyed()), this, SLOT(settingsWidgetDestroyed())); } return m_settingsWidget; }
QWidget *CustomColor::settingsWidget() { if (!m_settingsWidget) { m_settingsWidget = new QWidget(); QHBoxLayout *layout = new QHBoxLayout(m_settingsWidget); QLabel *label = new QLabel(tr("Custom Color:"), m_settingsWidget); ColorButton *button = new ColorButton(m_settingsWidget); layout->addWidget(label); layout->addWidget(button); button->setColor(Color::color()); connect(button, SIGNAL(colorChanged(QColor)), this, SLOT(colorChanged(QColor))); connect(m_settingsWidget, SIGNAL(destroyed()), this, SLOT(settingsWidgetDestroyed())); } return m_settingsWidget; }