Commit 1938b3a0ac71efac22c6d196193bacdaa022c090
1 parent
68e48178
Exists in
master
and in
5 other branches
Implementando vários métodos para apagamento de tela
Showing
3 changed files
with
54 additions
and
0 deletions
Show diff stats
src/classlib/local.cc
| ... | ... | @@ -152,7 +152,11 @@ |
| 152 | 152 | int (*_set_host_charset)(H3270 *hSession, const char *name); |
| 153 | 153 | const char * (*_get_host_charset)(H3270 *hSession); |
| 154 | 154 | int (*_print)(H3270 *hSession); |
| 155 | + int (*_erase)(H3270 *hSession); | |
| 155 | 156 | int (*_erase_eof)(H3270 *hSession); |
| 157 | + int (*_erase_eol)(H3270 *hSession); | |
| 158 | + int (*_erase_input)(H3270 *hSession); | |
| 159 | + | |
| 156 | 160 | const char * (*_ebc2asc)(H3270 *hSession, unsigned char *buffer, int sz); |
| 157 | 161 | const char * (*_asc2ebc)(H3270 *hSession, unsigned char *buffer, int sz); |
| 158 | 162 | |
| ... | ... | @@ -205,7 +209,12 @@ |
| 205 | 209 | { (void **) & _get_display_charset, "lib3270_get_display_charset" }, |
| 206 | 210 | { (void **) & _set_host_charset, "lib3270_set_host_charset" }, |
| 207 | 211 | { (void **) & _get_host_charset, "lib3270_get_host_charset" }, |
| 212 | + | |
| 213 | + { (void **) & _erase, "lib3270_erase" }, | |
| 208 | 214 | { (void **) & _erase_eof, "lib3270_eraseeof" }, |
| 215 | + { (void **) & _erase_eol, "lib3270_eraseeol" }, | |
| 216 | + { (void **) & _erase_input, "lib3270_eraseinput" }, | |
| 217 | + | |
| 209 | 218 | { (void **) & _print, "lib3270_print" }, |
| 210 | 219 | { (void **) & _ebc2asc, "lib3270_ebc2asc" }, |
| 211 | 220 | { (void **) & _asc2ebc, "lib3270_asc2ebc" }, |
| ... | ... | @@ -409,11 +418,26 @@ |
| 409 | 418 | return string(_get_host_charset(hSession)); |
| 410 | 419 | } |
| 411 | 420 | |
| 421 | + int erase(void) | |
| 422 | + { | |
| 423 | + return _erase(hSession); | |
| 424 | + } | |
| 425 | + | |
| 412 | 426 | int erase_eof(void) |
| 413 | 427 | { |
| 414 | 428 | return _erase_eof(hSession); |
| 415 | 429 | } |
| 416 | 430 | |
| 431 | + int erase_eol(void) | |
| 432 | + { | |
| 433 | + return _erase_eol(hSession); | |
| 434 | + } | |
| 435 | + | |
| 436 | + int erase_input(void) | |
| 437 | + { | |
| 438 | + return _erase_input(hSession); | |
| 439 | + } | |
| 440 | + | |
| 417 | 441 | int print(void) |
| 418 | 442 | { |
| 419 | 443 | return _print(hSession); | ... | ... |
src/classlib/session.cc
| ... | ... | @@ -528,6 +528,29 @@ |
| 528 | 528 | } |
| 529 | 529 | #endif // WIN32 |
| 530 | 530 | |
| 531 | + int session::erase(int mode) { | |
| 532 | + | |
| 533 | + switch(mode) { | |
| 534 | + case 0: | |
| 535 | + erase(); | |
| 536 | + break; | |
| 537 | + | |
| 538 | + case 1: | |
| 539 | + erase_eof(); | |
| 540 | + break; | |
| 541 | + | |
| 542 | + case 2: | |
| 543 | + erase_eol(); | |
| 544 | + break; | |
| 545 | + | |
| 546 | + case 3: | |
| 547 | + erase_input(); | |
| 548 | + break; | |
| 549 | + | |
| 550 | + } | |
| 551 | + } | |
| 552 | + | |
| 553 | + | |
| 531 | 554 | } |
| 532 | 555 | |
| 533 | 556 | ... | ... |
src/include/pw3270/class.h
| ... | ... | @@ -206,7 +206,14 @@ |
| 206 | 206 | |
| 207 | 207 | // Actions |
| 208 | 208 | virtual int quit(void) = 0; |
| 209 | + | |
| 210 | + int erase(int mode); | |
| 211 | + | |
| 212 | + virtual int erase(void) = 0; | |
| 209 | 213 | virtual int erase_eof(void) = 0; |
| 214 | + virtual int erase_eol(void) = 0; | |
| 215 | + virtual int erase_input(void) = 0; | |
| 216 | + | |
| 210 | 217 | virtual int print(void) = 0; |
| 211 | 218 | |
| 212 | 219 | // Field management | ... | ... |