Re: moniker question



> (1) Coding was quite easy: I simply replaced all "http" by "camera" -
> voila. Do we really have to duplicate that much code? Couldn't you get
> bonobo to look for an equivalent storage module and using this to get a
> stream? For example, if somebody wants to resolve "hey:/whatever",
> couldn't you try to find a "libstorage_hey.so" first before asking oafd
> to start an external program?

The code duplication probably isn't necessary. For similar, simple
monikers like http and camera, there could probably be a more generalized
moniker for mapping simple things to a storage module. Or, it could
probably use the gnome-vfs for that stuff.

> (2) Another issue is that bonobo-moniker-http only creates an empty
> control. It starts the ebrowser, but doesn't send a stream to it. I
> assume it should be like "moniker-test -c file:/image.jpg", where I get
> EOG back displaying the picture. Is this a bug?

Hrm. I haven't touched it recently and the moniker stuff has changed (and
is changing) pretty quickly, so there's a good possibility that the http
moniker hasn't caught up. It used to, anyway. :)

> (3) Even more, the program to use for display ebrowser) is hardcoded in
> bonobo-moniker-http. What if I wanted to resolve
> "http://server/image.jpg";, why would I want to use the ebroser? I'd
> rather like to get back a decent image viewing program. 

Yeah, this shouldn't be, but the http moniker isn't finished (I did it
mostly as a way to learn how monikers work). It should get the mime type
from the ghttp headers (or from the gnome-vfs info if it's ported to
that) and then launch an appropriate control in that case. Either way, a
jpg will render in ebrowser.

> (4) In the camera case, I can't hardcode eog, as some digital cameras
> can also store movies or sound. Therefore, I guess I should use another
> moniker to resolve the stream I get from the camera. BUT: How can I
> resolve a stream without temporarily saving it to disk? Is there a way
> of getting a control directly from a stream? That would be useful for
> the bonobo-moniker-http, too.

You can put the stream into memory using a BonoboStreamMem. As for
streams, you don't really resolve them, but you could determine what kind
of data it is, launch a control and pass a stream to it.

Joe





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]