Commit 0597c00dd9891fd4282c190c76ee684b17019de0
1 parent
f007470a
Exists in
master
and in
3 other branches
Updating API, adding method to get screen format state.
Showing
3 changed files
with
29 additions
and
33 deletions
Show diff stats
src/core/ctlr.c
... | ... | @@ -429,6 +429,14 @@ static void ctlr_connect(H3270 *hSession, int GNUC_UNUSED(ignored), void GNUC_UN |
429 | 429 | hSession->crm_nattr = 0; |
430 | 430 | } |
431 | 431 | |
432 | +LIB3270_EXPORT int lib3270_get_is_formatted(H3270 *hSession) | |
433 | +{ | |
434 | + if(check_online_session(hSession)) | |
435 | + return -1; | |
436 | + | |
437 | + return hSession->formatted ? 1 : 0; | |
438 | +} | |
439 | + | |
432 | 440 | /** |
433 | 441 | * @brief Get field address. |
434 | 442 | * |
... | ... | @@ -531,7 +539,7 @@ LIB3270_EXPORT LIB3270_FIELD_ATTRIBUTE lib3270_get_field_attribute(H3270 *hSessi |
531 | 539 | if(!hSession->formatted) |
532 | 540 | { |
533 | 541 | errno = ENOTCONN; |
534 | - return (LIB3270_FIELD_ATTRIBUTE) 0; | |
542 | + return LIB3270_FIELD_ATTRIBUTE_INVALID; | |
535 | 543 | } |
536 | 544 | |
537 | 545 | if(baddr < 0) |
... | ... | @@ -547,7 +555,7 @@ LIB3270_EXPORT LIB3270_FIELD_ATTRIBUTE lib3270_get_field_attribute(H3270 *hSessi |
547 | 555 | } while (baddr != sbaddr); |
548 | 556 | |
549 | 557 | errno = EINVAL; |
550 | - return (LIB3270_FIELD_ATTRIBUTE) 0; | |
558 | + return LIB3270_FIELD_ATTRIBUTE_INVALID; | |
551 | 559 | |
552 | 560 | } |
553 | 561 | |
... | ... | @@ -646,26 +654,9 @@ LIB3270_EXPORT int lib3270_get_is_protected(H3270 *hSession, int baddr) |
646 | 654 | LIB3270_EXPORT int lib3270_is_protected(H3270 *h, unsigned int baddr) |
647 | 655 | { |
648 | 656 | return lib3270_get_is_protected(h, baddr); |
649 | - | |
650 | - /* | |
651 | - unsigned char fa; | |
652 | - | |
653 | - FAIL_IF_NOT_ONLINE(h); | |
654 | - | |
655 | - if(baddr > (h->rows * h->cols)) | |
656 | - { | |
657 | - errno = EINVAL; | |
658 | - return -1; | |
659 | - } | |
660 | - | |
661 | - fa = get_field_attribute(h,baddr); | |
662 | - | |
663 | - return FA_IS_PROTECTED(fa); | |
664 | - */ | |
665 | 657 | } |
666 | 658 | |
667 | 659 | |
668 | - | |
669 | 660 | /** |
670 | 661 | * Perform an erase command, which may include changing the (virtual) screen size. |
671 | 662 | * | ... | ... |
src/core/properties.c
... | ... | @@ -56,11 +56,6 @@ |
56 | 56 | return hSession->starting != 0; |
57 | 57 | } |
58 | 58 | |
59 | - int lib3270_get_formatted(H3270 *hSession) | |
60 | - { | |
61 | - return hSession->formatted != 0; | |
62 | - } | |
63 | - | |
64 | 59 | const LIB3270_INT_PROPERTY * lib3270_get_boolean_properties_list(void) |
65 | 60 | { |
66 | 61 | |
... | ... | @@ -173,7 +168,7 @@ |
173 | 168 | { |
174 | 169 | "formatted", // Property name. |
175 | 170 | N_( "Formatted screen" ), // Property description. |
176 | - lib3270_get_formatted, // Get value. | |
171 | + lib3270_get_is_formatted, // Get value. | |
177 | 172 | NULL // Set value. |
178 | 173 | }, |
179 | 174 | |
... | ... | @@ -212,7 +207,7 @@ |
212 | 207 | }, |
213 | 208 | |
214 | 209 | { |
215 | - "width",// Property name. | |
210 | + "width", // Property name. | |
216 | 211 | N_( "Current screen width in columns" ), // Property description. |
217 | 212 | lib3270_get_width, // Get value. |
218 | 213 | NULL // Set value. | ... | ... |
src/include/lib3270.h
... | ... | @@ -296,6 +296,7 @@ |
296 | 296 | */ |
297 | 297 | typedef enum lib3270_field_attribute |
298 | 298 | { |
299 | + LIB3270_FIELD_ATTRIBUTE_INVALID = 0x00, ///< @brief Attribute is invalid. | |
299 | 300 | LIB3270_FIELD_ATTRIBUTE_PRINTABLE = 0xc0, ///< @brief these make the character "printable" |
300 | 301 | LIB3270_FIELD_ATTRIBUTE_PROTECT = 0x20, ///< @brief unprotected (0) / protected (1) |
301 | 302 | LIB3270_FIELD_ATTRIBUTE_NUMERIC = 0x10, ///< @brief alphanumeric (0) / numeric (1) |
... | ... | @@ -309,15 +310,14 @@ |
309 | 310 | } LIB3270_FIELD_ATTRIBUTE; |
310 | 311 | |
311 | 312 | /** |
312 | - * @brief Host options | |
313 | + * @brief Host types. | |
313 | 314 | * |
314 | 315 | */ |
315 | 316 | typedef enum lib3270_host_type |
316 | 317 | { |
317 | - // Host types | |
318 | - LIB3270_HOST_AS400 = 0x0001, ///< AS400 host - Prefix every PF with PA1 | |
319 | - LIB3270_HOST_TSO = 0x0002, ///< Host is TSO? | |
320 | - LIB3270_HOST_S390 = 0x0006, ///< Host is S390? (TSO included) | |
318 | + LIB3270_HOST_AS400 = 0x0001, ///< @brief AS400 host - Prefix every PF with PA1 | |
319 | + LIB3270_HOST_TSO = 0x0002, ///< @brief Host is TSO | |
320 | + LIB3270_HOST_S390 = 0x0006, ///< @brief Host is S390 (TSO included) | |
321 | 321 | |
322 | 322 | } LIB3270_HOST_TYPE; |
323 | 323 | |
... | ... | @@ -332,7 +332,7 @@ |
332 | 332 | } LIB3270_HOST_TYPE_ENTRY; |
333 | 333 | |
334 | 334 | /** |
335 | - * SSL state | |
335 | + * @brief SSL state | |
336 | 336 | * |
337 | 337 | */ |
338 | 338 | typedef enum lib3270_ssl_state |
... | ... | @@ -1147,6 +1147,16 @@ |
1147 | 1147 | LIB3270_EXPORT int LIB3270_DEPRECATED(lib3270_is_protected(H3270 *h, unsigned int baddr)); |
1148 | 1148 | |
1149 | 1149 | /** |
1150 | + * @brief Check if the screen is formatted. | |
1151 | + * | |
1152 | + * @param hSession Session handle. | |
1153 | + * | |
1154 | + * @return -1 when failed 1 if the session is formatted and 0 if not. | |
1155 | + * | |
1156 | + */ | |
1157 | + LIB3270_EXPORT int lib3270_get_is_formatted(H3270 *hSession); | |
1158 | + | |
1159 | + /** | |
1150 | 1160 | * @brief Get Check if the screen position is protected. |
1151 | 1161 | * |
1152 | 1162 | * @param h Session Handle. |
... | ... | @@ -1186,7 +1196,7 @@ |
1186 | 1196 | * @param hSession Session handle. |
1187 | 1197 | * @param addr Buffer address of the field (-1 to use the cursor address). |
1188 | 1198 | * |
1189 | - * @return field attribute or 0 when failed (sets errno). | |
1199 | + * @return field attribute or LIB3270_FIELD_ATTRIBUTE_INVALID when failed (sets errno). | |
1190 | 1200 | */ |
1191 | 1201 | LIB3270_EXPORT LIB3270_FIELD_ATTRIBUTE lib3270_get_field_attribute(H3270 *hSession, int baddr); |
1192 | 1202 | ... | ... |