diff options
author | Sebastian Rasmussen <sebras@gmail.com> | 2016-07-31 14:52:53 +0800 |
---|---|---|
committer | Sebastian Rasmussen <sebras@gmail.com> | 2016-08-02 02:20:45 +0800 |
commit | 6372d8c0a92da39399a4aa0e4c0833611e4a249f (patch) | |
tree | 1e6c0e27b07a1715703c9a21a5ad85a935d284fd /source/tools | |
parent | e669037e78e1cfbe7adb3ad80dc2f80b62010a34 (diff) | |
download | mupdf-6372d8c0a92da39399a4aa0e4c0833611e4a249f.tar.xz |
JS: Add Path.curveTo*(), similar to JNI.
Diffstat (limited to 'source/tools')
-rw-r--r-- | source/tools/murun.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/source/tools/murun.c b/source/tools/murun.c index 99335929..248a0d68 100644 --- a/source/tools/murun.c +++ b/source/tools/murun.c @@ -2307,6 +2307,36 @@ static void ffi_Path_curveTo(js_State *J) rethrow(J); } +static void ffi_Path_curveToV(js_State *J) +{ + fz_context *ctx = js_getcontext(J); + fz_path *path = js_touserdata(J, 0, "fz_path"); + float cx = js_tonumber(J, 1); + float cy = js_tonumber(J, 2); + float ex = js_tonumber(J, 3); + float ey = js_tonumber(J, 4); + + fz_try(ctx) + fz_curvetov(ctx, path, cx, cy, ex, ey); + fz_catch(ctx) + rethrow(J); +} + +static void ffi_Path_curveToY(js_State *J) +{ + fz_context *ctx = js_getcontext(J); + fz_path *path = js_touserdata(J, 0, "fz_path"); + float cx = js_tonumber(J, 1); + float cy = js_tonumber(J, 2); + float ex = js_tonumber(J, 3); + float ey = js_tonumber(J, 4); + + fz_try(ctx) + fz_curvetoy(ctx, path, cx, cy, ex, ey); + fz_catch(ctx) + rethrow(J); +} + static void ffi_Path_closePath(js_State *J) { fz_context *ctx = js_getcontext(J); @@ -3622,6 +3652,8 @@ int murun_main(int argc, char **argv) jsB_propfun(J, "Path.moveTo", ffi_Path_moveTo, 2); jsB_propfun(J, "Path.lineTo", ffi_Path_lineTo, 2); jsB_propfun(J, "Path.curveTo", ffi_Path_curveTo, 6); + jsB_propfun(J, "Path.curveToV", ffi_Path_curveToV, 4); + jsB_propfun(J, "Path.curveToY", ffi_Path_curveToY, 4); jsB_propfun(J, "Path.closePath", ffi_Path_closePath, 0); jsB_propfun(J, "Path.rect", ffi_Path_rect, 4); } |