summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorPaul Gardiner <paul.gardiner@artifex.com>2013-06-09 12:30:16 -0400
committerRobin Watts <robin.watts@artifex.com>2013-06-09 12:48:24 -0400
commit8b3bfb0a08896c14a405dd91f86a998a602045a2 (patch)
treec256d5edf52d00ec8ef0bddcb0205616beb2ef69 /apps
parent60005383aae11f8b8fabd8926e439e7f0bdc29de (diff)
downloadmupdf-8b3bfb0a08896c14a405dd91f86a998a602045a2.tar.xz
Remove fz_interactive API in favour of direct use of pdf API
Diffstat (limited to 'apps')
-rw-r--r--apps/jstest_main.c14
-rw-r--r--apps/mudraw.c39
-rw-r--r--apps/pdfapp.c80
-rw-r--r--apps/pdfapp.h3
-rw-r--r--apps/win_main.c28
-rw-r--r--apps/x11_main.c14
6 files changed, 90 insertions, 88 deletions
diff --git a/apps/jstest_main.c b/apps/jstest_main.c
index 84d4dc9b..6c6a69b3 100644
--- a/apps/jstest_main.c
+++ b/apps/jstest_main.c
@@ -37,18 +37,18 @@ void winerror(pdfapp_t *app, char *msg)
exit(1);
}
-void winalert(pdfapp_t *app, fz_alert_event *alert)
+void winalert(pdfapp_t *app, pdf_alert_event *alert)
{
fprintf(stderr, "Alert %s: %s", alert->title, alert->message);
switch (alert->button_group_type)
{
- case FZ_ALERT_BUTTON_GROUP_OK:
- case FZ_ALERT_BUTTON_GROUP_OK_CANCEL:
- alert->button_pressed = FZ_ALERT_BUTTON_OK;
+ case PDF_ALERT_BUTTON_GROUP_OK:
+ case PDF_ALERT_BUTTON_GROUP_OK_CANCEL:
+ alert->button_pressed = PDF_ALERT_BUTTON_OK;
break;
- case FZ_ALERT_BUTTON_GROUP_YES_NO:
- case FZ_ALERT_BUTTON_GROUP_YES_NO_CANCEL:
- alert->button_pressed = FZ_ALERT_BUTTON_YES;
+ case PDF_ALERT_BUTTON_GROUP_YES_NO:
+ case PDF_ALERT_BUTTON_GROUP_YES_NO_CANCEL:
+ alert->button_pressed = PDF_ALERT_BUTTON_YES;
break;
}
}
diff --git a/apps/mudraw.c b/apps/mudraw.c
index cab25ac0..3664cba5 100644
--- a/apps/mudraw.c
+++ b/apps/mudraw.c
@@ -3,6 +3,7 @@
*/
#include "fitz.h"
+#include "mupdf-internal.h"
#ifdef _MSC_VER
#include <winsock2.h>
@@ -274,24 +275,24 @@ static void drawpage(fz_context *ctx, fz_document *doc, int pagenum)
if (mujstest_file)
{
- fz_interactive *inter = fz_interact(doc);
- fz_widget *widget = NULL;
+ pdf_document *inter = pdf_specifics(doc);
+ pdf_widget *widget = NULL;
if (inter)
- widget = fz_first_widget(inter, page);
+ widget = pdf_first_widget(inter, (pdf_page *)page);
if (widget)
{
fprintf(mujstest_file, "GOTO %d\n", pagenum);
needshot = 1;
}
- for (;widget; widget = fz_next_widget(inter, widget))
+ for (;widget; widget = pdf_next_widget(widget))
{
fz_rect rect;
int w, h, len;
- int type = fz_widget_get_type(widget);
+ int type = pdf_widget_get_type(widget);
- fz_bound_widget(widget, &rect);
+ pdf_bound_widget(widget, &rect);
w = (rect.x1 - rect.x0);
h = (rect.y1 - rect.y0);
++mujstest_count;
@@ -300,19 +301,19 @@ static void drawpage(fz_context *ctx, fz_document *doc, int pagenum)
default:
fprintf(mujstest_file, "%% UNKNOWN %0.2f %0.2f %0.2f %0.2f\n", rect.x0, rect.y0, rect.x1, rect.y1);
break;
- case FZ_WIDGET_TYPE_PUSHBUTTON:
+ case PDF_WIDGET_TYPE_PUSHBUTTON:
fprintf(mujstest_file, "%% PUSHBUTTON %0.2f %0.2f %0.2f %0.2f\n", rect.x0, rect.y0, rect.x1, rect.y1);
break;
- case FZ_WIDGET_TYPE_CHECKBOX:
+ case PDF_WIDGET_TYPE_CHECKBOX:
fprintf(mujstest_file, "%% CHECKBOX %0.2f %0.2f %0.2f %0.2f\n", rect.x0, rect.y0, rect.x1, rect.y1);
break;
- case FZ_WIDGET_TYPE_RADIOBUTTON:
+ case PDF_WIDGET_TYPE_RADIOBUTTON:
fprintf(mujstest_file, "%% RADIOBUTTON %0.2f %0.2f %0.2f %0.2f\n", rect.x0, rect.y0, rect.x1, rect.y1);
break;
- case FZ_WIDGET_TYPE_TEXT:
+ case PDF_WIDGET_TYPE_TEXT:
{
- int maxlen = fz_text_widget_max_len(inter, widget);
- int texttype = fz_text_widget_content_type(inter, widget);
+ int maxlen = pdf_text_widget_max_len(inter, widget);
+ int texttype = pdf_text_widget_content_type(inter, widget);
/* If height is low, assume a single row, and base
* the width off that. */
@@ -341,31 +342,31 @@ static void drawpage(fz_context *ctx, fz_document *doc, int pagenum)
switch (texttype)
{
default:
- case FZ_WIDGET_CONTENT_UNRESTRAINED:
+ case PDF_WIDGET_CONTENT_UNRESTRAINED:
fprintf(mujstest_file, "TEXT %d ", mujstest_count);
escape_string(mujstest_file, len-3, lorem);
fprintf(mujstest_file, "\n");
break;
- case FZ_WIDGET_CONTENT_NUMBER:
+ case PDF_WIDGET_CONTENT_NUMBER:
fprintf(mujstest_file, "TEXT %d\n", mujstest_count);
break;
- case FZ_WIDGET_CONTENT_SPECIAL:
+ case PDF_WIDGET_CONTENT_SPECIAL:
fprintf(mujstest_file, "TEXT %lld\n", 46702919800LL + mujstest_count);
break;
- case FZ_WIDGET_CONTENT_DATE:
+ case PDF_WIDGET_CONTENT_DATE:
fprintf(mujstest_file, "TEXT Jun %d 1979\n", 1 + ((13 + mujstest_count) % 30));
break;
- case FZ_WIDGET_CONTENT_TIME:
+ case PDF_WIDGET_CONTENT_TIME:
++mujstest_count;
fprintf(mujstest_file, "TEXT %02d:%02d\n", ((mujstest_count/60) % 24), mujstest_count % 60);
break;
}
break;
}
- case FZ_WIDGET_TYPE_LISTBOX:
+ case PDF_WIDGET_TYPE_LISTBOX:
fprintf(mujstest_file, "%% LISTBOX %0.2f %0.2f %0.2f %0.2f\n", rect.x0, rect.y0, rect.x1, rect.y1);
break;
- case FZ_WIDGET_TYPE_COMBOBOX:
+ case PDF_WIDGET_TYPE_COMBOBOX:
fprintf(mujstest_file, "%% COMBOBOX %0.2f %0.2f %0.2f %0.2f\n", rect.x0, rect.y0, rect.x1, rect.y1);
break;
}
diff --git a/apps/pdfapp.c b/apps/pdfapp.c
index 33f222fc..50ecaf6f 100644
--- a/apps/pdfapp.c
+++ b/apps/pdfapp.c
@@ -101,26 +101,26 @@ void pdfapp_invert(pdfapp_t *app, const fz_rect *rect)
fz_invert_pixmap_rect(app->image, fz_round_rect(&b, rect));
}
-static void event_cb(fz_doc_event *event, void *data)
+static void event_cb(pdf_doc_event *event, void *data)
{
pdfapp_t *app = (pdfapp_t *)data;
switch (event->type)
{
- case FZ_DOCUMENT_EVENT_ALERT:
+ case PDF_DOCUMENT_EVENT_ALERT:
{
- fz_alert_event *alert = fz_access_alert_event(event);
+ pdf_alert_event *alert = pdf_access_alert_event(event);
winalert(app, alert);
}
break;
- case FZ_DOCUMENT_EVENT_PRINT:
+ case PDF_DOCUMENT_EVENT_PRINT:
winprint(app);
break;
- case FZ_DOCUMENT_EVENT_EXEC_MENU_ITEM:
+ case PDF_DOCUMENT_EVENT_EXEC_MENU_ITEM:
{
- char *item = fz_access_exec_menu_item_event(event);
+ char *item = pdf_access_exec_menu_item_event(event);
if (!strcmp(item, "Print"))
winprint(app);
@@ -129,21 +129,21 @@ static void event_cb(fz_doc_event *event, void *data)
}
break;
- case FZ_DOCUMENT_EVENT_EXEC_DIALOG:
+ case PDF_DOCUMENT_EVENT_EXEC_DIALOG:
pdfapp_warn(app, "The document attempted to open a dialog box. (Not supported)");
break;
- case FZ_DOCUMENT_EVENT_LAUNCH_URL:
+ case PDF_DOCUMENT_EVENT_LAUNCH_URL:
{
- fz_launch_url_event *launch_url = fz_access_launch_url_event(event);
+ pdf_launch_url_event *launch_url = pdf_access_launch_url_event(event);
pdfapp_warn(app, "The document attempted to open url: %s. (Not supported by app)", launch_url->url);
}
break;
- case FZ_DOCUMENT_EVENT_MAIL_DOC:
+ case PDF_DOCUMENT_EVENT_MAIL_DOC:
{
- fz_mail_doc_event *mail_doc = fz_access_mail_doc_event(event);
+ pdf_mail_doc_event *mail_doc = pdf_access_mail_doc_event(event);
pdfapp_warn(app, "The document attmepted to mail the document%s%s%s%s%s%s%s%s (Not supported)",
mail_doc->to[0]?", To: ":"", mail_doc->to,
@@ -162,14 +162,14 @@ void pdfapp_open(pdfapp_t *app, char *filename, int reload)
fz_try(ctx)
{
- fz_interactive *idoc;
+ pdf_document *idoc;
app->doc = fz_open_document(ctx, filename);
- idoc = fz_interact(app->doc);
+ idoc = pdf_specifics(app->doc);
if (idoc)
- fz_set_doc_event_callback(idoc, event_cb, app);
+ pdf_set_doc_event_callback(idoc, event_cb, app);
if (fz_needs_password(app->doc))
{
@@ -357,9 +357,9 @@ static int pdfapp_save(pdfapp_t *app)
int pdfapp_preclose(pdfapp_t *app)
{
- fz_interactive *idoc = fz_interact(app->doc);
+ pdf_document *idoc = pdf_specifics(app->doc);
- if (idoc && fz_has_unsaved_changes(idoc))
+ if (idoc && pdf_has_unsaved_changes(idoc))
{
switch (winsavequery(app))
{
@@ -540,16 +540,16 @@ static void pdfapp_recreate_annotationslist(pdfapp_t *app)
static void pdfapp_updatepage(pdfapp_t *app)
{
- fz_interactive *idoc = fz_interact(app->doc);
+ pdf_document *idoc = pdf_specifics(app->doc);
fz_device *idev;
fz_matrix ctm;
fz_annot *annot;
pdfapp_viewctm(&ctm, app);
- fz_update_page(idoc, app->page);
+ pdf_update_page(idoc, (pdf_page *)app->page);
pdfapp_recreate_annotationslist(app);
- while ((annot = fz_poll_changed_annot(idoc, app->page)) != NULL)
+ while ((annot = (fz_annot *)pdf_poll_changed_annot(idoc, (pdf_page *)app->page)) != NULL)
{
fz_rect bounds;
fz_irect ibounds;
@@ -1195,32 +1195,32 @@ void pdfapp_onmouse(pdfapp_t *app, int x, int y, int btn, int modifiers, int sta
if (btn == 1 && (state == 1 || state == -1))
{
- fz_ui_event event;
- fz_interactive *idoc = fz_interact(app->doc);
+ pdf_ui_event event;
+ pdf_document *idoc = pdf_specifics(app->doc);
- event.etype = FZ_EVENT_TYPE_POINTER;
+ event.etype = PDF_EVENT_TYPE_POINTER;
event.event.pointer.pt = p;
if (state == 1)
- event.event.pointer.ptype = FZ_POINTER_DOWN;
+ event.event.pointer.ptype = PDF_POINTER_DOWN;
else /* state == -1 */
- event.event.pointer.ptype = FZ_POINTER_UP;
+ event.event.pointer.ptype = PDF_POINTER_UP;
- if (idoc && fz_pass_event(idoc, app->page, &event))
+ if (idoc && pdf_pass_event(idoc, (pdf_page *)app->page, &event))
{
- fz_widget *widget;
+ pdf_widget *widget;
- widget = fz_focused_widget(idoc);
+ widget = pdf_focused_widget(idoc);
app->nowaitcursor = 1;
pdfapp_updatepage(app);
if (widget)
{
- switch (fz_widget_get_type(widget))
+ switch (pdf_widget_get_type(widget))
{
- case FZ_WIDGET_TYPE_TEXT:
+ case PDF_WIDGET_TYPE_TEXT:
{
- char *text = fz_text_widget_text(idoc, widget);
+ char *text = pdf_text_widget_text(idoc, widget);
char *current_text = text;
int retry = 0;
@@ -1229,15 +1229,15 @@ void pdfapp_onmouse(pdfapp_t *app, int x, int y, int btn, int modifiers, int sta
current_text = wintextinput(app, current_text, retry);
retry = 1;
}
- while (current_text && !fz_text_widget_set_text(idoc, widget, current_text));
+ while (current_text && !pdf_text_widget_set_text(idoc, widget, current_text));
fz_free(app->ctx, text);
pdfapp_updatepage(app);
}
break;
- case FZ_WIDGET_TYPE_LISTBOX:
- case FZ_WIDGET_TYPE_COMBOBOX:
+ case PDF_WIDGET_TYPE_LISTBOX:
+ case PDF_WIDGET_TYPE_COMBOBOX:
{
int nopts;
int nvals;
@@ -1249,17 +1249,17 @@ void pdfapp_onmouse(pdfapp_t *app, int x, int y, int btn, int modifiers, int sta
fz_try(ctx)
{
- nopts = fz_choice_widget_options(idoc, widget, NULL);
+ nopts = pdf_choice_widget_options(idoc, widget, NULL);
opts = fz_malloc(ctx, nopts * sizeof(*opts));
- (void)fz_choice_widget_options(idoc, widget, opts);
+ (void)pdf_choice_widget_options(idoc, widget, opts);
- nvals = fz_choice_widget_value(idoc, widget, NULL);
+ nvals = pdf_choice_widget_value(idoc, widget, NULL);
vals = fz_malloc(ctx, MAX(nvals,nopts) * sizeof(*vals));
- (void)fz_choice_widget_value(idoc, widget, vals);
+ (void)pdf_choice_widget_value(idoc, widget, vals);
if (winchoiceinput(app, nopts, opts, &nvals, vals))
{
- fz_choice_widget_set_value(idoc, widget, nvals, vals);
+ pdf_choice_widget_set_value(idoc, widget, nvals, vals);
pdfapp_updatepage(app);
}
}
@@ -1275,12 +1275,12 @@ void pdfapp_onmouse(pdfapp_t *app, int x, int y, int btn, int modifiers, int sta
}
break;
- case FZ_WIDGET_TYPE_SIGNATURE:
+ case PDF_WIDGET_TYPE_SIGNATURE:
{
char ebuf[256];
ebuf[0] = 0;
- if (fz_check_signature(ctx, idoc, widget, app->docpath, ebuf, sizeof(ebuf)))
+ if (pdf_check_signature(ctx, idoc, widget, app->docpath, ebuf, sizeof(ebuf)))
{
winwarn(app, "Signature is valid");
}
diff --git a/apps/pdfapp.h b/apps/pdfapp.h
index a788e253..9c8a0ee9 100644
--- a/apps/pdfapp.h
+++ b/apps/pdfapp.h
@@ -2,6 +2,7 @@
#define PDFAPP_H
#include "fitz.h"
+#include "mupdf-internal.h"
/*
* Utility object for handling a pdf application / view
@@ -37,7 +38,7 @@ extern void winhelp(pdfapp_t*);
extern void winfullscreen(pdfapp_t*, int state);
extern int winsavequery(pdfapp_t*);
extern int wingetsavepath(pdfapp_t*, char *buf, int len);
-extern void winalert(pdfapp_t *, fz_alert_event *alert);
+extern void winalert(pdfapp_t *, pdf_alert_event *alert);
extern void winprint(pdfapp_t *);
extern void winadvancetimer(pdfapp_t *, float duration);
extern void winreplacefile(char *source, char *target);
diff --git a/apps/win_main.c b/apps/win_main.c
index d19f29ba..bf765d6b 100644
--- a/apps/win_main.c
+++ b/apps/win_main.c
@@ -100,40 +100,40 @@ void winerror(pdfapp_t *app, char *msg)
exit(1);
}
-void winalert(pdfapp_t *app, fz_alert_event *alert)
+void winalert(pdfapp_t *app, pdf_alert_event *alert)
{
int buttons = MB_OK;
int icon = MB_ICONWARNING;
- int pressed = FZ_ALERT_BUTTON_NONE;
+ int pressed = PDF_ALERT_BUTTON_NONE;
switch (alert->icon_type)
{
- case FZ_ALERT_ICON_ERROR:
+ case PDF_ALERT_ICON_ERROR:
icon = MB_ICONERROR;
break;
- case FZ_ALERT_ICON_WARNING:
+ case PDF_ALERT_ICON_WARNING:
icon = MB_ICONWARNING;
break;
- case FZ_ALERT_ICON_QUESTION:
+ case PDF_ALERT_ICON_QUESTION:
icon = MB_ICONQUESTION;
break;
- case FZ_ALERT_ICON_STATUS:
+ case PDF_ALERT_ICON_STATUS:
icon = MB_ICONINFORMATION;
break;
}
switch (alert->button_group_type)
{
- case FZ_ALERT_BUTTON_GROUP_OK:
+ case PDF_ALERT_BUTTON_GROUP_OK:
buttons = MB_OK;
break;
- case FZ_ALERT_BUTTON_GROUP_OK_CANCEL:
+ case PDF_ALERT_BUTTON_GROUP_OK_CANCEL:
buttons = MB_OKCANCEL;
break;
- case FZ_ALERT_BUTTON_GROUP_YES_NO:
+ case PDF_ALERT_BUTTON_GROUP_YES_NO:
buttons = MB_YESNO;
break;
- case FZ_ALERT_BUTTON_GROUP_YES_NO_CANCEL:
+ case PDF_ALERT_BUTTON_GROUP_YES_NO_CANCEL:
buttons = MB_YESNOCANCEL;
break;
}
@@ -143,16 +143,16 @@ void winalert(pdfapp_t *app, fz_alert_event *alert)
switch (pressed)
{
case IDOK:
- alert->button_pressed = FZ_ALERT_BUTTON_OK;
+ alert->button_pressed = PDF_ALERT_BUTTON_OK;
break;
case IDCANCEL:
- alert->button_pressed = FZ_ALERT_BUTTON_CANCEL;
+ alert->button_pressed = PDF_ALERT_BUTTON_CANCEL;
break;
case IDNO:
- alert->button_pressed = FZ_ALERT_BUTTON_NO;
+ alert->button_pressed = PDF_ALERT_BUTTON_NO;
break;
case IDYES:
- alert->button_pressed = FZ_ALERT_BUTTON_YES;
+ alert->button_pressed = PDF_ALERT_BUTTON_YES;
}
}
diff --git a/apps/x11_main.c b/apps/x11_main.c
index 1c0ca0b0..270f15df 100644
--- a/apps/x11_main.c
+++ b/apps/x11_main.c
@@ -116,18 +116,18 @@ void winwarn(pdfapp_t *app, char *msg)
fprintf(stderr, "mupdf: warning: %s\n", msg);
}
-void winalert(pdfapp_t *app, fz_alert_event *alert)
+void winalert(pdfapp_t *app, pdf_alert_event *alert)
{
fprintf(stderr, "Alert %s: %s", alert->title, alert->message);
switch (alert->button_group_type)
{
- case FZ_ALERT_BUTTON_GROUP_OK:
- case FZ_ALERT_BUTTON_GROUP_OK_CANCEL:
- alert->button_pressed = FZ_ALERT_BUTTON_OK;
+ case PDF_ALERT_BUTTON_GROUP_OK:
+ case PDF_ALERT_BUTTON_GROUP_OK_CANCEL:
+ alert->button_pressed = PDF_ALERT_BUTTON_OK;
break;
- case FZ_ALERT_BUTTON_GROUP_YES_NO:
- case FZ_ALERT_BUTTON_GROUP_YES_NO_CANCEL:
- alert->button_pressed = FZ_ALERT_BUTTON_YES;
+ case PDF_ALERT_BUTTON_GROUP_YES_NO:
+ case PDF_ALERT_BUTTON_GROUP_YES_NO_CANCEL:
+ alert->button_pressed = PDF_ALERT_BUTTON_YES;
break;
}
}