[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-i18n
Subject:    Re: corbifying kget
From:       Simon Hausmann <tronical () gmx ! net>
Date:       1999-03-21 14:34:59
[Download RAW message or body]


On Sun, 21 Mar 1999, Matt Koss wrote:

> 
> I have just finished a basic update for Qt 2.0 - especially preferences dialog
> was all stucked together.
> Right now it looks fine and it even works !  :-)
> 
> Now I would like to corbify kget, so that we can finally integrate it with a
> konqueror.
> I have read all manuals and tutorials, looked at konqueror.idl and some 
> kodeknight stuff too.
> Still I am kind of confused about the way how to do it efficiently.
> 
> I hope that some KOM gurus will give me an advice for start.
> Also, please correct me if I say something totally wrong in this article, this
> is a first time that I am trying to create something with CORBA and KOM.
> 
> So far my idea is :
> 
> Konqueror side :
> ------------
> 1. konqueror will define a new type - Transfer :
>     struct Transfer  {
>         string source;
>         string dest;
>     };
> 
> 2. konqueror will define a new event - newTransfer : 
>     typedef Transfer EventNewTransfer;
>     const string eventNewTransfer = "Konqueror/NewTransfer";
> 
>     this event will be emited in two cases :
>        a.) User drags som file / files from one folder to the another.
>            This is a simple move or copy operation.
>        b.) User clicks Shift + left mouse button on some link = URL, and this
>             URL points to the file of other then html type.
>            This will be something like "Save URL" operation.
> 
> 
> Kget side :
> --------
> 1. I will modify kget, so that it accepts also file URL's - this way also
>    normal copying of two local files will be handled by kget.
> 
> 2.  In the main() function I will install eventFilter for the event
>      Konqueror/NewTransfer.
>      I still don't know, which object in konqueror will emit this NewTransfer
>      event and how will I get the handle for it. As far as I looked at the
>      konqueror sources, the copying files is not yet implemented in the
>      konqueror, so I guess that GUI guys will give me some message about
>      how they are going to do this.
> 
> 3.  I will create a script that will somehow register the services offered by
>     kget.
>     But does it mean, that kget will have to be started from the startkde 
>     script ? And will it be on the screen all the time as a window or docked  
>     widget ? Or will the window be first opened when konqueror or some other
>     app does a request for a transfer ?
> 
> The name for the functions / events are only for a reference.
> I guess that they will be changed if somebody suggests better names.
> 
> Comments / suggestions ?

Nice idea(s) !

Just two comments:

1) I think we should let the views implement yet another signal, just
like:
signal void newTransfer( in string source, in string destination );

The MainView then can connect to this signal and emit an event to itself.
If KGet is installed as plugin this event gets filtered and KGet can
process the download.
If the event is not filtered the MainView will handle the download itself
by starting an KIOJob and displaying the download progress in a section in
the statusbar.

2) There's no need for writing a script to install KGet as plugin in
Konqy: Konqueror will handle all this for you, KGet will just need some
special entries in it's .kdelnk file plus a proper autoloader for a
PluginFactory, creating KGet KOM plugin components.
(ah, ...and KGet will have to link against the IDL generated code from
konqueror.idl)

What do you think?
 
> Regards
> 
> 			Matt


Ciao,
 Simon

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic