diff options
Diffstat (limited to 'fitz/fitz.h')
-rw-r--r-- | fitz/fitz.h | 98 |
1 files changed, 56 insertions, 42 deletions
diff --git a/fitz/fitz.h b/fitz/fitz.h index 9ac43d48..d79d39f2 100644 --- a/fitz/fitz.h +++ b/fitz/fitz.h @@ -1160,24 +1160,6 @@ void fz_free_display_list(fz_context *ctx, fz_display_list *list); fz_device *fz_new_list_device(fz_context *ctx, fz_display_list *list); void fz_execute_display_list(fz_display_list *list, fz_device *dev, fz_matrix ctm, fz_bbox area); -/* - * Document interface. - */ - -typedef struct fz_outline_s fz_outline; - -struct fz_outline_s -{ - fz_context *ctx; - char *title; - int page; - fz_outline *next; - fz_outline *down; -}; - -void fz_debug_outline_xml(fz_outline *outline, int level); -void fz_debug_outline(fz_outline *outline, int level); -void fz_free_outline(fz_outline *outline); /* * Plotting functions. @@ -1237,11 +1219,12 @@ enum typedef struct fz_link_s fz_link; -typedef union fz_link_dest_s fz_link_dest; +typedef struct fz_link_dest_s fz_link_dest; typedef enum fz_link_kind_e { - FZ_LINK_GOTO = 0, + FZ_LINK_NONE = 0, + FZ_LINK_GOTO, FZ_LINK_URI, FZ_LINK_LAUNCH, FZ_LINK_NAMED, @@ -1258,39 +1241,70 @@ enum { fz_link_flag_r_is_zoom = 64 /* rb.x is actually a zoom figure */ }; -union fz_link_dest_s +struct fz_link_dest_s { - struct { - int page; - int flags; - fz_point lt; - fz_point rb; - char *file_spec; - int new_window; - } gotor; - struct { - char *uri; - int is_map; - } uri; - struct { - char *file_spec; - int new_window; - } launch; - struct { - char *named; - } named; + fz_link_kind kind; + union + { + struct + { + int page; + int flags; + fz_point lt; + fz_point rb; + char *file_spec; + int new_window; + } + gotor; + struct + { + char *uri; + int is_map; + } + uri; + struct + { + char *file_spec; + int new_window; + } + launch; + struct + { + char *named; + } + named; + } + ld; }; struct fz_link_s { - fz_link_kind kind; fz_rect rect; fz_link_dest dest; fz_link *next; }; -fz_link *fz_new_link(fz_context *ctx, fz_link_kind, fz_rect bbox, fz_link_dest dest); +fz_link *fz_new_link(fz_context *ctx, fz_rect bbox, fz_link_dest dest); void fz_free_link(fz_context *ctx, fz_link *); +/* + * Document interface. + */ + +typedef struct fz_outline_s fz_outline; + +struct fz_outline_s +{ + fz_context *ctx; + char *title; + fz_link_dest dest; + fz_outline *next; + fz_outline *down; +}; + +void fz_debug_outline_xml(fz_outline *outline, int level); +void fz_debug_outline(fz_outline *outline, int level); +void fz_free_outline(fz_outline *outline); + #endif |