void KonfUpdate::copyOrMoveKey(const QStringList &srcGroupPath, const QString &srcKey, const QStringList &dstGroupPath, const QString &dstKey) { KConfigGroup dstCg = KConfigUtils::openGroup(m_newConfig, dstGroupPath); if (!m_bOverwrite && dstCg.hasKey(dstKey)) { log() << m_currentFilename << ": Skipping " << m_newFileName << ":" << dstCg.name() << ":" << dstKey << ", already exists." << endl; return; } KConfigGroup srcCg = KConfigUtils::openGroup(m_oldConfig1, srcGroupPath); QString value = srcCg.readEntry(srcKey, QString()); log() << m_currentFilename << ": Updating " << m_newFileName << ":" << dstCg.name() << ":" << dstKey << " to '" << value << "'" << endl; dstCg.writeEntry(dstKey, value); if (m_bCopy) { return; // Done. } // Delete old entry if (m_oldConfig2 == m_newConfig && srcGroupPath == dstGroupPath && srcKey == dstKey) { return; // Don't delete! } KConfigGroup srcCg2 = KConfigUtils::openGroup(m_oldConfig2, srcGroupPath); srcCg2.deleteEntry(srcKey); log() << m_currentFilename << ": Removing " << m_oldFile << ":" << srcCg2.name() << ":" << srcKey << ", moved." << endl; }
bool TabletProfileConfigAdaptor::loadConfig (const KConfigGroup& config) { Q_D( TabletProfileConfigAdaptor ); assert(d->profile != NULL); d->profile->setName(config.name()); d->profile->clearDevices(); QStringList devices = config.groupList(); foreach(const QString& dev, devices) { const DeviceType* deviceType = DeviceType::find(dev); if (deviceType == NULL) { kError() << QString::fromLatin1("Invalid device identifier '%1' found in configuration file!").arg(dev); continue; } KConfigGroup devconfig(&config, dev); DeviceProfile devprofile(*deviceType); DeviceProfileConfigAdaptor devadaptor(devprofile); devadaptor.loadConfig(devconfig); d->profile->setDevice(devprofile); } return true; }
void Active_window_condition::cfg_write( KConfigGroup& cfg_P ) const { base::cfg_write( cfg_P ); KConfigGroup windowConfig( cfg_P.config(), cfg_P.name() + "Window" ); window()->cfg_write( windowConfig ); cfg_P.writeEntry( "Type", "ACTIVE_WINDOW" ); // overwrites value set in base::cfg_write() }
Active_window_condition::Active_window_condition( KConfigGroup& cfg_P, Condition_list_base* parent_P ) : Condition( cfg_P, parent_P ) { KConfigGroup windowConfig( cfg_P.config(), cfg_P.name() + "Window" ); _window = new Windowdef_list( windowConfig ); init(); set_match(); }
void KateViewManager::saveViewConfiguration(KConfigGroup& config) { // set Active ViewSpace to 0, just in case there is none active (would be // strange) and config somehow has previous value set config.writeEntry("Active ViewSpace", 0); m_splitterIndex = 0; saveSplitterConfig(this, config.config(), config.name()); }
QString path(KConfigGroup group) { QString ret; while (group.exists()) { ret.prepend( "/" + group.name()); group = group.parent(); } ret.prepend(group.config()->name()); return ret; }
void KateViewManager::restoreViewConfiguration (const KConfigGroup& config) { // remove all views and viewspaces + remove their xml gui clients for (int i = 0; i < m_viewList.count(); ++i) mainWindow()->guiFactory ()->removeClient (m_viewList.at(i)); qDeleteAll( m_viewList ); m_viewList.clear(); qDeleteAll( m_viewSpaceList ); m_viewSpaceList.clear(); m_activeStates.clear(); // start recursion for the root splitter (Splitter 0) restoreSplitter( config.config(), config.name() + "-Splitter 0", this, config.name() ); // finally, make the correct view from the last session active int lastViewSpace = config.readEntry("Active ViewSpace", 0); if( lastViewSpace > m_viewSpaceList.size() ) lastViewSpace = 0; if( lastViewSpace >= 0 && lastViewSpace < m_viewSpaceList.size()) { setActiveSpace( m_viewSpaceList.at( lastViewSpace ) ); setActiveView( m_viewSpaceList.at( lastViewSpace )->currentView() ); m_viewSpaceList.at( lastViewSpace )->currentView()->setFocus(); } // emergency if (m_viewSpaceList.empty()) { // kill bad children while (count()) delete widget (0); KateViewSpace* vs = new KateViewSpace( this, 0 ); addWidget (vs); vs->setActive( true ); m_viewSpaceList.append(vs); } updateViewSpaceActions(); // the view has (maybe) changed - promote it to the world emit viewChanged(); }
Condition_list_base::Condition_list_base( KConfigGroup& cfg_P, Condition_list_base* parent_P ) : Condition( parent_P ) { int cnt = cfg_P.readEntry( "ConditionsCount", 0 ); for( int i = 0; i < cnt; ++i ) { KConfigGroup conditionConfig( cfg_P.config(), cfg_P.name() + QString::number( i ) ); (void) Condition::create_cfg_read( conditionConfig, this ); } }
void Condition_list_base::cfg_write( KConfigGroup& cfg_P ) const { int i = 0; for( ConstIterator it(begin()); it != end(); ++it, ++i ) { KConfigGroup conditionConfig( cfg_P.config(), cfg_P.name() + QString::number( i ) ); (*it)->cfg_write( conditionConfig ); } cfg_P.writeEntry( "ConditionsCount", i ); }
void KeyboardInputAction::cfg_write( KConfigGroup& cfg_P ) const { base::cfg_write( cfg_P ); cfg_P.writeEntry( "Type", "KEYBOARD_INPUT" ); // overwrites value set in base::cfg_write() cfg_P.writeEntry( "Input", input()); cfg_P.writeEntry( "DestinationWindow", int(_destination) ); if( _destination == SpecificWindow && dest_window() != NULL ) { KConfigGroup windowGroup( cfg_P.config(), cfg_P.name() + "DestinationWindow" ); dest_window()->cfg_write( windowGroup ); } }
void loadEntries(const KConfigGroup &grp) { recentFiles.clear(); recentFilesIndex.clear(); QString value; QString nameValue; QUrl url; KConfigGroup cg = grp; if ( cg.name().isEmpty()) { cg = KConfigGroup(cg.config(),"RecentFiles"); } // read file list for (int i = 1; i <= maxItems; i++) { value = cg.readPathEntry(QString("File%1").arg(i), QString()); if (value.isEmpty()) continue; url = QUrl(value); // gemini only handles local files // yes, i know the second half here isn't good on windows... but without it we fail on linux, and second part for windows if (!url.isLocalFile() && !value.startsWith('/') && value.midRef(2, 1) != QLatin1String(":")) { qDebug() << "Not a local file:" << url; continue; } // Don't restore if file doesn't exist anymore if (!QFile::exists(url.toLocalFile()) && !QFile::exists(value)) { qDebug() << "Recent file apparently no longer exists:" << url.toLocalFile(); continue; } value = QDir::toNativeSeparators( value ); // Don't restore where the url is already known (eg. broken config) if (recentFiles.contains(value)) continue; nameValue = cg.readPathEntry(QString("Name%1").arg(i), url.fileName()); if (!value.isNull()) { recentFilesIndex << nameValue; recentFiles << value; } } }
void saveEntries( const KConfigGroup &grp) { KConfigGroup cg = grp; if (cg.name().isEmpty()) { cg = KConfigGroup(cg.config(),"RecentFiles"); } cg.deleteGroup(); // write file list for (int i = 1; i <= recentFilesIndex.size(); ++i) { // i - 1 because we started from 1 cg.writePathEntry(QString("File%1").arg(i), recentFiles[i - 1]); cg.writePathEntry(QString("Name%1").arg(i), recentFilesIndex[i - 1]); } }
QMap<QString, QVariant> Service::parametersFromDescription(const KConfigGroup &description) { QMap<QString, QVariant> params; if (!d->config || !description.isValid()) { return params; } const QString op = description.name(); foreach (const QString &key, description.keyList()) { KConfigSkeletonItem *item = d->config->findItem(op, key); if (item) { params.insert(key, description.readEntry(key, item->property())); } } return params; }
void SpriteGroup::read(KConfigGroup &config) { qDebug() << QStringLiteral(" void SpriteGroup::read(KConfigBase &config) :") << config.name(); SpriteRange countRange( config.readEntry( QStringLiteral("Count"), QStringLiteral("1") ) ); mCount = countRange.random(); mRefresh.set( config.readEntry( QStringLiteral("Refresh"), QStringLiteral("1000") ) ); QStringList anims; anims = config.readEntry( QStringLiteral("Animations"), anims ); QStringList::const_iterator lst; for( lst = anims.constBegin(); lst != anims.constEnd(); ++lst ) { KConfigGroup grp( config.config(), *lst ); SpriteDef *obj = new SpriteDef( grp ); mAvailable.append( obj ); } }
void Fetcher::readConfig(const KConfigGroup& config_, const QString& groupName_) { Q_ASSERT(config_.name() == groupName_); m_configGroup = groupName_; QString s = config_.readEntry("Name"); if(!s.isEmpty()) { m_name = s; } m_updateOverwrite = config_.readEntry("UpdateOverwrite", false); // it's called custom fields here, but it's really optional lists m_fields = config_.readEntry("Custom Fields", QStringList()); s = config_.readEntry("Uuid"); if(s.isEmpty()) { s = QUuid::createUuid().toString(); } m_uuid = s; // be sure to read config for subclass readConfigHook(config_); }
void WmWidget::saveSettings(KConfigGroup& group) { kDebug() << "Save settings to" << group.name(); #if KDCRAW_VERSION >= 0x020000 d->settingsExpander->writeSettings(group); #else d->settingsExpander->writeSettings(); #endif group.writeEntry("Author", d->authorEdit->text()); group.writeEntry("Source", d->sourceEdit->text()); group.writeEntry("genCategories", d->genCatEdit->toPlainText()); group.writeEntry("genText", d->genTxtEdit->toPlainText()); group.writeEntry("Resize", d->resizeChB->isChecked()); group.writeEntry("Dimension", d->dimensionSpB->value()); group.writeEntry("Quality", d->imageQualitySpB->value()); }
void CustomBuildSystemConfigWidget::saveConfig( KConfigGroup& grp, CustomBuildSystemConfig& c, int index ) { // Generate group name, access and clear it KConfigGroup subgrp = grp.group( ConfigConstants::buildConfigPrefix + QString::number(index) ); subgrp.deleteGroup(); // Write current configuration key, if our group is current if( ui->currentConfig->currentIndex() == index ) grp.writeEntry( ConfigConstants::currentConfigKey, subgrp.name() ); subgrp.writeEntry( ConfigConstants::configTitleKey, c.title ); subgrp.writeEntry<QUrl>( ConfigConstants::buildDirKey, c.buildDir ); foreach( const CustomBuildSystemTool& tool, c.tools ) { KConfigGroup toolgrp = subgrp.group( generateToolGroupName( tool.type ) ); toolgrp.writeEntry( ConfigConstants::toolType, int(tool.type) ); toolgrp.writeEntry( ConfigConstants::toolEnvironment , tool.envGrp ); toolgrp.writeEntry( ConfigConstants::toolEnabled, tool.enabled ); toolgrp.writeEntry<QUrl>( ConfigConstants::toolExecutable, tool.executable ); toolgrp.writeEntry( ConfigConstants::toolArguments, tool.arguments ); } }