the type of function via which the app receives
document events.
*/
-typedef void (pdf_doc_event_cb)(fz_context *ctx, pdf_document *doc, pdf_doc_event *event, void *data);
+typedef void (pdf_doc_event_cb)(fz_context *ctx, pdf_document *doc, pdf_doc_event *evt, void *data);
/*
Open a PDF document.
structure are owned by mupdf and need not be freed by the
caller.
*/
-pdf_alert_event *pdf_access_alert_event(fz_context *ctx, pdf_doc_event *event);
+pdf_alert_event *pdf_access_alert_event(fz_context *ctx, pdf_doc_event *evt);
/*
access the details of am execMenuItem
event, which consists of just the name of the menu item
*/
-const char *pdf_access_exec_menu_item_event(fz_context *ctx, pdf_doc_event *event);
+const char *pdf_access_exec_menu_item_event(fz_context *ctx, pdf_doc_event *evt);
/*
details of a launch-url event. The app should
event. The returned pointer and all data referred to by the structure
are owned by mupdf and need not be freed by the caller.
*/
-pdf_launch_url_event *pdf_access_launch_url_event(fz_context *ctx, pdf_doc_event *event);
+pdf_launch_url_event *pdf_access_launch_url_event(fz_context *ctx, pdf_doc_event *evt);
/*
details of a mail_doc event. The app should save
const char *message;
} pdf_mail_doc_event;
-pdf_mail_doc_event *pdf_access_mail_doc_event(fz_context *ctx, pdf_doc_event *event);
+pdf_mail_doc_event *pdf_access_mail_doc_event(fz_context *ctx, pdf_doc_event *evt);
-void pdf_event_issue_alert(fz_context *ctx, pdf_document *doc, pdf_alert_event *event);
+void pdf_event_issue_alert(fz_context *ctx, pdf_document *doc, pdf_alert_event *evt);
void pdf_event_issue_print(fz_context *ctx, pdf_document *doc);
void pdf_event_issue_exec_menu_item(fz_context *ctx, pdf_document *doc, const char *item);
void pdf_event_issue_launch_url(fz_context *ctx, pdf_document *doc, const char *url, int new_frame);
-void pdf_event_issue_mail_doc(fz_context *ctx, pdf_document *doc, pdf_mail_doc_event *event);
+void pdf_event_issue_mail_doc(fz_context *ctx, pdf_document *doc, pdf_mail_doc_event *evt);
#endif
}
-static void event_cb(fz_context *ctx, pdf_document *doc, pdf_doc_event *event, void *data)
+static void event_cb(fz_context *ctx, pdf_document *doc, pdf_doc_event *evt, void *data)
{
- switch (event->type)
+ switch (evt->type)
{
case PDF_DOCUMENT_EVENT_ALERT:
{
- pdf_alert_event *alert = pdf_access_alert_event(ctx, event);
+ pdf_alert_event *alert = pdf_access_alert_event(ctx, evt);
alert_box("%s", alert->message);
}
break;
pdfapp_open(app, filename, 1);
}
-static void event_cb(fz_context *ctx, pdf_document *doc, pdf_doc_event *event, void *data)
+static void event_cb(fz_context *ctx, pdf_document *doc, pdf_doc_event *evt, void *data)
{
pdfapp_t *app = (pdfapp_t *)data;
- switch (event->type)
+ switch (evt->type)
{
case PDF_DOCUMENT_EVENT_ALERT:
{
- pdf_alert_event *alert = pdf_access_alert_event(ctx, event);
+ pdf_alert_event *alert = pdf_access_alert_event(ctx, evt);
winalert(app, alert);
}
break;
case PDF_DOCUMENT_EVENT_EXEC_MENU_ITEM:
{
- const char *item = pdf_access_exec_menu_item_event(ctx, event);
+ const char *item = pdf_access_exec_menu_item_event(ctx, evt);
if (!strcmp(item, "Print"))
winprint(app);
case PDF_DOCUMENT_EVENT_LAUNCH_URL:
{
- pdf_launch_url_event *launch_url = pdf_access_launch_url_event(ctx, event);
+ pdf_launch_url_event *launch_url = pdf_access_launch_url_event(ctx, evt);
pdfapp_warn(app, "The document attempted to open url: %s. (Not supported by app)", launch_url->url);
}
case PDF_DOCUMENT_EVENT_MAIL_DOC:
{
- pdf_mail_doc_event *mail_doc = pdf_access_mail_doc_event(ctx, event);
+ pdf_mail_doc_event *mail_doc = pdf_access_mail_doc_event(ctx, evt);
pdfapp_warn(app, "The document attempted to mail the document%s%s%s%s%s%s%s%s (Not supported)",
mail_doc->to[0]?", To: ":"", mail_doc->to,
pdf_alert_event alert;
} pdf_alert_event_internal;
-pdf_alert_event *pdf_access_alert_event(fz_context *ctx, pdf_doc_event *event)
+pdf_alert_event *pdf_access_alert_event(fz_context *ctx, pdf_doc_event *evt)
{
pdf_alert_event *alert = NULL;
- if (event->type == PDF_DOCUMENT_EVENT_ALERT)
- alert = &((pdf_alert_event_internal *)event)->alert;
+ if (evt->type == PDF_DOCUMENT_EVENT_ALERT)
+ alert = &((pdf_alert_event_internal *)evt)->alert;
return alert;
}
const char *item;
} pdf_exec_menu_item_event_internal;
-const char *pdf_access_exec_menu_item_event(fz_context *ctx, pdf_doc_event *event)
+const char *pdf_access_exec_menu_item_event(fz_context *ctx, pdf_doc_event *evt)
{
const char *item = NULL;
- if (event->type == PDF_DOCUMENT_EVENT_EXEC_MENU_ITEM)
- item = ((pdf_exec_menu_item_event_internal *)event)->item;
+ if (evt->type == PDF_DOCUMENT_EVENT_EXEC_MENU_ITEM)
+ item = ((pdf_exec_menu_item_event_internal *)evt)->item;
return item;
}
pdf_launch_url_event launch_url;
} pdf_launch_url_event_internal;
-pdf_launch_url_event *pdf_access_launch_url_event(fz_context *ctx, pdf_doc_event *event)
+pdf_launch_url_event *pdf_access_launch_url_event(fz_context *ctx, pdf_doc_event *evt)
{
pdf_launch_url_event *launch_url = NULL;
- if (event->type == PDF_DOCUMENT_EVENT_LAUNCH_URL)
- launch_url = &((pdf_launch_url_event_internal *)event)->launch_url;
+ if (evt->type == PDF_DOCUMENT_EVENT_LAUNCH_URL)
+ launch_url = &((pdf_launch_url_event_internal *)evt)->launch_url;
return launch_url;
}
pdf_mail_doc_event mail_doc;
} pdf_mail_doc_event_internal;
-pdf_mail_doc_event *pdf_access_mail_doc_event(fz_context *ctx, pdf_doc_event *event)
+pdf_mail_doc_event *pdf_access_mail_doc_event(fz_context *ctx, pdf_doc_event *evt)
{
pdf_mail_doc_event *mail_doc = NULL;
- if (event->type == PDF_DOCUMENT_EVENT_MAIL_DOC)
- mail_doc = &((pdf_mail_doc_event_internal *)event)->mail_doc;
+ if (evt->type == PDF_DOCUMENT_EVENT_MAIL_DOC)
+ mail_doc = &((pdf_mail_doc_event_internal *)evt)->mail_doc;
return mail_doc;
}
-void pdf_event_issue_mail_doc(fz_context *ctx, pdf_document *doc, pdf_mail_doc_event *event)
+void pdf_event_issue_mail_doc(fz_context *ctx, pdf_document *doc, pdf_mail_doc_event *evt)
{
if (doc->event_cb)
{
pdf_mail_doc_event_internal e;
e.base.type = PDF_DOCUMENT_EVENT_MAIL_DOC;
- e.mail_doc = *event;
+ e.mail_doc = *evt;
doc->event_cb(ctx, doc, (pdf_doc_event *)&e, doc->event_cb_data);
}
int pdf_set_text_field_value(fz_context *ctx, pdf_widget *widget, const char *update)
{
pdf_document *doc = widget->page->doc;
- pdf_keystroke_event event = { 0 };
+ pdf_keystroke_event evt = { 0 };
char *new_change = NULL;
char *new_value = NULL;
int rc = 1;
{
if (!widget->ignore_trigger_events)
{
- event.value = pdf_annot_field_value(ctx, widget);
- event.change = update;
- event.selStart = 0;
- event.selEnd = (int)strlen(event.value);
- event.willCommit = 0;
- rc = pdf_annot_field_event_keystroke(ctx, doc, widget, &event);
- new_change = event.newChange;
- new_value = event.newValue;
- event.newValue = NULL;
- event.newChange = NULL;
+ evt.value = pdf_annot_field_value(ctx, widget);
+ evt.change = update;
+ evt.selStart = 0;
+ evt.selEnd = (int)strlen(evt.value);
+ evt.willCommit = 0;
+ rc = pdf_annot_field_event_keystroke(ctx, doc, widget, &evt);
+ new_change = evt.newChange;
+ new_value = evt.newValue;
+ evt.newValue = NULL;
+ evt.newChange = NULL;
if (rc)
{
- event.value = merge_changes(ctx, new_value, event.selStart, event.selEnd, new_change);
- event.change = "";
- event.selStart = -1;
- event.selEnd = -1;
- event.willCommit = 1;
- rc = pdf_annot_field_event_keystroke(ctx, doc, widget, &event);
+ evt.value = merge_changes(ctx, new_value, evt.selStart, evt.selEnd, new_change);
+ evt.change = "";
+ evt.selStart = -1;
+ evt.selEnd = -1;
+ evt.willCommit = 1;
+ rc = pdf_annot_field_event_keystroke(ctx, doc, widget, &evt);
if (rc)
- rc = pdf_set_annot_field_value(ctx, doc, widget, event.newValue, 0);
+ rc = pdf_set_annot_field_value(ctx, doc, widget, evt.newValue, 0);
}
}
else
{
pdf_end_operation(ctx, doc);
fz_free(ctx, new_value);
- fz_free(ctx, event.newValue);
+ fz_free(ctx, evt.newValue);
fz_free(ctx, new_change);
- fz_free(ctx, event.newChange);
+ fz_free(ctx, evt.newChange);
}
fz_catch(ctx)
{
static void app_alert(js_State *J)
{
pdf_js *js = unpack_arguments(J, "cMsg", "nIcon", "nType", "cTitle", 0);
- pdf_alert_event event;
+ pdf_alert_event evt;
- event.message = js_tostring(J, 1);
- event.icon_type = js_tointeger(J, 2);
- event.button_group_type = js_tointeger(J, 3);
- event.title = js_isdefined(J, 4) ? js_tostring(J, 4) : "PDF Alert";
- event.button_pressed = 0; /* WIP WIP WIP IS THIS CORRECT? */
+ evt.message = js_tostring(J, 1);
+ evt.icon_type = js_tointeger(J, 2);
+ evt.button_group_type = js_tointeger(J, 3);
+ evt.title = js_isdefined(J, 4) ? js_tostring(J, 4) : "PDF Alert";
+ evt.button_pressed = 0; /* WIP WIP WIP IS THIS CORRECT? */
fz_try(js->ctx)
- pdf_event_issue_alert(js->ctx, js->doc, &event);
+ pdf_event_issue_alert(js->ctx, js->doc, &evt);
fz_catch(js->ctx)
rethrow(js);
- js_pushnumber(J, event.button_pressed);
+ js_pushnumber(J, evt.button_pressed);
}
static void app_execMenuItem(js_State *J)
static void doc_mailDoc(js_State *J)
{
pdf_js *js = unpack_arguments(J, "bUI", "cTo", "cCc", "cBcc", "cSubject", "cMessage", 0);
- pdf_mail_doc_event event;
+ pdf_mail_doc_event evt;
- event.ask_user = js_isdefined(J, 1) ? js_toboolean(J, 1) : 1;
- event.to = js_tostring(J, 2);
- event.cc = js_tostring(J, 3);
- event.bcc = js_tostring(J, 4);
- event.subject = js_tostring(J, 5);
- event.message = js_tostring(J, 6);
+ evt.ask_user = js_isdefined(J, 1) ? js_toboolean(J, 1) : 1;
+ evt.to = js_tostring(J, 2);
+ evt.cc = js_tostring(J, 3);
+ evt.bcc = js_tostring(J, 4);
+ evt.subject = js_tostring(J, 5);
+ evt.message = js_tostring(J, 6);
fz_try(js->ctx)
- pdf_event_issue_mail_doc(js->ctx, js->doc, &event);
+ pdf_event_issue_mail_doc(js->ctx, js->doc, &evt);
fz_catch(js->ctx)
rethrow(js);
}
return rc;
}
-void pdf_js_event_init_keystroke(pdf_js *js, pdf_obj *target, pdf_keystroke_event *event)
+void pdf_js_event_init_keystroke(pdf_js *js, pdf_obj *target, pdf_keystroke_event *evt)
{
if (js)
{
- pdf_js_event_init(js, target, event->value, event->willCommit);
+ pdf_js_event_init(js, target, evt->value, evt->willCommit);
js_getglobal(js->imp, "event");
{
- js_pushstring(js->imp, event->change);
+ js_pushstring(js->imp, evt->change);
js_setproperty(js->imp, -2, "change");
- js_pushnumber(js->imp, event->selStart);
+ js_pushnumber(js->imp, evt->selStart);
js_setproperty(js->imp, -2, "selStart");
- js_pushnumber(js->imp, event->selEnd);
+ js_pushnumber(js->imp, evt->selEnd);
js_setproperty(js->imp, -2, "selEnd");
}
js_pop(js->imp, 1);
void pdf_disable_js(fz_context *ctx, pdf_document *doc) { }
int pdf_js_supported(fz_context *ctx, pdf_document *doc) { return 0; }
void pdf_js_event_init(pdf_js *js, pdf_obj *target, const char *value, int willCommit) { }
-void pdf_js_event_init_keystroke(pdf_js *js, pdf_obj *target, pdf_keystroke_event *event) { }
+void pdf_js_event_init_keystroke(pdf_js *js, pdf_obj *target, pdf_keystroke_event *evt) { }
int pdf_js_event_result_keystroke(pdf_js *js, pdf_keystroke_event *evt) { return 1; }
int pdf_js_event_result(pdf_js *js) { return 1; }
char *pdf_js_event_value(pdf_js *js) { return ""; }
const char *listener;
};
-static void event_cb(fz_context *ctx, pdf_document *doc, pdf_doc_event *event, void *data)
+static void event_cb(fz_context *ctx, pdf_document *doc, pdf_doc_event *evt, void *data)
{
js_State *J = ((struct event_cb_data *) data)->J;
const char *listener = ((struct event_cb_data *) data)->listener;
- switch (event->type)
+ switch (evt->type)
{
case PDF_DOCUMENT_EVENT_ALERT:
{
- pdf_alert_event *alert = pdf_access_alert_event(ctx, event);
+ pdf_alert_event *alert = pdf_access_alert_event(ctx, evt);
if (js_try(J))
rethrow_as_fz(J);