core/ui separation

David Faure faure at kde.org
Thu May 18 12:09:55 BST 2006


On Thursday 18 May 2006 11:55, Luciano Montanaro wrote:
> On Thursday 18 May 2006 10:43, Thiago Macieira wrote:
> > Matthias Kretz wrote:
> > >Hi,
> > >
> > >as I still maintain a separation of non-GUI and GUI dependant code in
> > > Phonon, I wanted to make sure that this is a sensible thing to do...
> > > because even now the non-GUI code is not GUI free as there are
> > > KMessageBox uses when errors occur. And of course it's GUI dependent as
> > > it uses KIO.
> > >
> > >Will we have a kdecore that will not depend on QtGui? Is there a chance
> > > of being able to use KIO without a dependency on QtGui? If not, I'll
> > > drop the Phonon core/ui separation now and make some of that code a
> > > little easier...
> >
> > We want to have libkdecore not depend on QtGui. Some of the KIO non-GUI
> > related things are being moved up to libkdecore (think KJob). But libkio
> > itself will depend on libkdeui, afaik.
> 
> Does it really have to? All the UI an IOslave needs is a way to notify 
> errors, and mabe a way to ask for a username/password. It could do this by 
> either delegating the application to display/ask the needed information, or 
> ask a desktop service through IPC. What else I'm forgetting?

- progress information
- overwrite/rename/skip dialog boxes

So the full list is

- progress information; already delegated to a desktop service, kio_uiserver
- password dialog; already delegated to a desktop service, kpasswdserver (kded module)
- overwrite/rename/skip dialog boxes; used to be in kio_uiserver and then I moved them back to kio,
  since modal dialogs in kio_uiserver were a bad idea, apps using uiserver would be blocked
  until the modal dialog is closed. [observer.cpp -r139967 for reference.]
  Maybe the fix is simply to let CopyJob be in kio or kdeui. It's the more low-level jobs
  that are non-gui.
- errors and warnings. I like the idea of an ErrorHandler class that would be derived from
in kdeui (maybe as a singleton instanciated by kapplication, which will be in kdeui,
and which can be instanciated manually otherwise).



-- 
David Faure, faure at kde.org, sponsored by Trolltech to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).




More information about the kde-core-devel mailing list