- Timestamp:
- Nov 13, 2006, 1:19:18 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcaca/trunk/cucul/import.c
r1378 r1384 351 351 unsigned int i, j, skip, dummy = 0; 352 352 unsigned int width = 0, height = 0, wch = 1; 353 uint32_t savedattr, resizeattr; 353 354 unsigned long int ch; 354 355 int x = 0, y = 0, save_x = 0, save_y = 0; 355 356 356 cucul_set_canvas_size(cv, width, height);357 cucul_set_canvas_size(cv, 0, 0); 357 358 if(utf8) 358 359 { 359 grcm.dfg = cucul_attr_to_ansi_fg(cv->curattr);360 grcm.dbg = cucul_attr_to_ansi_bg(cv->curattr);360 grcm.dfg = CUCUL_DEFAULT; 361 grcm.dbg = CUCUL_TRANSPARENT; 361 362 } 362 363 else … … 364 365 grcm.dfg = CUCUL_LIGHTGRAY; 365 366 grcm.dbg = CUCUL_BLACK; 366 cucul_set_color_ansi(cv, grcm.dfg, grcm.dbg); 367 } 367 cucul_set_color_ansi(cv, CUCUL_LIGHTGRAY, CUCUL_BLACK); 368 } 369 370 resizeattr = cucul_get_attr(cv, -1, -1); 368 371 369 372 ansi_parse_grcm(cv, &grcm, 1, &dummy); … … 492 495 case 'K': /* EL - Erase In Line */ 493 496 if(width < 80) 494 cucul_set_color_ansi(cv, grcm.dfg, grcm.dbg); 497 { 498 savedattr = cucul_get_attr(cv, -1, -1); 499 cucul_set_attr(cv, resizeattr); 495 500 cucul_set_canvas_size(cv, width = 80, height); 501 cucul_set_attr(cv, savedattr); 502 } 496 503 for(j = x; j < 80; j++) 497 504 cucul_put_char(cv, j, y, ' '); … … 542 549 if((unsigned int)x + wch > width) 543 550 { 544 cucul_set_color_ansi(cv, grcm.dfg, grcm.dbg); 551 savedattr = cucul_get_attr(cv, -1, -1); 552 cucul_set_attr(cv, resizeattr); 545 553 cucul_set_canvas_size(cv, width = x + wch, height); 554 cucul_set_attr(cv, savedattr); 546 555 } 547 556 548 557 if((unsigned int)y >= height) 549 558 { 550 cucul_set_color_ansi(cv, grcm.dfg, grcm.dbg); 559 savedattr = cucul_get_attr(cv, -1, -1); 560 cucul_set_attr(cv, resizeattr); 551 561 cucul_set_canvas_size(cv, width, height = y + 1); 562 cucul_set_attr(cv, savedattr); 552 563 } 553 564 554 565 /* Now paste our character */ 555 cucul_set_color_ansi(cv, grcm.efg, grcm.ebg);556 566 cucul_put_char(cv, x, y, ch); 557 567 x += wch; … … 560 570 if((unsigned int)y > height) 561 571 { 562 cucul_set_color_ansi(cv, grcm.dfg, grcm.dbg); 572 savedattr = cucul_get_attr(cv, -1, -1); 573 cucul_set_attr(cv, resizeattr); 563 574 cucul_set_canvas_size(cv, width, height = y); 575 cucul_set_attr(cv, savedattr); 564 576 } 565 577 … … 646 658 } 647 659 } 648 } 649 660 661 cucul_set_color_ansi(cv, g->efg, g->ebg); 662 } 663
Note: See TracChangeset
for help on using the changeset viewer.