Changeset 3101
- Timestamp:
- 10/25/08 13:26:15 (5 years ago)
- Location:
- libcaca/trunk/caca-php
- Files:
-
- 2 edited
-
examples/example1.php (modified) (1 diff)
-
php_caca.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcaca/trunk/caca-php/examples/example1.php
r3089 r3101 2 2 <? 3 3 4 echo caca_ get_version()."\n";4 echo caca_put_str()."\n"; -
libcaca/trunk/caca-php/php_caca.c
r3094 r3101 315 315 ZEND_FETCH_RESOURCE(event, caca_event_t*, &_zval, -1, PHP_CACA_EVENT_RES_NAME, le_caca_event); 316 316 317 #define RETURN_CHAR(c) \ 318 char *str = emalloc(2); \ 319 str[0] = c; \ 320 str[1] = '\0'; \ 321 RETURN_STRING(str, 0); 322 323 317 324 //-------CACA'S FUNCTIONS----------------// 318 325 … … 332 339 333 340 PHP_FUNCTION(caca_set_canvas_size) { 341 zval *_zval; 342 long width, height = 0; 343 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rll", &_zval, &width, &height) == FAILURE) { 344 RETURN_FALSE; 345 } 346 caca_canvas_t *canvas; 347 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 348 RETURN_BOOL(caca_set_canvas_size(canvas, width, height) == 0); 334 349 } 335 350 … … 376 391 RETURN_FALSE; 377 392 } 393 378 394 caca_canvas_t *canvas; 379 395 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); … … 394 410 395 411 PHP_FUNCTION(caca_put_char) { 412 zval *_zval; 413 long x, y, c = 0; 414 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlll", &_zval, &x, &y, &c) == FAILURE) { 415 RETURN_FALSE; 416 } 417 418 caca_canvas_t *canvas; 419 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 420 RETURN_BOOL(caca_put_char(canvas, x, y, c) == 0); 396 421 } 397 422 398 423 PHP_FUNCTION(caca_get_char) { 424 zval *_zval; 425 long x, y = 0; 426 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rll", &_zval, &x, &y) == FAILURE) { 427 RETURN_FALSE; 428 } 429 430 caca_canvas_t *canvas; 431 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 432 RETURN_CHAR(caca_get_char(canvas, x, y)); 399 433 } 400 434 401 435 PHP_FUNCTION(caca_put_str) { 436 zval *_zval; 437 char *str; 438 long x, y, str_len = 0; 439 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlls", &_zval, &x, &y, &str, &str_len) == FAILURE) { 440 RETURN_FALSE; 441 } 442 443 caca_canvas_t *canvas; 444 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 445 RETURN_BOOL(caca_put_str(canvas, x, y, str) == 0); 402 446 } 403 447 … … 406 450 407 451 PHP_FUNCTION(caca_clear_canvas) { 452 caca_canvas_t *canvas; 453 FETCH_CANVAS(canvas); 454 RETURN_LONG(caca_clear_canvas(canvas)); 408 455 } 409 456 410 457 PHP_FUNCTION(caca_set_canvas_handle) { 458 zval *_zval; 459 long x, y = 0; 460 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rll", &_zval, &x, &y) == FAILURE) { 461 RETURN_FALSE; 462 } 463 464 caca_canvas_t *canvas; 465 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 466 RETURN_BOOL(caca_set_canvas_handle(canvas, x, y) == 0); 411 467 } 412 468 … … 424 480 425 481 PHP_FUNCTION(caca_blit) { 482 zval *_zval1, *_zval2, *_zval3; 483 long x, y = 0; 484 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rllrr", &_zval1, &x, &y, &_zval2, &_zval3) == FAILURE) { 485 RETURN_FALSE; 486 } 487 488 caca_canvas_t *dst, *src, *mask; 489 ZEND_FETCH_RESOURCE(dst, caca_canvas_t*, &_zval1, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 490 ZEND_FETCH_RESOURCE(src, caca_canvas_t*, &_zval2, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 491 ZEND_FETCH_RESOURCE(mask, caca_canvas_t*, &_zval3, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 492 493 RETURN_BOOL(caca_blit(dst, x, y, src, mask) == 0); 426 494 } 427 495 428 496 PHP_FUNCTION(caca_set_canvas_boundaries) { 497 zval *_zval; 498 long x, y, width, height = 0; 499 if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rllll", &_zval, &x, &y, &width, &height) == FAILURE) { 500 RETURN_FALSE; 501 } 502 503 caca_canvas_t *canvas; 504 ZEND_FETCH_RESOURCE(canvas, caca_canvas_t*, &_zval, -1, PHP_CACA_CANVAS_RES_NAME, le_caca_canvas); 505 RETURN_BOOL(caca_set_canvas_boundaries(canvas, x, y, width, height) == 0); 429 506 } 430 507
Note: See TracChangeset
for help on using the changeset viewer.
