Source Code (Use browser search to find items of interest.)
Class Index
kikbd'KConfigMatchKeysObject (./kdebase/kikbd/kconfobjs.h:43)
class KConfigMatchKeysObject: public KConfigObject {
protected:
QRegExp regexp;
/**
KConfigObject reimplemented read data method
*/
virtual void readObject(KObjectConfig*);
/**
KConfigObject reimplemented write data method
*/
virtual void writeObject(KObjectConfig*);
public:
/**
Create new object to read all keys matched regular expression.
@param match The Regular Expression
@param list QStrList variable to read/write data. Each matched key
readed as QString item of list.
*/
KConfigMatchKeysObject(const QRegExp& match, QStrList& list);
QStrList separate(int index, char sep=',');
};
/**
This objects can handle a group of objects with keys numbered
without holes from start number to end. As data used QStrList
- list of string for matched keys. As example if you want to read keys
key0=...
key1=..
...
key9=..
Use this object:
registerObject(new KConfigNumberedKeysObject("key", 0, 9, list, ',');
*/
kikbd'KConfigMatchKeysObject::KConfigMatchKeysObject() (./kdebase/kikbd/kconfobjs.cpp:43)
KConfigMatchKeysObject::KConfigMatchKeysObject(const QRegExp& match,
QStrList& list)
:KConfigObject(&list, FALSE), regexp(match)
{
}
kikbd'KConfigMatchKeysObject::readObject() (./kdebase/kikbd/kconfobjs.cpp:49)
void KConfigMatchKeysObject::readObject(KObjectConfig* config)
{
QStrList &list = *((QStrList*)data);
list.clear();
keys.clear();
QMap<QString, QString> tmpMap = config->getConfig()->entryMap(config->group());
QMap<QString, QString>::Iterator it(tmpMap.begin());
for (; it != tmpMap.end(); ++it) {
if(regexp.match(it.key()) != -1)
if(!(*it).isNull()) {
keys.append(it.key());
list.append(*it);
}
}
}
kikbd'KConfigMatchKeysObject::writeObject() (./kdebase/kikbd/kconfobjs.cpp:67)
void KConfigMatchKeysObject::writeObject(KObjectConfig* config)
{
QStrList &list = *((QStrList*)data);
unsigned i;for(i=0; i<keys.count(); i++)
config->getConfig()->writeEntry(keys.at(i), list.at(i));
}
kikbd'KConfigMatchKeysObject::separate() (./kdebase/kikbd/kconfobjs.cpp:74)
QStrList KConfigMatchKeysObject::separate(int index, char sep)
{
return KObjectConfig::separate(((QStrList*)data)->at(index), sep);
}
/**********************************************************************
* numbered keys Config Object
*/