Commit 69ab4e638710bc0e7a3d3f7e1260976ef6c14b29

Authored by Perry Werneck
1 parent 3cba5f2a

Implementando set_unlock_delay na API ooRexx.

src/plugins/rx3270/rexx_methods.cc
... ... @@ -619,3 +619,21 @@ RexxMethod1(RexxStringObject, rx3270_method_get_display_charset, CSELF, sessionP
619 619 return context->String(ret.c_str());
620 620 }
621 621  
  622 +RexxMethod2(int, rx3270_method_set_unlock_delay, CSELF, sessionPtr, int, delay)
  623 +{
  624 + session *hSession = (session *) sessionPtr;
  625 +
  626 + if(!hSession)
  627 + return -1;
  628 +
  629 + try
  630 + {
  631 + hSession->set_unlock_delay((unsigned short) delay);
  632 + }
  633 + catch(std::exception &e)
  634 + {
  635 + context->RaiseException1(Rexx_Error_Application_error,context->NewStringFromAsciiz(e.what()));
  636 + }
  637 +
  638 + return 0;
  639 +}
... ...
src/plugins/rx3270/rx3270.cls
... ... @@ -97,6 +97,7 @@
97 97 ::METHOD GETDISPLAYCHARSET EXTERNAL "LIBRARY rx3270 rx3270_method_get_display_charset"
98 98 ::METHOD GETHOSTCHARSET EXTERNAL "LIBRARY rx3270 rx3270_method_get_host_charset"
99 99 ::METHOD SETHOSTCHARSET EXTERNAL "LIBRARY rx3270 rx3270_method_set_host_charset"
  100 +::METHOD SETUNLOCKDELAY EXTERNAL "LIBRARY rx3270 rx3270_method_set_unlock_delay"
100 101  
101 102 ::method waitForStringAt
102 103 use arg row, col, key, timeout
... ...
src/plugins/rx3270/rx3270.h
... ... @@ -93,6 +93,7 @@
93 93  
94 94 REXX_TYPED_ROUTINE_PROTOTYPE(rx3270IsProtected);
95 95 REXX_TYPED_ROUTINE_PROTOTYPE(rx3270IsProtectedAt);
  96 + REXX_TYPED_ROUTINE_PROTOTYPE(rx3270SetUnlockDelay);
96 97  
97 98 REXX_METHOD_PROTOTYPE(rx3270_method_version);
98 99 REXX_METHOD_PROTOTYPE(rx3270_method_revision);
... ... @@ -141,6 +142,7 @@
141 142 REXX_METHOD_PROTOTYPE(rx3270_method_get_display_charset);
142 143 REXX_METHOD_PROTOTYPE(rx3270_method_get_host_charset);
143 144 REXX_METHOD_PROTOTYPE(rx3270_method_set_host_charset);
  145 + REXX_METHOD_PROTOTYPE(rx3270_method_set_unlock_delay);
144 146  
145 147 /*---[ Globals ]---------------------------------------------------------------------------------------------*/
146 148  
... ...
src/plugins/rx3270/rxapimain.cc
... ... @@ -75,8 +75,9 @@ RexxRoutineEntry rx3270_functions[] =
75 75 REXX_TYPED_ROUTINE(rx3270EraseEOL, rx3270EraseEOL),
76 76 REXX_TYPED_ROUTINE(rx3270EraseInput, rx3270EraseInput),
77 77  
78   - REXX_TYPED_ROUTINE(rx3270Erase, rx3270IsProtected),
79   - REXX_TYPED_ROUTINE(rx3270Erase, rx3270IsProtectedAt),
  78 + REXX_TYPED_ROUTINE(rx3270IsProtected, rx3270IsProtected),
  79 + REXX_TYPED_ROUTINE(rx3270IsProtectedAt, rx3270IsProtectedAt),
  80 + REXX_TYPED_ROUTINE(rx3270SetUnlockDelay, rx3270SetUnlockDelay),
