Commit 73c89b0685cfd94584f61a33d74ef7ab61334e69
1 parent
f2132466
Exists in
master
and in
5 other branches
Issue #1 - Retorno de estado do hllapi deve considerar o estado
apresentado na OIA e não o estado da conexão com o host já que o segundo não captura bloqueios de teclado. Incluindo mais "pre-reqs" no script de instalação do cross-compiler Primeira versão compilada usando o SuSE Leap.
Showing
7 changed files
with
41 additions
and
21 deletions
Show diff stats
install-cross.sh
@@ -36,8 +36,11 @@ gdk-pixbuf-query-loaders | @@ -36,8 +36,11 @@ gdk-pixbuf-query-loaders | ||
36 | python-devel | 36 | python-devel |
37 | EOF | 37 | EOF |
38 | 38 | ||
39 | -# Instala o tema usado no pacote windows | ||
40 | -sudo zypper --non-interactive in adwaita-icon-theme | 39 | +# Instala apicativos e temas necessários |
40 | +sudo zypper --non-interactive in \ | ||
41 | + adwaita-icon-theme \ | ||
42 | + gettext-tools \ | ||
43 | + glib2-devel | ||
41 | 44 | ||
42 | while read FILE | 45 | while read FILE |
43 | do | 46 | do |
src/classlib/local.cc
@@ -123,6 +123,8 @@ | @@ -123,6 +123,8 @@ | ||
123 | // Lib3270 entry points | 123 | // Lib3270 entry points |
124 | const char * (*_get_version)(void); | 124 | const char * (*_get_version)(void); |
125 | LIB3270_CSTATE (*_get_connection_state)(H3270 *h); | 125 | LIB3270_CSTATE (*_get_connection_state)(H3270 *h); |
126 | + LIB3270_MESSAGE (*_get_program_message)(H3270 *h); | ||
127 | + | ||
126 | int (*_disconnect)(H3270 *h); | 128 | int (*_disconnect)(H3270 *h); |
127 | int (*_connect)(H3270 *h,int wait); | 129 | int (*_connect)(H3270 *h,int wait); |
128 | const char (*_set_url)(H3270 *h, const char *n); | 130 | const char (*_set_url)(H3270 *h, const char *n); |
@@ -183,6 +185,7 @@ | @@ -183,6 +185,7 @@ | ||
183 | 185 | ||
184 | { (void **) & _is_connected, "lib3270_is_connected" }, | 186 | { (void **) & _is_connected, "lib3270_is_connected" }, |
185 | { (void **) & _get_connection_state, "lib3270_get_connection_state" }, | 187 | { (void **) & _get_connection_state, "lib3270_get_connection_state" }, |
188 | + { (void **) & _get_program_message, "lib3270_get_program_message" }, | ||
186 | 189 | ||
187 | { (void **) & _get_version, "lib3270_get_version" }, | 190 | { (void **) & _get_version, "lib3270_get_version" }, |
188 | { (void **) & _disconnect, "lib3270_disconnect" }, | 191 | { (void **) & _disconnect, "lib3270_disconnect" }, |
@@ -266,6 +269,10 @@ | @@ -266,6 +269,10 @@ | ||
266 | return _get_connection_state(hSession); | 269 | return _get_connection_state(hSession); |
267 | } | 270 | } |
268 | 271 | ||
272 | + LIB3270_MESSAGE get_program_message(void) { | ||
273 | + return _get_program_message(hSession); | ||
274 | + } | ||
275 | + | ||
269 | int connect(void) | 276 | int connect(void) |
270 | { | 277 | { |
271 | return _connect(hSession,0); | 278 | return _connect(hSession,0); |
src/classlib/remote.cc
@@ -49,20 +49,21 @@ | @@ -49,20 +49,21 @@ | ||
49 | #include <pw3270/ipcpackets.h> | 49 | #include <pw3270/ipcpackets.h> |
50 | #include <process.h> | 50 | #include <process.h> |
51 | #else | 51 | #else |
52 | - #define HLLAPI_PACKET_IS_CONNECTED "isConnected" | ||
53 | - #define HLLAPI_PACKET_GET_CSTATE "getConnectionState" | ||
54 | - #define HLLAPI_PACKET_IS_READY "isReady" | ||
55 | - #define HLLAPI_PACKET_DISCONNECT "disconnect" | ||
56 | - #define HLLAPI_PACKET_GET_CURSOR "getCursorAddress" | ||
57 | - #define HLLAPI_PACKET_ENTER "enter" | ||
58 | - #define HLLAPI_PACKET_QUIT "quit" | ||
59 | - #define HLLAPI_PACKET_ERASE "erase" | ||
60 | - #define HLLAPI_PACKET_ERASE_EOF "eraseEOF" | ||
61 | - #define HLLAPI_PACKET_ERASE_EOL "eraseEOL" | ||
62 | - #define HLLAPI_PACKET_ERASE_INPUT "eraseInput" | ||
63 | - #define HLLAPI_PACKET_PRINT "print" | ||
64 | - #define HLLAPI_PACKET_ASC2EBC "asc2ebc" | ||
65 | - #define HLLAPI_PACKET_EBC2ASC "ebc2asc" | 52 | + #define HLLAPI_PACKET_IS_CONNECTED "isConnected" |
53 | + #define HLLAPI_PACKET_GET_CSTATE "getConnectionState" | ||
54 | + #define HLLAPI_PACKET_GET_PROGRAM_MESSAGE "getProgramMessage" | ||
55 | + #define HLLAPI_PACKET_IS_READY "isReady" | ||
56 | + #define HLLAPI_PACKET_DISCONNECT "disconnect" | ||
57 | + #define HLLAPI_PACKET_GET_CURSOR "getCursorAddress" | ||
58 | + #define HLLAPI_PACKET_ENTER "enter" | ||
59 | + #define HLLAPI_PACKET_QUIT "quit" | ||
60 | + #define HLLAPI_PACKET_ERASE "erase" | ||
61 | + #define HLLAPI_PACKET_ERASE_EOF "eraseEOF" | ||
62 | + #define HLLAPI_PACKET_ERASE_EOL "eraseEOL" | ||
63 | + #define HLLAPI_PACKET_ERASE_INPUT "eraseInput" | ||
64 | + #define HLLAPI_PACKET_PRINT "print" | ||
65 | + #define HLLAPI_PACKET_ASC2EBC "asc2ebc" | ||
66 | + #define HLLAPI_PACKET_EBC2ASC "ebc2asc" | ||
66 | #endif // WIN32 | 67 | #endif // WIN32 |
67 | 68 | ||
68 | #include <pw3270/class.h> | 69 | #include <pw3270/class.h> |
@@ -700,6 +701,10 @@ | @@ -700,6 +701,10 @@ | ||
700 | return (LIB3270_CSTATE) query_intval(HLLAPI_PACKET_GET_CSTATE); | 701 | return (LIB3270_CSTATE) query_intval(HLLAPI_PACKET_GET_CSTATE); |
701 | } | 702 | } |
702 | 703 | ||
704 | + LIB3270_MESSAGE get_program_message(void) { | ||
705 | + return (LIB3270_MESSAGE) query_intval(HLLAPI_PACKET_GET_PROGRAM_MESSAGE); | ||
706 | + } | ||
707 | + | ||
703 | int connect(void) | 708 | int connect(void) |
704 | { | 709 | { |
705 | int rc; | 710 | int rc; |
src/include/pw3270/class.h
@@ -146,6 +146,7 @@ | @@ -146,6 +146,7 @@ | ||
146 | virtual bool is_ready(void) = 0; | 146 | virtual bool is_ready(void) = 0; |
147 | 147 | ||
148 | virtual LIB3270_CSTATE get_cstate(void) = 0; | 148 | virtual LIB3270_CSTATE get_cstate(void) = 0; |
149 | + virtual LIB3270_MESSAGE get_program_message(void) = 0; | ||
149 | 150 | ||
150 | // charset | 151 | // charset |
151 | #ifdef WIN32 | 152 | #ifdef WIN32 |
src/java/plugin.cc
@@ -94,6 +94,10 @@ | @@ -94,6 +94,10 @@ | ||
94 | return lib3270_get_connection_state(hSession); | 94 | return lib3270_get_connection_state(hSession); |
95 | } | 95 | } |
96 | 96 | ||
97 | + LIB3270_MESSAGE get_program_message(void) { | ||
98 | + return lib3270_get_program_message(hSession); | ||
99 | + } | ||
100 | + | ||
97 | int disconnect(void) { | 101 | int disconnect(void) { |
98 | lib3270_disconnect(hSession); | 102 | lib3270_disconnect(hSession); |
99 | return 0; | 103 | return 0; |
src/plugins/hllapi/calls.cc
@@ -164,7 +164,7 @@ | @@ -164,7 +164,7 @@ | ||
164 | 164 | ||
165 | HLLAPI_API_CALL hllapi_get_message_id(void) | 165 | HLLAPI_API_CALL hllapi_get_message_id(void) |
166 | { | 166 | { |
167 | - return session::get_default()->get_cstate(); | 167 | + return session::get_default()->get_program_message(); |
168 | } | 168 | } |
169 | 169 | ||
170 | HLLAPI_API_CALL hllapi_get_screen_at(WORD row, WORD col, LPSTR buffer) | 170 | HLLAPI_API_CALL hllapi_get_screen_at(WORD row, WORD col, LPSTR buffer) |
src/plugins/hllapi/pluginmain.c
@@ -216,10 +216,6 @@ | @@ -216,10 +216,6 @@ | ||
216 | send_result(source,lib3270_disconnect(lib3270_get_default_session_handle())); | 216 | send_result(source,lib3270_disconnect(lib3270_get_default_session_handle())); |
217 | break; | 217 | break; |
218 | 218 | ||
219 | - case HLLAPI_PACKET_GET_PROGRAM_MESSAGE: | ||
220 | - send_result(source,lib3270_get_program_message(lib3270_get_default_session_handle())); | ||
221 | - break; | ||
222 | - | ||
223 | case HLLAPI_PACKET_IS_CONNECTED: | 219 | case HLLAPI_PACKET_IS_CONNECTED: |
224 | send_result(source,lib3270_in_tn3270e(lib3270_get_default_session_handle())); | 220 | send_result(source,lib3270_in_tn3270e(lib3270_get_default_session_handle())); |
225 | break; | 221 | break; |
@@ -320,6 +316,10 @@ | @@ -320,6 +316,10 @@ | ||
320 | send_result(source,lib3270_get_connection_state(lib3270_get_default_session_handle())); | 316 | send_result(source,lib3270_get_connection_state(lib3270_get_default_session_handle())); |
321 | break; | 317 | break; |
322 | 318 | ||
319 | + case HLLAPI_PACKET_GET_PROGRAM_MESSAGE: | ||
320 | + send_result(source,lib3270_get_program_message(lib3270_get_default_session_handle())); | ||
321 | + break; | ||
322 | + | ||
323 | case HLLAPI_PACKET_SET_TOGGLE: | 323 | case HLLAPI_PACKET_SET_TOGGLE: |
324 | send_result(source,lib3270_set_toggle(lib3270_get_default_session_handle(), | 324 | send_result(source,lib3270_set_toggle(lib3270_get_default_session_handle(), |
325 | (LIB3270_TOGGLE) ((struct hllapi_packet_set *) source->buffer)->id, | 325 | (LIB3270_TOGGLE) ((struct hllapi_packet_set *) source->buffer)->id, |