void ProfileCreationPage::initializePage()
{
	m_password = wizard()->property("password").toString();
	m_singleProfile = wizard()->property("singleProfile").toBool();
	bool first = true;
	if (!m_singleProfile) {
		registerField("crypto", ui->cryptoBox, "currentText");
	} else {
		ui->label_6->hide();
		ui->cryptoBox->hide();
		ui->cryptoDescription->hide();
	}
	foreach (const ObjectGenerator *gen, ObjectGenerator::module<CryptoService>()) {
		const ExtensionInfo info = gen->info();
		if (!m_singleProfile
				|| info.generator()->metaObject()->className() == QLatin1String("Core::NoCryptoService")) {
			ui->cryptoBox->addItem(info.icon(), info.name(), qVariantFromValue(info));
			if (first) {
				ui->cryptoBox->setCurrentIndex(0);
				ui->cryptoDescription->setText(info.description());
				first = false;
			}
		}
	}
	Q_ASSERT_X(ui->cryptoBox->count() > 0, "ProfileCreationPage::initializePage", "Have not been found any crypto plugin");
	first = true;
	foreach (const ObjectGenerator *gen, ObjectGenerator::module<ConfigBackend>()) {
		const ExtensionInfo info = gen->info();
		ui->configBox->addItem(info.icon(), info.name(), qVariantFromValue(info));
		if (first) {
			ui->configBox->setCurrentIndex(0);
			ui->configDescription->setText(info.description());
			first = false;
		}
	}
	Q_ASSERT_X(ui->cryptoBox->count() > 0, "ProfileCreationPage::initializePage", "Have not been found any config plugin");
	rebaseDirs();
}
示例#2
0
    foreach (AccountCreationWizard *wizard, m_wizards) {
        ExtensionInfo info = wizard->info();
        QIcon icon = info.icon();
        if (icon.isNull())
            icon = Icon(QLatin1String("im-") + info.name());
        if (!icon.actualSize(QSize(1,1)).isValid())
            icon = Icon("applications-internet");

        QListWidgetItem *item = new QListWidgetItem(ui->protocolList);
        item->setData(Qt::UserRole + 1, reinterpret_cast<qptrdiff>(wizard));
        item->setData(Qt::UserRole + 2, qVariantFromValue(info));

        item->setIcon(icon);
        item->setText(info.name());
        item->setData(DescriptionRole,info.description().toString());
    }
示例#3
0
QVariant AddAccountDialogWrapper::data(const QModelIndex &index, int role) const
{
	if (index.row() < 0 || index.row() > m_wizards->size())
		return QVariant();
	AccountCreationWizard *wizard = m_wizards->at(index.row());
	ExtensionInfo info = wizard->info();
	QIcon icon = info.icon();
	if (!icon.actualSize(QSize(1,1)).isValid())
		icon = Icon("applications-internet");
	switch (role) {
	case Qt::DisplayRole:
		return info.name().toString();
	case Qt::DecorationRole:
		return QString();
	case WizardRole:
		return m_wizards->indexOf(wizard);
	case InfoRole:{
		return info.description().toString();}
	default:
		return QVariant();
	}

}