Re: Proposal: "Preview" shell for EoG/gpdf/ggv



On Mon, 2003-02-10 at 16:53, Jens Finke wrote:
> On Mon, 10 Feb 2003, Gustavo J. A. M.  Carneiro wrote:
> > 
> >   There is already a set of interfaces for this. These interfaces are:
> > 	1. Bonobo::Control, for actually displaying some file;
> > 	2. Bonobo::PersistStream, for load-save, which of course could be
> > constrained to loading only, and never saved;
> > 	3. Bonobo::Stream: a stream for an arbitrary URI can easily be created
> > through monikers [1]:
> > 	 stream = bonobo_get_object("vfs:ftp://server/dir/file.ext";,
> > "Bonobo/Stream");
> > 
> > 	Currently, the EOG shell uses Bonobo::PersistFile instead of (2),
> > but it can be easily fixed.
> 
> Well actually, eog supports both interfaces, PersistFile as well as 
> BonoboStream. 

  I stand corrected. :-)

> 
> But I am not convinced relying on BonoboStream solely is a good idea for a
> generic shell.  Often it is useful for a view not only accessing the raw
> data, but also have access to the complete URI and do all the
> loading/saving itself. For example, if you have to distinguish between
> remote and local files for speed or security issues. Or the view doesn't
> load a single file but a whole directory. Then you have to deal with a
> Bonobo::Storage interface, which is IMHO a pain to deal with (compared to
> gnome-vfs).
> 
> > 
> > 	<oaf_attribute type="stringv" name="bonobo:supported_mime_types">
> > 	    <item value="MIME-TYPE"/>
> > 	</oaf_attribute>
> 
> This can also be done on the bonobo_activation_query level and is not 
> bound to the use of monikers.

  I don't see what's wrong with monikers. They solve a lot of problems
elegantly.

  However, my main point is that there are already a lot of interfaces.
We just have to adopt a set of interfaces and *document* them. I just
don't want to see a libgnomefilepreview module being created or anything
like that. We already have libbonobo[ui], which is more than enough.

-- 
Gustavo Joćo Alves Marques Carneiro
<gjc inescporto pt> <gustavo users sourceforge net>





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