| libevdocument Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Prerequisites | ||||
#define EV_DOCUMENT_IFACE (k)
#define EV_IS_DOCUMENT_IFACE (k)
EvDocument;
EvDocumentIface;
EvPageCache;
EvPageCacheClass;
#define EV_DOCUMENT_ERROR
#define EV_DOC_MUTEX_LOCK
#define EV_DOC_MUTEX_UNLOCK
enum EvDocumentError;
EvPoint;
EvRectangle;
GQuark ev_document_error_quark (void);
GMutex * ev_document_get_doc_mutex (void);
void ev_document_doc_mutex_lock (void);
void ev_document_doc_mutex_unlock (void);
gboolean ev_document_doc_mutex_trylock (void);
GMutex * ev_document_get_fc_mutex (void);
void ev_document_fc_mutex_lock (void);
void ev_document_fc_mutex_unlock (void);
gboolean ev_document_fc_mutex_trylock (void);
EvDocumentInfo * ev_document_get_info (EvDocument *document);
gboolean ev_document_load (EvDocument *document,
const char *uri,
GError **error);
gboolean ev_document_save (EvDocument *document,
const char *uri,
GError **error);
int ev_document_get_n_pages (EvDocument *document);
EvPage * ev_document_get_page (EvDocument *document,
gint index);
void ev_document_get_page_size (EvDocument *document,
EvPage *page,
double *width,
double *height);
char * ev_document_get_page_label (EvDocument *document,
EvPage *page);
gboolean ev_document_has_attachments (EvDocument *document);
GList * ev_document_get_attachments (EvDocument *document);
cairo_surface_t * ev_document_render (EvDocument *document,
EvRenderContext *rc);
gint ev_rect_cmp (EvRectangle *a,
EvRectangle *b);
#define EV_TYPE_RECTANGLE
GType ev_rectangle_get_type (void);
EvRectangle * ev_rectangle_new (void);
EvRectangle * ev_rectangle_copy (EvRectangle *ev_rect);
void ev_rectangle_free (EvRectangle *ev_rect);
#define EV_BACKEND_IMPLEMENT_INTERFACE (TYPE_IFACE, iface_init)
#define EV_BACKEND_REGISTER_WITH_CODE (BackendName, backend_name, CODE)
#define EV_BACKEND_REGISTER (BackendName, backend_name)
#define EV_DEFINE_BOXED_TYPE (TypeName, type_name, copy_func, free_func)
#define EV_DEFINE_INTERFACE (TypeName, type_name, TYPE_PREREQ)
#define EV_DOCUMENT_IFACE(k) (G_TYPE_CHECK_CLASS_CAST((k), EV_TYPE_DOCUMENT, EvDocumentIface))
| k : |
#define EV_IS_DOCUMENT_IFACE(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EV_TYPE_DOCUMENT))
| k : |
typedef struct {
GTypeInterface base_iface;
/* Methods */
gboolean (* load) (EvDocument *document,
const char *uri,
GError **error);
gboolean (* save) (EvDocument *document,
const char *uri,
GError **error);
int (* get_n_pages) (EvDocument *document);
EvPage * (* get_page) (EvDocument *document,
gint index);
void (* get_page_size) (EvDocument *document,
EvPage *page,
double *width,
double *height);
char * (* get_page_label) (EvDocument *document,
EvPage *page);
gboolean (* has_attachments) (EvDocument *document);
GList * (* get_attachments) (EvDocument *document);
cairo_surface_t * (* render) (EvDocument *document,
EvRenderContext *rc);
EvDocumentInfo * (* get_info) (EvDocument *document);
} EvDocumentIface;
typedef enum
{
EV_DOCUMENT_ERROR_INVALID,
EV_DOCUMENT_ERROR_ENCRYPTED
} EvDocumentError;
EvDocumentInfo * ev_document_get_info (EvDocument *document);
| document : | |
| Returns : |
gboolean ev_document_load (EvDocument *document, const char *uri, GError **error);
Loads document from uri.
On failure, FALSE is returned and error is filled in. If the document is encrypted, EV_DEFINE_ERROR_ENCRYPTED is returned. If the backend cannot load the specific document, EV_DOCUMENT_ERROR_INVALID is returned. Other errors are possible too, depending on the backend used to load the document and the URI, e.g. GIOError, GFileError, and GConvertError.
gboolean ev_document_save (EvDocument *document, const char *uri, GError **error);
Saves document to uri.
EvPage * ev_document_get_page (EvDocument *document,
gint index);
| document : | |
| index : | |
| Returns : |
void ev_document_get_page_size (EvDocument *document,
EvPage *page,
double *width,
double *height);
| document : | |
| page : | |
| width : | |
| height : |
char * ev_document_get_page_label (EvDocument *document,
EvPage *page);
| document : | |
| page : | |
| Returns : |
gboolean ev_document_has_attachments (EvDocument *document);
| document : | |
| Returns : |
GList * ev_document_get_attachments (EvDocument *document);
| document : | |
| Returns : |
cairo_surface_t * ev_document_render (EvDocument *document, EvRenderContext *rc);
| document : | |
| rc : | |
| Returns : |
#define EV_BACKEND_IMPLEMENT_INTERFACE(TYPE_IFACE, iface_init)
| TYPE_IFACE : | |
| iface_init : |
#define EV_BACKEND_REGISTER_WITH_CODE(BackendName, backend_name, CODE)
| BackendName : | |
| backend_name : | |
| CODE : |
#define EV_BACKEND_REGISTER(BackendName, backend_name)
| BackendName : | |
| backend_name : |
#define EV_DEFINE_BOXED_TYPE(TypeName, type_name, copy_func, free_func)
| TypeName : | |
| type_name : | |
| copy_func : | |
| free_func : |