diff options
author | Robin Watts <robin.watts@artifex.com> | 2014-01-03 16:50:41 +0000 |
---|---|---|
committer | Robin Watts <robin.watts@artifex.com> | 2014-01-07 10:25:42 +0000 |
commit | 7f009acebb75ff88c1ee934b03fa2d15f7785b32 (patch) | |
tree | 7be547523d730d104c62e4b5d43685dd8bb5bd40 /include/mupdf/fitz/context.h | |
parent | 016adfa063293281a0896c62bf22e406b09ddf21 (diff) | |
download | mupdf-7f009acebb75ff88c1ee934b03fa2d15f7785b32.tar.xz |
Introduce 'document handlers'.
We define a document handler for each file type (2 in the case of PDF, one
to handle files with the ability to 'run' them, and one without).
We then register these handlers with the context at startup, and then
call fz_open_document... as usual. This enables people to select the
document types they want at will (and even to extend the library with more
document types should they wish).
Diffstat (limited to 'include/mupdf/fitz/context.h')
-rw-r--r-- | include/mupdf/fitz/context.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/mupdf/fitz/context.h b/include/mupdf/fitz/context.h index bb171b3f..c6adbb3f 100644 --- a/include/mupdf/fitz/context.h +++ b/include/mupdf/fitz/context.h @@ -18,6 +18,7 @@ typedef struct fz_aa_context_s fz_aa_context; typedef struct fz_locks_context_s fz_locks_context; typedef struct fz_store_s fz_store; typedef struct fz_glyph_cache_s fz_glyph_cache; +typedef struct fz_document_handler_context_s fz_document_handler_context; typedef struct fz_context_s fz_context; struct fz_alloc_context_s @@ -107,6 +108,7 @@ struct fz_context_s fz_aa_context *aa; fz_store *store; fz_glyph_cache *glyph_cache; + fz_document_handler_context *handler; }; /* @@ -416,6 +418,10 @@ void fz_new_aa_context(fz_context *ctx); void fz_free_aa_context(fz_context *ctx); void fz_copy_aa_context(fz_context *dst, fz_context *src); +void fz_new_document_handler_context(fz_context *ctx); +void fz_drop_document_handler_context(fz_context *ctx); +fz_document_handler_context *fz_keep_document_handler_context(fz_context *ctx); + /* Default allocator */ extern fz_alloc_context fz_alloc_default; |