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 | ... | ... |