[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: Re: PATCH KGuiItem
From: Martijn Klingens <mklingens () ism ! nl>
Date: 2001-11-13 12:34:09
[Download RAW message or body]
On Monday 12 November 2001 23:33, you wrote:
> the KGuiItem is on the Todo List. Actually I created the KGuiItem class and
> changed KAction to use it. So basicly I don't know if everything necessary
> is in this class so speak up if you need some more.
Well... there is a bit too *much* in KAction now :-)
You duplicated the methods to get/set the fields that KGuiItem provides. That
somehow sounds a bit redundant to me, since your modified KAction inherits
the methods from KGuiItem.
Also, I think you should have a d pointer in KGuiItem and KAction. Removing
those as you do now is a very bad idea IMO for kdelibs code.
> I'm going to patch KDialogBase and KmessageBox to make use of this KGuiItem
> class as soon as it is accepted
Somehow I have the feeling you make me unemployed with regards to what I
wanted to do on KDE with the little spare time I have ;-)
> Further steps could be to add these things to KPopupMenu, KPushButton,
> KComboBox...
KPopupMenu is a bit questionable, since you can also plug KActions in menus
(and even in *Q* popup menus, instead of the 'K' version), but KPushButton
definitely could benefit from this.
> TODO: I'm going to add signals to KGuiItem to do the following,
> KGuiItem *item = new KStdAction::ok();
> item->setText(i18n("&Ok!"));
> KPushButton *button = new KPushButton(item );
> item->setText(i18n("&Save") );
> So with these signals I'm able to "autoupdate" the items.
Yes! I already dearly missed them in KDE 2.x's KAction, aand with KGuiItem
they are really needed IMO.
I don't know what the general consensus is, but I'd favour the signal to emit
a pointer to itself as last parameter:
emit( textChanged( m_text, this ) );
Qt's connect allows to connect with discarding the second parameter and in a
number of applications it might be very useful to have this pointer at hand
(share a single slot, optionally, to handle multiple actions/gui items).
Martijn
PS: I didn't have time to look at your code too closely, so I might find more
issues that I'd like to discuss, but on the whole your patch looks pretty
good already. Nice work!
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic