KSortFilterProxyModel

John Tapsell johnflux at gmail.com
Mon Jul 20 16:10:47 BST 2009


2009/7/20 Stephen Kelly <steveire at gmail.com>:
> Aaron J. Seigo wrote:
>
>> On Tuesday 30 June 2009, John Tapsell wrote:
>>>   I added a KSortFilterProxyModel to kdelibs/kdeui/itemviews that
>>> inherits QSortFilterProxyModel and provides a way to allow
>>> KFilterProxySearchLine to work on trees.  So it allows you to add a
>>> Search  box to a QTreeView with a model.
>>
>> great, i think we have a couple places we can use that in plasma as well.
>> but quick question: did this go through any API review?
>>
>
> Hi,
>
> I've just had a look.
>
> The filtering behaviour seems a bit odd to me.
>
> Considering a tree like this:
>
> A
> B
> - C
> - - D
> - - - E
> - - - - F
> - G
> - H
> - - I
> - - - J
>
> If you try to match 'J', you'll get 'B' and everything under it including D,
> E, F, right?

It shouldn't do.  If it does, it's a bug.


 Not what I'd expect. It's even more wierd if you start match
> with a start index other than row 0.
>
> I think what you might want to use is KDescendantsProxyModel. I've been
> using a predecessor of it in the KJots Link dialog for about a year for
> matching books and pages in a tree. It turns the tree into a flat list which
> you can then match against and get the hits you want.
>
> If this class is going to stick around, the name KSortFilterProxyModel isn't
> the best, because that implies that it's the class you should always use in
> KDE apps where otherwise a QSortFilterProxyModel would be used. This is
> something dfaure brought up with me when I tried to do something similar
> (which also had no effect by default.) Not sure if it's a big deal. Maybe
> KTreeFilterProxyModel?
>
> Finally, I think you have the wrong copyright in the .cpp file.
>
> All the best,
>
> Steve.
>
>
>




More information about the kde-core-devel mailing list