diff --git a/src/classlib/local.cc b/src/classlib/local.cc index b1e1303..289f28e 100644 --- a/src/classlib/local.cc +++ b/src/classlib/local.cc @@ -152,7 +152,11 @@ int (*_set_host_charset)(H3270 *hSession, const char *name); const char * (*_get_host_charset)(H3270 *hSession); int (*_print)(H3270 *hSession); + int (*_erase)(H3270 *hSession); int (*_erase_eof)(H3270 *hSession); + int (*_erase_eol)(H3270 *hSession); + int (*_erase_input)(H3270 *hSession); + const char * (*_ebc2asc)(H3270 *hSession, unsigned char *buffer, int sz); const char * (*_asc2ebc)(H3270 *hSession, unsigned char *buffer, int sz); @@ -205,7 +209,12 @@ { (void **) & _get_display_charset, "lib3270_get_display_charset" }, { (void **) & _set_host_charset, "lib3270_set_host_charset" }, { (void **) & _get_host_charset, "lib3270_get_host_charset" }, + + { (void **) & _erase, "lib3270_erase" }, { (void **) & _erase_eof, "lib3270_eraseeof" }, + { (void **) & _erase_eol, "lib3270_eraseeol" }, + { (void **) & _erase_input, "lib3270_eraseinput" }, + { (void **) & _print, "lib3270_print" }, { (void **) & _ebc2asc, "lib3270_ebc2asc" }, { (void **) & _asc2ebc, "lib3270_asc2ebc" }, @@ -409,11 +418,26 @@ return string(_get_host_charset(hSession)); } + int erase(void) + { + return _erase(hSession); + } + int erase_eof(void) { return _erase_eof(hSession); } + int erase_eol(void) + { + return _erase_eol(hSession); + } + + int erase_input(void) + { + return _erase_input(hSession); + } + int print(void) { return _print(hSession); diff --git a/src/classlib/session.cc b/src/classlib/session.cc index 0e2872d..4775a7f 100644 --- a/src/classlib/session.cc +++ b/src/classlib/session.cc @@ -528,6 +528,29 @@ } #endif // WIN32 + int session::erase(int mode) { + + switch(mode) { + case 0: + erase(); + break; + + case 1: + erase_eof(); + break; + + case 2: + erase_eol(); + break; + + case 3: + erase_input(); + break; + + } + } + + } diff --git a/src/include/pw3270/class.h b/src/include/pw3270/class.h index 0a5b45b..2e8af02 100644 --- a/src/include/pw3270/class.h +++ b/src/include/pw3270/class.h @@ -206,7 +206,14 @@ // Actions virtual int quit(void) = 0; + + int erase(int mode); + + virtual int erase(void) = 0; virtual int erase_eof(void) = 0; + virtual int erase_eol(void) = 0; + virtual int erase_input(void) = 0; + virtual int print(void) = 0; // Field management -- libgit2 0.21.2