Commit 6e811eaa4ff2134882145938a2ff799bde7e7a2b
1 parent
36c9ac2a
Exists in
master
and in
3 other branches
Adding method to get "paste-next" state.
Showing
3 changed files
with
30 additions
and
2 deletions
Show diff stats
src/core/paste.c
| ... | ... | @@ -413,6 +413,14 @@ LIB3270_EXPORT int lib3270_paste_text(H3270 *hSession, const unsigned char *str) |
| 413 | 413 | return 0; |
| 414 | 414 | } |
| 415 | 415 | |
| 416 | +LIB3270_EXPORT int lib3270_can_paste_next(const H3270 *hSession) | |
| 417 | +{ | |
| 418 | + if(!(lib3270_is_connected(hSession) && hSession->paste_buffer)) | |
| 419 | + return 0; | |
| 420 | + | |
| 421 | + return strlen(hSession->paste_buffer); | |
| 422 | +} | |
| 423 | + | |
| 416 | 424 | LIB3270_EXPORT int lib3270_paste_next(H3270 *hSession) |
| 417 | 425 | { |
| 418 | 426 | char * ptr; | ... | ... |
src/core/properties/boolean.c
| ... | ... | @@ -38,6 +38,7 @@ |
| 38 | 38 | #include <lib3270.h> |
| 39 | 39 | #include <lib3270/properties.h> |
| 40 | 40 | #include <lib3270/keyboard.h> |
| 41 | + #include <lib3270/selection.h> | |
| 41 | 42 | |
| 42 | 43 | int lib3270_is_starting(const H3270 *hSession) |
| 43 | 44 | { |
| ... | ... | @@ -149,6 +150,13 @@ |
| 149 | 150 | }, |
| 150 | 151 | |
| 151 | 152 | { |
| 153 | + .name = "can_paste_next", // Property name. | |
| 154 | + .description = N_( "Still have text to paste" ), // Property description. | |
| 155 | + .get = lib3270_can_paste_next, // Get value. | |
| 156 | + .set = NULL // Set value. | |
| 157 | + }, | |
| 158 | + | |
| 159 | + { | |
| 152 | 160 | .name = "starting", // Property name. |
| 153 | 161 | .description = N_( "Is starting (no first screen)?" ), // Property description. |
| 154 | 162 | .get = lib3270_is_starting, // Get value. | ... | ... |
src/include/lib3270/selection.h
| ... | ... | @@ -117,14 +117,26 @@ |
| 117 | 117 | /** |
| 118 | 118 | * @brief Paste remaining string. |
| 119 | 119 | * |
| 120 | - * @param h Session handle. | |
| 120 | + * @param hSession Session handle. | |
| 121 | 121 | * |
| 122 | 122 | * @see lib3270_paste_text. |
| 123 | 123 | * |
| 124 | 124 | * @return Non 0 if there's more to paste. |
| 125 | 125 | * |
| 126 | 126 | */ |
| 127 | - LIB3270_EXPORT int lib3270_paste_next(H3270 *h); | |
| 127 | + LIB3270_EXPORT int lib3270_paste_next(H3270 *hSession); | |
| 128 | + | |
| 129 | + /** | |
| 130 | + * @brief Check if can paste next. | |
| 131 | + * | |
| 132 | + * @param hSession Session handle. | |
| 133 | + * | |
| 134 | + * @see lib3270_paste_next. | |
| 135 | + * | |
| 136 | + * @return Non 0 if there's more to paste. | |
| 137 | + * | |
| 138 | + */ | |
| 139 | + LIB3270_EXPORT int lib3270_can_paste_next(const H3270 *hSession); | |
| 128 | 140 | |
| 129 | 141 | /** |
| 130 | 142 | * @brief Move selected box 1 char in the selected direction. | ... | ... |