[RFC] How do I tell the MainWindow that the Part won't work?
hausmann at kde.org
Sat Jun 7 12:36:41 BST 2003
On Sat, Jun 07, 2003 at 01:02:27PM +0200, Christian Loose wrote:
> Hi guys,
> We have a problem in Cervisia.
> In KDE HEAD, Cervisia uses the new cvs DCOP service to provide it's
> functionality to it's users. Without the DCOP service Cervisia won't work at
> all. Normally this isn't a problem because the part should be able to start
> the service.
> Now to the problem:
> CervisiaPart starts the service in its constructor. Now if
> KApplication::startServiceByDesktopName(...) fails (e.g. user made a mistake
> while installing KDE), there is no way that the part can prevent the further
> processing by telling its calling app (CervisiaShell, Konqueror) that an
> error occurred. Instead the part is created but non-functional.
> Does somebody have an idea?
Asking the obligatory question :) : Why use a separate process for
this very task in the first place? Are there locking issues that are
very hard to solve when doing the CVS handling in-process (i.e.
launching the cvs process from inside cervisia, not using a second
proxy process) ?
It seems to me that there is a lot of communication between the cvs
service process and cervisia as client, which is where things get
complicated with DCOP (how to recover when the process dies?) .
Imagine how simple the code in cervisia could be if you could deal
with CvsJob C++ objects directly.
Just a though. Feel free to ignore :)
More information about the kde-core-devel