summaryrefslogtreecommitdiff
path: root/pdf/pdf_event.c
diff options
context:
space:
mode:
authorPaul Gardiner <paulg.artifex@glidos.net>2012-09-25 16:55:45 +0100
committerPaul Gardiner <paulg.artifex@glidos.net>2012-09-25 16:55:45 +0100
commit13640bcfb6bfb5aa7b6f06b8a3b33d5d9a806652 (patch)
treed363ec3bc18307805511df025947026c06bd0019 /pdf/pdf_event.c
parent3f91c3e7d91124b92e7aa60b9916e66fe891eda4 (diff)
downloadmupdf-13640bcfb6bfb5aa7b6f06b8a3b33d5d9a806652.tar.xz
Forms: handle app.execMenuItem (presently just as a not-supported warning)
The name of the menu item is passed, so presumably the app could respond to some of the possibilities.
Diffstat (limited to 'pdf/pdf_event.c')
-rw-r--r--pdf/pdf_event.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/pdf/pdf_event.c b/pdf/pdf_event.c
index 653d2a1f..eeaa5dfb 100644
--- a/pdf/pdf_event.c
+++ b/pdf/pdf_event.c
@@ -41,6 +41,34 @@ void pdf_event_issue_print(pdf_document *doc)
doc->event_cb(&e, doc->event_cb_data);
}
+typedef struct
+{
+ fz_doc_event base;
+ char *item;
+} fz_exec_menu_item_event_internal;
+
+char *fz_access_exec_menu_item_event(fz_doc_event *event)
+{
+ char *item = NULL;
+
+ if (event->type == FZ_DOCUMENT_EVENT_EXEC_MENU_ITEM)
+ item = ((fz_exec_menu_item_event_internal *)event)->item;
+
+ return item;
+}
+
+void pdf_event_issue_exec_menu_item(pdf_document *doc, char *item)
+{
+ if (doc->event_cb)
+ {
+ fz_exec_menu_item_event_internal ievent;
+ ievent.base.type = FZ_DOCUMENT_EVENT_EXEC_MENU_ITEM;
+ ievent.item = item;
+
+ doc->event_cb((fz_doc_event *)&ievent, doc->event_cb_data);
+ }
+}
+
void pdf_set_doc_event_callback(pdf_document *doc, fz_doc_event_cb *fn, void *data)
{
doc->event_cb = fn;