QComboBox *VUtils::getComboBox(QWidget *p_parent) { QComboBox *box = new QComboBox(p_parent); QStyledItemDelegate *itemDelegate = new QStyledItemDelegate(box); box->setItemDelegate(itemDelegate); return box; }
QWidget* QtnPropertyDelegateQBrushStyle::createValueEditorImpl(QWidget* parent, const QRect& rect, QtnInplaceInfo* inplaceInfo) { if (owner().isEditableByUser()) { QComboBox* combo = new QtnPropertyBrushStyleComboBox(parent); combo->setLineEdit(nullptr); combo->setItemDelegate(new QtnPropertyBrushStyleItemDelegate()); if (m_showAll) { for (auto bs = Qt::NoBrush; bs <= Qt::ConicalGradientPattern; bs = Qt::BrushStyle(bs + 1)) { combo->addItem("", QVariant::fromValue(bs)); } combo->addItem("", QVariant::fromValue(Qt::TexturePattern)); } else { combo->addItem("", QVariant::fromValue(Qt::NoBrush)); combo->addItem("", QVariant::fromValue(Qt::SolidPattern)); combo->addItem("", QVariant::fromValue(Qt::HorPattern)); combo->addItem("", QVariant::fromValue(Qt::VerPattern)); combo->addItem("", QVariant::fromValue(Qt::CrossPattern)); combo->addItem("", QVariant::fromValue(Qt::BDiagPattern)); combo->addItem("", QVariant::fromValue(Qt::FDiagPattern)); combo->addItem("", QVariant::fromValue(Qt::DiagCrossPattern)); } combo->setGeometry(rect); new QtnPropertyBrushStyleComboBoxHandler(owner(), *combo); if (inplaceInfo) combo->showPopup(); return combo; } return nullptr; }
QMultiMap<int, IOptionsDialogWidget *> StatusIcons::optionsDialogWidgets(const QString &ANodeId, QWidget *AParent) { QMultiMap<int, IOptionsDialogWidget *> widgets; if (FOptionsManager!=NULL && ANodeId==OPN_APPEARANCE) { QComboBox *cmbStatusIcons = new QComboBox(AParent); cmbStatusIcons->setItemDelegate(new IconsetDelegate(cmbStatusIcons)); int index = 0; for (QMap<QString, IconStorage *>::const_iterator it=FStorages.constBegin(); it!=FStorages.constEnd(); ++it) { QString name = it.value()->storageProperty(FILE_STORAGE_NAME,it.key()); cmbStatusIcons->addItem(it.value()->getIcon(SIK_ONLINE),name,it.key()); cmbStatusIcons->setItemData(index,it.value()->storage(),IconsetDelegate::IDR_STORAGE); cmbStatusIcons->setItemData(index,it.value()->subStorage(),IconsetDelegate::IDR_SUBSTORAGE); cmbStatusIcons->setItemData(index,true,IconsetDelegate::IDR_HIDE_STORAGE_NAME); index++; } cmbStatusIcons->model()->sort(0); widgets.insertMulti(OHO_APPEARANCE_ROSTER, FOptionsManager->newOptionsDialogHeader(tr("Contacts list"),AParent)); widgets.insertMulti(OWO_APPEARANCE_STATUSICONS, FOptionsManager->newOptionsDialogWidget(Options::node(OPV_STATUSICONS_DEFAULT),tr("Status icons:"),cmbStatusIcons,AParent)); } return widgets; }