KConfig API changes merged

Laurent Montel montel at kde.org
Thu Oct 25 07:48:06 BST 2007


On Wednesday 24 October 2007 15:47:59 Oswald Buddenhagen wrote:
> moin,
>
> the release dude said was pro and nobody objected, so i did it. heh.
>
> a few notes:
> - KDE/, extragear/ and koffice/ are ported and test-compiled, but i
>   suppose my installation does not compile everything, so some things
>   might be still broken. ping me on irc if the dashbot complains.
> - there are some uses of {read,write}XdgListEntry() that should not be.
>   go and fix them if you want your code to work with alternative KConfig
>   backends. ps: don't be tempted to just use split()/join() (*) - i already
>   adjusted the cases where this was possible.
> - the porting from setGroup()/group() *might* have broken some cases,
>   but otoh i also fixed quite some porting bugs, so i do at least a
>   break-even. :=)
> - rdale: i did not touch kdebindings - i have no idea if something/what
>   needs to be done.
> - laurent: for your porting scripts:
>
> trivial:
>
> 's/\bentryIsImmutable\b/isEntryImmutable/g;'\
> 's/\bgroupIsImmutable\b/isGroupImmutable/g;'\
> 's/\bgetConfigState\b/accessMode/g;'\
> 's/\bConfigState\b/AccessMode/g;'\
> 's/\b(KConfigGroup|KConfig|KConfigBase)::NLS\b/\1::Localized/g;'\
> 's/\bKConfig::OnlyLocal\b/KConfig::SimpleConfig/g;'
>
> complex. these are confused by nested parentheses, but as i had to
> review the changes anyway, i didn't bother crafting recursive regexps -
> i can help you with that if you want more sophistication:
>
> 's/\breadPathEntry(\s*)\(([^,)]+?)(\s*)\)/readPathEntry\1(\2,
> QString()\3)/g;'\
> 's/\breadPathListEntry(\s*)\(([^,)]+,[^,)]+)\)/readPathEntry\1(\2)/g;'\
> 's/\breadPathListEntry(\s*)\(([^,)]+?)(\s*)\)/readPathEntry\1(\2,
> QStringList()\3)/g;'

Great thanks for perl line
I will add to "adapt-to-kde4-api.pl"

> (*) in fact, i surrendered to the temptation, too. :)
> i changed two cases (in cervisia and kcachegrind) that did use a
> non-standard separator other than the semicolon to trivial
> joining/splitting. this needs to be changed to "native" lists (and a
> kconf_update script written, if you care) or custom handling (with
> separator escaping) needs to be written (this can be borrowed from
> KConfigGroup).




More information about the kde-core-devel mailing list