diff options
Diffstat (limited to 'macpdf/carbonpdf.c')
-rw-r--r-- | macpdf/carbonpdf.c | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/macpdf/carbonpdf.c b/macpdf/carbonpdf.c new file mode 100644 index 00000000..e543e7c7 --- /dev/null +++ b/macpdf/carbonpdf.c @@ -0,0 +1,69 @@ +#include "carbonpdf.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, "/Users/raph/golf/fitz/tiger.pdf"); + + DisposeNibReference(nibRef); + + ShowWindow(window); + RunApplicationEventLoop(); + + CantGetNibRef: + CantSetMenuBar: + CantCreateWindow: + CantRegisterView: + + return err; +} |