80 81  
81 82 REXX_TYPED_ROUTINE(ebc2asc, ebc2asc),
82 83 REXX_TYPED_ROUTINE(asc2ebc, asc2ebc),
... ... @@ -88,65 +89,67 @@ RexxRoutineEntry rx3270_functions[] =
88 89  
89 90 RexxMethodEntry rx3270_methods[] =
90 91 {
91   - REXX_METHOD(rx3270_method_version, rx3270_method_version ),
92   - REXX_METHOD(rx3270_method_revision, rx3270_method_revision ),
93   - REXX_METHOD(rx3270_method_init, rx3270_method_init ),
94   - REXX_METHOD(rx3270_method_uninit, rx3270_method_uninit ),
95   - REXX_METHOD(rx3270_method_connect, rx3270_method_connect ),
96   - REXX_METHOD(rx3270_method_disconnect, rx3270_method_disconnect ),
97   - REXX_METHOD(rx3270_method_sleep, rx3270_method_sleep ),
98   - REXX_METHOD(rx3270_method_is_connected, rx3270_method_is_connected ),
99   - REXX_METHOD(rx3270_method_is_ready, rx3270_method_is_ready ),
100   - REXX_METHOD(rx3270_method_wait_for_ready, rx3270_method_wait_for_ready ),
101   - REXX_METHOD(rx3270_method_set_cursor, rx3270_method_set_cursor ),
102   - REXX_METHOD(rx3270_method_set_cursor, rx3270_method_get_cursor_addr ),
103   - REXX_METHOD(rx3270_method_set_cursor, rx3270_method_set_cursor_addr ),
104   - REXX_METHOD(rx3270_method_enter, rx3270_method_enter ),
105   - REXX_METHOD(rx3270_method_enter, rx3270_method_erase ),
106   - REXX_METHOD(rx3270_method_enter, rx3270_method_erase_eof ),
107   - REXX_METHOD(rx3270_method_enter, rx3270_method_erase_eol ),
108   - REXX_METHOD(rx3270_method_enter, rx3270_method_erase_input ),
109   - REXX_METHOD(rx3270_method_pfkey, rx3270_method_pfkey ),
110   - REXX_METHOD(rx3270_method_pakey, rx3270_method_pakey ),
111   - REXX_METHOD(rx3270_method_get_text, rx3270_method_get_text ),
112   - REXX_METHOD(rx3270_method_get_text_at, rx3270_method_get_text_at ),
113   - REXX_METHOD(rx3270_method_set_text_at, rx3270_method_set_text_at ),
114   - REXX_METHOD(rx3270_method_cmp_text_at, rx3270_method_cmp_text_at ),
115   - REXX_METHOD(rx3270_method_event_trace, rx3270_method_event_trace ),
116   - REXX_METHOD(rx3270_method_screen_trace, rx3270_method_screen_trace ),
117   - REXX_METHOD(rx3270_method_ds_trace, rx3270_method_ds_trace ),
118   - REXX_METHOD(rx3270_method_set_option, rx3270_method_set_option ),
119   - REXX_METHOD(rx3270_method_test, rx3270_method_test ),
120   - REXX_METHOD(rx3270_method_wait_for_text_at, rx3270_method_wait_for_text_at ),
121   -
122   - REXX_METHOD(rx3270_method_get_field_len, rx3270_method_get_field_len ),
123   - REXX_METHOD(rx3270_method_get_field_start, rx3270_method_get_field_start ),
124   - REXX_METHOD(rx3270_method_get_next_unprotected, rx3270_method_get_next_unprotected ),
125   -
126   - REXX_METHOD(rx3270_method_get_is_protected, rx3270_method_get_is_protected ),
127   - REXX_METHOD(rx3270_method_get_is_protected_at, rx3270_method_get_is_protected_at ),
128   -
129   - REXX_METHOD(rx3270_method_get_selection, rx3270_method_get_selection ),
130   - REXX_METHOD(rx3270_method_set_selection, rx3270_method_set_selection ),
131   - REXX_METHOD(rx3270_method_get_clipboard, rx3270_method_get_clipboard ),
132   - REXX_METHOD(rx3270_method_set_clipboard, rx3270_method_set_clipboard ),
133   -
134   - REXX_METHOD(rx3270_method_erase, rx3270_method_erase ),
135   - REXX_METHOD(rx3270_method_erase_eof, rx3270_method_erase_eof ),
136   - REXX_METHOD(rx3270_method_erase_eol, rx3270_method_erase_eol ),
137   - REXX_METHOD(rx3270_method_erase_input, rx3270_method_erase_input ),
138   -
139   - REXX_METHOD(rx3270_method_popup, rx3270_method_popup ),
140   - REXX_METHOD(rx3270_method_get_filename, rx3270_method_get_filename ),
141   -
142   - REXX_METHOD(rx3270_method_get_cursor_addr, rx3270_method_get_cursor_addr ),
143   - REXX_METHOD(rx3270_method_set_cursor_addr, rx3270_method_set_cursor_addr ),
144   - REXX_METHOD(rx3270_method_input_text, rx3270_method_input_text ),
  92 + REXX_METHOD(rx3270_method_version, rx3270_method_version ),
  93 + REXX_METHOD(rx3270_method_revision, rx3270_method_revision ),
  94 + REXX_METHOD(rx3270_method_init, rx3270_method_init ),
  95 + REXX_METHOD(rx3270_method_uninit, rx3270_method_uninit ),
  96 + REXX_METHOD(rx3270_method_connect, rx3270_method_connect ),
  97 + REXX_METHOD(rx3270_method_disconnect, rx3270_method_disconnect ),
  98 + REXX_METHOD(rx3270_method_sleep, rx3270_method_sleep ),
  99 + REXX_METHOD(rx3270_method_is_connected, rx3270_method_is_connected ),
  100 + REXX_METHOD(rx3270_method_is_ready, rx3270_method_is_ready ),
  101 + REXX_METHOD(rx3270_method_wait_for_ready, rx3270_method_wait_for_ready ),
  102 + REXX_METHOD(rx3270_method_set_cursor, rx3270_method_set_cursor ),
  103 + REXX_METHOD(rx3270_method_set_cursor, rx3270_method_get_cursor_addr ),
  104 + REXX_METHOD(rx3270_method_set_cursor, rx3270_method_set_cursor_addr ),
  105 + REXX_METHOD(rx3270_method_enter, rx3270_method_enter ),
  106 + REXX_METHOD(rx3270_method_enter, rx3270_method_erase ),
  107 + REXX_METHOD(rx3270_method_enter, rx3270_method_erase_eof ),
  108 + REXX_METHOD(rx3270_method_enter, rx3270_method_erase_eol ),
  109 + REXX_METHOD(rx3270_method_enter, rx3270_method_erase_input ),
  110 + REXX_METHOD(rx3270_method_pfkey, rx3270_method_pfkey ),
  111 + REXX_METHOD(rx3270_method_pakey, rx3270_method_pakey ),
  112 + REXX_METHOD(rx3270_method_get_text, rx3270_method_get_text ),
  113 + REXX_METHOD(rx3270_method_get_text_at, rx3270_method_get_text_at ),
  114 + REXX_METHOD(rx3270_method_set_text_at, rx3270_method_set_text_at ),
  115 + REXX_METHOD(rx3270_method_cmp_text_at, rx3270_method_cmp_text_at ),
  116 + REXX_METHOD(rx3270_method_event_trace, rx3270_method_event_trace ),
  117 + REXX_METHOD(rx3270_method_screen_trace, rx3270_method_screen_trace ),
  118 + REXX_METHOD(rx3270_method_ds_trace, rx3270_method_ds_trace ),
  119 + REXX_METHOD(rx3270_method_set_option, rx3270_method_set_option ),
  120 + REXX_METHOD(rx3270_method_test, rx3270_method_test ),
  121 + REXX_METHOD(rx3270_method_wait_for_text_at, rx3270_method_wait_for_text_at ),
  122 +
  123 + REXX_METHOD(rx3270_method_get_field_len, rx3270_method_get_field_len ),
  124 + REXX_METHOD(rx3270_method_get_field_start, rx3270_method_get_field_start ),
  125 + REXX_METHOD(rx3270_method_get_next_unprotected, rx3270_method_get_next_unprotected ),
  126 +
  127 + REXX_METHOD(rx3270_method_get_is_protected, rx3270_method_get_is_protected ),
  128 + REXX_METHOD(rx3270_method_get_is_protected_at, rx3270_method_get_is_protected_at ),
  129 +
  130 + REXX_METHOD(rx3270_method_get_selection, rx3270_method_get_selection ),
  131 + REXX_METHOD(rx3270_method_set_selection, rx3270_method_set_selection ),
  132 + REXX_METHOD(rx3270_method_get_clipboard, rx3270_method_get_clipboard ),
  133 + REXX_METHOD(rx3270_method_set_clipboard, rx3270_method_set_clipboard ),
  134 +
  135 + REXX_METHOD(rx3270_method_erase, rx3270_method_erase ),
  136 + REXX_METHOD(rx3270_method_erase_eof, rx3270_method_erase_eof ),
  137 + REXX_METHOD(rx3270_method_erase_eol, rx3270_method_erase_eol ),
  138 + REXX_METHOD(rx3270_method_erase_input, rx3270_method_erase_input ),
  139 +
  140 + REXX_METHOD(rx3270_method_popup, rx3270_method_popup ),
  141 + REXX_METHOD(rx3270_method_get_filename, rx3270_method_get_filename ),
  142 +
  143 + REXX_METHOD(rx3270_method_get_cursor_addr, rx3270_method_get_cursor_addr ),
  144 + REXX_METHOD(rx3270_method_set_cursor_addr, rx3270_method_set_cursor_addr ),
  145 + REXX_METHOD(rx3270_method_input_text, rx3270_method_input_text ),
145 146  
146 147 REXX_METHOD(rx3270_method_get_display_charset, rx3270_method_get_display_charset ),
147 148 REXX_METHOD(rx3270_method_get_host_charset, rx3270_method_get_host_charset ),
148 149 REXX_METHOD(rx3270_method_set_host_charset, rx3270_method_set_host_charset ),
149 150  
  151 + REXX_METHOD(rx3270_method_set_unlock_delay, rx3270_method_set_unlock_delay ),
  152 +
150 153 REXX_LAST_METHOD()
151 154 };
152 155  
... ...
src/plugins/rx3270/typed_routines.cc
... ... @@ -306,3 +306,18 @@ RexxRoutine2(int, rx3270IsProtectedAt, int, row, int, col)
306 306  
307 307 return -1;
308 308 }
  309 +
  310 +RexxRoutine1(int, rx3270SetUnlockDelay, int, delay)
  311 +{
  312 + try
  313 + {
  314 + session::get_default()->set_unlock_delay((unsigned short) delay);
  315 + }
  316 + catch(std::exception &e)
  317 + {
  318 + context->RaiseException1(Rexx_Error_Application_error,context->NewStringFromAsciiz(e.what()));
  319 + }
  320 +
  321 + return 0;
  322 +}
  323 +
... ...