BufferViewConfig::BufferViewConfig(int bufferViewId, const QVariantMap &properties, QObject *parent) : SyncableObject(parent), _bufferViewId(bufferViewId) { fromVariantMap(properties); setObjectName(QString::number(bufferViewId)); }
void CoreHighlightSettingsPage::save() { if (!hasChanged()) return; if (!_initialized) return; auto ruleManager = Client::highlightRuleManager(); if (ruleManager == nullptr) return; auto clonedManager = HighlightRuleManager(); clonedManager.fromVariantMap(ruleManager->toVariantMap()); clonedManager.clear(); for (auto &rule : highlightList) { clonedManager.addHighlightRule(rule.id, rule.name, rule.isRegEx, rule.isCaseSensitive, rule.isEnabled, false, rule.sender, rule.chanName); } for (auto &rule : ignoredList) { clonedManager.addHighlightRule(rule.id, rule.name, rule.isRegEx, rule.isCaseSensitive, rule.isEnabled, true, rule.sender, rule.chanName); } auto highlightNickType = ui.highlightNicksComboBox->itemData(ui.highlightNicksComboBox->currentIndex()).value<int>(); clonedManager.setHighlightNick(HighlightRuleManager::HighlightNickType(highlightNickType)); clonedManager.setNicksCaseSensitive(ui.nicksCaseSensitive->isChecked()); ruleManager->requestUpdate(clonedManager.toVariantMap()); setChangedState(false); load(); }
NodeModel::NodeModel(const QVariantMap &map){ hasOutlet = false; netDevice = 0; noiseSource = 0; fromVariantMap(map); }
CoreNetworkConfig::CoreNetworkConfig(const QString &objectName, CoreSession *session) : NetworkConfig(objectName, session) { setAllowClientUpdates(true); if (!session) { qWarning() << Q_FUNC_INFO << "No CoreSession set, cannot load network configuration!"; return; } fromVariantMap(Core::getUserSetting(session->user(), objectName).toMap()); }
void CoreHighlightSettingsPage::importRules() { NotificationSettings notificationSettings; const auto localHighlightList = notificationSettings.highlightList(); // Re-use translations of "Legacy/Local Highlights" as this is a word-for-word reference, // forcing all spaces to non-breaking QString localHighlightsName; if (Quassel::runMode() == Quassel::Monolithic) { localHighlightsName = tr("Legacy Highlights").replace(" ", " "); } else { localHighlightsName = tr("Local Highlights").replace(" ", " "); } if (localHighlightList.count() == 0) { // No highlight rules exist to import, do nothing QMessageBox::information(this, tr("No highlights to import"), tr("No highlight rules in <i>%1</i>." ).arg(localHighlightsName)); return; } int ret = QMessageBox::question(this, tr("Import highlights?"), tr("Import all highlight rules from <i>%1</i>?" ).arg(localHighlightsName), QMessageBox::Yes|QMessageBox::No, QMessageBox::No); if (ret != QMessageBox::Yes) { // Only two options, Yes or No, return if not Yes return; } auto clonedManager = HighlightRuleManager(); clonedManager.fromVariantMap(Client::highlightRuleManager()->toVariantMap()); for (const auto &variant : notificationSettings.highlightList()) { auto highlightRule = variant.toMap(); clonedManager.addHighlightRule( clonedManager.nextId(), highlightRule["Name"].toString(), highlightRule["RegEx"].toBool(), highlightRule["CS"].toBool(), highlightRule["Enable"].toBool(), false, "", highlightRule["Channel"].toString() ); } Client::highlightRuleManager()->requestUpdate(clonedManager.toVariantMap()); setChangedState(false); load(); // Give a heads-up that all succeeded QMessageBox::information(this, tr("Imported highlights"), tr("%1 highlight rules successfully imported." ).arg(QString::number(localHighlightList.count()))); }