[PATCH] KEditListBox::setCustomEditor

Sebastian Trüg strueg at mandriva.com
Fri Jan 18 11:11:58 GMT 2008


Please find attached the overhauled patch.

I did some more cleaning up:

 * moved the setEditor method to the Private class
 * moved the init method into the Private class
 * Removed the "m_" prefixes from all private members. This is just
   confusing

But I also changed the behavior a bit and hope this gets your OK since I think 
my changes finally make KEditListBox really usable.
Basically what I did was to replace the handling of the current item with the 
selected item. The result is:

 * The user can see their selection now (like they are used to anyway).  The 
   current item is not always visible in all styles and if you have to know 
   what to look for.
 * Action buttons are enabled and disabled based on the selection instead of
   the current item.
 * After adding an item (or changing it via return) the selection is cleared
   which allows to add a new item (in the old version after selecting an item
   it is impossible to ever add a new one again since there is no way for the
   user to change the current item)
 * The same is true for removing an item. The selection is cleared and the 
   user can add new items or change others.
 * Whenever the selection changes the lineedit gets the focus. This is very
   convenient as it saves one click and there is no real use for the keyboard
   focus in the listview.

May I commit this small change in behavior which has a huge impact on 
usability?

Cheers,
Sebastian


On Friday 18 January 2008 11:16:04 Sebastian Trüg wrote:
> On Friday 18 January 2008 10:45:43 David Faure wrote:
> > On Thursday 17 January 2008, Sebastian Trüg wrote:
> > > Hi guys,
> > >
> > > Attached is a patch that introduces a new method in KEditListBox to set
> > > the custom editor after creation. This is very much needed for usage of
> > > KEditListBox with QDesigner.
> > > The patch is BC as it only introduces two new non-virtual methods (one
> > > private, one public).
> >
> > Looks ok to me. The private method could be moved to the private class to
> > keep the public header clean (and to remove a lot of "d->" :-)
>
> Will do.
> Cheers,
> Sebastian


-------------- next part --------------
A non-text attachment was scrubbed...
Name: keditlistbox-custom-editor.diff
Type: text/x-diff
Size: 23377 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20080118/540d7442/attachment.diff>


More information about the kde-core-devel mailing list