Lifted method access modes in KURLDrag and KMultipleDrag

Rafał Rzepecki divided.mind at
Sat Aug 6 17:22:00 BST 2005

Is there any good reason why KURLDrag::format() and KURLDrag::encodedData() 
are protected? These methods are public in the ancestors. Making them 
protected breaks some design patterns, such as 'contains' relationship.

Currently I have worked around the problem by just casting the KURLDrag onto 
an ancestor and then calling the method (which is public there). But I feel 
this should be corrected. KMultipleDrag also has this problem.

Another thing about KURLDrag is that it lacks setURL() method. QTextDrag, 
QUriDrag and QImageDrag all have set*() methods. But one can't use QUriDrag's 
method to set the uris, as it bypasses KURLDrag's internals and breaks 
things. There should be a method to set the URLs, and the QUriDrag's method 
should be overrided not to bypass KURLDrag's internals, or at least set 
private to prevent abuse.

I can correct these problems, but I don't have SVN kdelibs installed and have 
a slow machine, so it would take ages to compile here, so I'd rather have 
someone else fix it or at least help me test the patches I provide, so that 
I need not compile the whole kdelibs.

I'm not sure whether these fixed would break the ABI, so as to fix it in 
3.5 or rather the trunk.
Rafał Rzepecki
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <>

More information about the kde-core-devel mailing list