summaryrefslogtreecommitdiff
path: root/apps/macpdf.app/macpdf.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/macpdf.app/macpdf.c')
-rw-r--r--apps/macpdf.app/macpdf.c69
1 files changed, 69 insertions, 0 deletions
diff --git a/apps/macpdf.app/macpdf.c b/apps/macpdf.app/macpdf.c
new file mode 100644
index 00000000..88ea3351
--- /dev/null
+++ b/apps/macpdf.app/macpdf.c
@@ -0,0 +1,69 @@
+#include "macpdf.h"
+
+static void
+init_window(viewctx *ctx)
+{
+ WindowRef window = ctx->window;
+ HIViewRef viewPane;
+ static const HIViewID viewPaneID = { 'Poof', 666 };
+ OSStatus err;
+
+ err = HIViewFindByID(HIViewGetRoot(window), viewPaneID, &viewPane);
+ printf("err from findbyid: %d\n", err);
+}
+
+int
+openpdf(WindowRef window, const char *filename)
+{
+ HIViewRef viewPane;
+ static const HIViewID viewPaneID = { 'Poof', 666 };
+ OSStatus err;
+
+ err = HIViewFindByID(HIViewGetRoot(window), viewPaneID, &viewPane);
+ require_noerr(err, cleanup);
+
+ err = view_openpdf(viewPane, filename);
+ require_noerr(err, cleanup);
+
+ err = view_showpage(viewPane);
+
+ cleanup:
+ return err;
+}
+
+int main(int argc, char *argv[])
+{
+ IBNibRef nibRef;
+ OSStatus err;
+ WindowRef window;
+
+ fz_cpudetect();
+ fz_accelerate();
+
+ err = view_register();
+ require_noerr(err, CantRegisterView);
+
+ err = CreateNibReference(CFSTR("main"), &nibRef);
+ printf("err = %d\n", err);
+ require_noerr(err, CantGetNibRef);
+
+ err = SetMenuBarFromNib(nibRef, CFSTR("MenuBar"));
+ require_noerr(err, CantSetMenuBar);
+
+ err = CreateWindowFromNib(nibRef, CFSTR("MainWindow"), &window);
+ require_noerr(err, CantCreateWindow);
+
+ openpdf(window, "tiger.pdf");
+
+ DisposeNibReference(nibRef);
+
+ ShowWindow(window);
+ RunApplicationEventLoop();
+
+ CantGetNibRef:
+ CantSetMenuBar:
+ CantCreateWindow:
+ CantRegisterView:
+
+ return err;
+}