## ev-document-info

ev-document-info —

## Synopsis

                EvDocumentInfo;
    enum        EvDocumentLayout;
    enum        EvDocumentMode;
    enum        EvDocumentUIHints;
    enum        EvDocumentPermissions;
    enum        EvDocumentInfoFields;
    void        ev_document_info_free           (EvDocumentInfo *info);

## Description

## Details

### EvDocumentInfo

    typedef struct {
    	char *title;
    	char *format; /* eg, "pdf-1.5" */
    	char *author;
    	char *subject;
    	char *keywords;
    	char *creator;
    	char *producer;
    	char *linearized;
            char *security;
    	GTime creation_date;
    	GTime modified_date;
    	EvDocumentLayout layout;
    	EvDocumentMode mode;
    	guint ui_hints;
    	guint permissions;
    	int   n_pages;
    	double paper_height;
    	double paper_width;

    	/* Mask of all the valid fields */
    	guint fields_mask;
    } EvDocumentInfo;

### enum EvDocumentLayout

    typedef enum
    {
    	EV_DOCUMENT_LAYOUT_SINGLE_PAGE,
    	EV_DOCUMENT_LAYOUT_ONE_COLUMN,
    	EV_DOCUMENT_LAYOUT_TWO_COLUMN_LEFT,
    	EV_DOCUMENT_LAYOUT_TWO_COLUMN_RIGHT,
    	EV_DOCUMENT_LAYOUT_TWO_PAGE_LEFT,
    	EV_DOCUMENT_LAYOUT_TWO_PAGE_RIGHT,
    } EvDocumentLayout;

### enum EvDocumentMode

    typedef enum
    {
    	EV_DOCUMENT_MODE_NONE,
    	EV_DOCUMENT_MODE_USE_OC,
    	EV_DOCUMENT_MODE_USE_THUMBS,
    	EV_DOCUMENT_MODE_FULL_SCREEN,
    	EV_DOCUMENT_MODE_USE_ATTACHMENTS,
    	EV_DOCUMENT_MODE_PRESENTATION = EV_DOCUMENT_MODE_FULL_SCREEN /* Will these be different? */
    } EvDocumentMode;

### enum EvDocumentUIHints

    typedef enum
    {
    	EV_DOCUMENT_UI_HINT_HIDE_TOOLBAR = 1 << 0,
    	EV_DOCUMENT_UI_HINT_HIDE_MENUBAR = 1 << 1,
    	EV_DOCUMENT_UI_HINT_HIDE_WINDOWUI = 1 << 2,
    	EV_DOCUMENT_UI_HINT_FIT_WINDOW = 1 << 3,
    	EV_DOCUMENT_UI_HINT_CENTER_WINDOW = 1 << 4,
    	EV_DOCUMENT_UI_HINT_DISPLAY_DOC_TITLE = 1 << 5,
    	EV_DOCUMENT_UI_HINT_DIRECTION_RTL = 1 << 6,
    } EvDocumentUIHints;

### enum EvDocumentPermissions

    typedef enum
    {
    	EV_DOCUMENT_PERMISSIONS_OK_TO_PRINT = 1 << 0,
    	EV_DOCUMENT_PERMISSIONS_OK_TO_MODIFY = 1 << 1,
    	EV_DOCUMENT_PERMISSIONS_OK_TO_COPY = 1 << 2,
    	EV_DOCUMENT_PERMISSIONS_OK_TO_ADD_NOTES = 1 << 3,
    	EV_DOCUMENT_PERMISSIONS_FULL = (EV_DOCUMENT_PERMISSIONS_OK_TO_PRINT
    					| EV_DOCUMENT_PERMISSIONS_OK_TO_MODIFY
    					| EV_DOCUMENT_PERMISSIONS_OK_TO_COPY
    					| EV_DOCUMENT_PERMISSIONS_OK_TO_ADD_NOTES),
    } EvDocumentPermissions;

### enum EvDocumentInfoFields

    typedef enum
    {
    	EV_DOCUMENT_INFO_TITLE = 1 << 0,
    	EV_DOCUMENT_INFO_FORMAT = 1 << 1,
    	EV_DOCUMENT_INFO_AUTHOR = 1 << 2,
    	EV_DOCUMENT_INFO_SUBJECT = 1 << 3,
    	EV_DOCUMENT_INFO_KEYWORDS = 1 << 4,
    	EV_DOCUMENT_INFO_LAYOUT = 1 << 5,
    	EV_DOCUMENT_INFO_CREATOR = 1 << 6,
    	EV_DOCUMENT_INFO_PRODUCER = 1 << 7,
    	EV_DOCUMENT_INFO_CREATION_DATE = 1 << 8,
    	EV_DOCUMENT_INFO_MOD_DATE = 1 << 9,
    	EV_DOCUMENT_INFO_LINEARIZED = 1 << 10,
    	EV_DOCUMENT_INFO_START_MODE = 1 << 11,
    	EV_DOCUMENT_INFO_UI_HINTS = 1 << 12,
    	EV_DOCUMENT_INFO_PERMISSIONS = 1 << 13,
    	EV_DOCUMENT_INFO_N_PAGES = 1 << 14,
    	EV_DOCUMENT_INFO_SECURITY = 1 << 15,
    	EV_DOCUMENT_INFO_PAPER_SIZE = 1 << 16
    } EvDocumentInfoFields;

### ev_document_info_free ()

    void        ev_document_info_free           (EvDocumentInfo *info);

`info` : |