My progress

Marco Martin notmart at gmail.com
Thu Jan 15 19:17:04 CET 2009


On Wednesday 14 January 2009, Aaron J. Seigo wrote:
> On Wednesday 14 January 2009, Marco Martin wrote:
> > On Wednesday 14 January 2009, Aaron J. Seigo wrote:
> > > On Wednesday 14 January 2009, Marco Martin wrote:
> > > > On Tuesday 13 January 2009, Aaron J. Seigo wrote:
> > > > > this would probably mean creating a small Plasma::Message class or
> > > > > (even re- using Plasma::ToolTipContent perhaps?) and allow
> > > > > plasmoids to queue such messages with the Applet class. the Applet
> > > > > class would then display it in a "plasma" way (what does that mean?
> > > > > i don't know for sure, but we can work that out together; perhaps
> > > > > an overlay on the plasmoid itself if it is big enough, perhaps a
> > > > > tooltip type thing, perhaps a notification in the system tray,...?)
> > > >
> > > > hmm woudn't this mean duplicating knotify in a similar-but-not-quite
> > > > way?
> > >
> > > it's not meant as a replacement for notifications, but rather a widget
> > > appropriate replacement for dialog boxes ...
> > >
> > > good example is folderview when it can't load the folder (doesn't
> > > exist, network down, whatever). that functionality should be available
> > > to all widgets.
> > >
> > > the weather widget in kdrevew uses a KMessagBox right now, because it's
> > > easy to do, but that causes all sorts of problems: it doesn't look
> > > Plasma and it blocks mouse interaction with the rest of the desktop.
> > >
> > > it'll also give us a nice simple bit of API to give scripters.
> >
> > could be something like the stuff attached,
>
> yep, that's probably pretty close =) perhaps showMessage(..) though?
yeah.
> > not really sure if it should
> > have also other buttons like a yes/no/cancel
>
> we'll eventually get a request for that, i'm sure. there's also the case
> where there is no "Ok" option, really. e.g. folderview's "I can't load this
> folder!"
so displaying the message without possibility of user until the applet 
explicitly says not to... and to deactivate maybe simply a 
showMessage(QString(), QString()) to keep api minimal... 

other things: the available buttons probably the usual combination of 
KDialog::ButtonCode flags (even if just  few of them will be supported..?)
> and then there is the situation of widgets in a space (e.g. the panel) that
> is too small to show it inline, so it would need to go into some sort of
> popup. it's a little more complicated i guess =)
yeah, like reparenting the overlay to graphicsWidget() in case of 
popupapplets, but probably not always, i feel that for configurationRequired 
applets the overlay maybe is better in the icon? (or not? hmm)

yeah, i know that was going to be quite hairy, but i kinda needed a 
distraction from real life, really :D
> > and be syncronous like
> > dialog.exec()?
>
> i don't think it needs to be sync, no...
and this is good, because if the applet won't be visible (another containment, 
covered by other applets, whatever) plasma would be pretty much killed in that 
case...

on the other hand i wonder in that case how it will be possible to notify the 
applet what buttons were pressed in a clean way... will either need a signal 
for each button or one with a button parameter, that wouldn't be as simple to 
use in the code (specially scripted one) as a dialong.exec() but probably 
better in the end...

Cheers,
Marco Martin


More information about the Plasma-devel mailing list