Re: Evince update and release



> Marco, may I suggest that if the other types use libraries like poppler
> then it would be just as practical to link to each of them individually.

Without an abstraction later you'd have to reimplement the UI for each
of them... Which could be the right thing to do if there was big
differences between the metadata exposed by the different backends
but... is that the case?

> Of course, a common EvDocument method would be nice, but at what
> expense? It is not simple to make this work with importing half of the
> backend.

What about something like this... It keeps some duplication but at
least provides a tiny abstraction layer...

ev-document-properties.c -> libbackendproperties.la

ev_document_properties_new (char *uri);
ev_document_properties_get_info (EvDocumentProperties *properties);

pdf-document-properties.c -> libpdfproperties.la
ps-document-properties.c -> libpsproperties.la
ppt-document-properties.c -> libpptproperties.la

libfrontendproperties.la libbackendproperties.la libpdfproperties.la
libpsproperties.la libpptproperties.la -> plugin.so

Or if you want to keep plugin size smaller and avoid to dinamically
link to a lot of libraries...

libfrontendproperties.la libbackendproperties.la libpdfproperties.la
-> pdf-plugin.so
libfrontendproperties.la libbackendproperties.la libpsproperties.la ->
ps-plugin.so

Marco



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